ng build --pod: Recent Episodes

ng build pod

Two full stack Angular developers share experiences and knowledge gained building custom Angular software templates and libraries... and share some laughs along the way.

View Details

John and Chris have a special guest on today. We are interviewing Tom. Tom is a developer at Miles Technologies and has been developing software using the Breckenridge template we've been talking about so much. He helps share a 1st hand perspective of our software and share's his angular story.

Quick Tips:

Engineering Excellencies https://medium.com/swlh/what-is-engineering-excellence-a8aa5a1e8dc5

Payment processors https://www.braintreepayments.com/

Google Maps https://developers.google.com/maps/documentation

https://www.milestechnologies.com/careers

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

John and Chris talk about an option for controlling components by creating an API and outputting that.  This allows for complex control from a parent component to a child component.

Quick Tips:

mentorship programs and their value

bash aliases for helping with dotnet core CLI

Links:

mentoring club https://www.mentoring-club.com/

bash alias https://linuxize.com/post/how-to-create-bash-aliases/

https://www.milestechnologies.com/careers

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

John and Chris talk state management in Angular applications.  The format is a train-me episode where John plays the part of the audience, learning about state management from Chris.  The focus is on practical uses of light state management.

Quick Tips:

chrome tabs https://blog.google/products/chrome/manage-tabs-with-google-chrome/

discord for business https://discord.com/

Links:

state management https://en.wikipedia.org/wiki/State_management

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

John and Chris take another look at lazy loading in Angular, as they discuss lessons learned while converting their codename:Breckenridge Angular template from Eager Loading to Lazy Loading.  In this episode they go over analyzing the code generated for lazy loading, tweaking the output to optimize it, and a few advanced routing cases.

Quick Tips:

automating tasks with bash

scully.io for SEO in Angular

Links:

Angular lazy loading https://angular.io/guide/lazy-loading-ngmodules

webpack bundle analyzer https://www.npmjs.com/package/webpack-bundle-analyzer

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

Join John and Chris on an epic journey, as they tackle a topic so big, it just can't be contained in one episode.  It all starts with a simple idea... "why do we have to keep building out forms manually?  I wish we could automate this part of web development."  In this final episode in a three part series, we discuss the implementation of dynamic forms using dynamic field components and configuration objects for the Angular front end.

Quick Tips:

vim adventures - https://vim-adventures.com/

optional chaining - https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-7.html#optional-chaining

Links:

Angular's Dynamic Forms https://angular.io/guide/dynamic-form

Dynamic Component Loader https://angular.io/guide/dynamic-component-loader

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

Join John and Chris on an epic journey, as they tackle a topic so big, it just can't be contained in one episode. It all starts with a simple idea... "why do we have to keep building out forms manually? I wish we could automate this part of web development." In this second episode in a three part series, we discuss the use of a json based Model that allows our Database to build out interfaces and form control prototypes for the Angular front end.

Quick Tips:

Air Purifier - https://www.amazon.com/gp/product/B073WJL99W/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

Prioritize your work life culture and Advocate for your well being

Links:

Customer Form Control https://gist.github.com/J-Graham/b694dbaaef4144c4cefa39683cdb1601

Customer Interface https://gist.github.com/J-Graham/afe64f5a8edad22e5998da8842784104

BackEndModel.json https://gist.github.com/J-Graham/2dbed1e14524a1b95b4a2faf1cc44901

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

Join John and Chris on an epic journey, as they tackle a topic so big, it just can't be contained in one episode.  It all starts with a simple idea... "why do we have to keep building out forms manually?  I wish we could automate this part of web development."  In this first episode in a three part series, we discuss the problem and the beginnings of an exciting solution that we have named as Dynamic Forms. 

Quick Tips:

Go on a vacation

Send Grid - https://sendgrid.com/

Links:

Angular reactive forms https://angular.io/guide/reactive-forms

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

Let's take the next step with RxJS!  This time, John and Chris tackle a real scenario as they dive into the next level of using RxJS in Angular.  Using an Order Summary page as an example, this episode covers ways to consolidate API calls using RxJS, cleaning up the component in the process.  Check out the links section for follow-along code samples of the scenario discussed in this episode.

Quick Tips:

Engineering Journal

Typedoc - https://typedoc.org/

Links:

pre-optimization https://github.com/J-Graham/ng-build-pod-rx-jssamples

post-optimization https://github.com/J-Graham/ng-build-pod-rx-jssamples/tree/post-optimization

https://www.learnrxjs.io/

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

John teaches Chris all about Cypress for end to end testing in Angular. In this episode we try something new where John explains cypress.io and e2e testing in Angular to Chris, who has never worked with it before. The result is a quick tutorial of cypress, what it does, how it works, and some of the ways we have implemented it in our CI to provide testing for our Angular framework.

Quick Tips:

Shape-up - https://basecamp.com/shapeup

Work doesn't have to be crazy - https://www.amazon.com/Doesnt-Have-Be-Crazy-Work-ebook/dp/B079WV79TK/ref=sr_1_2?crid=AG46YM8KYJWM&dchild=1&keywords=work+doesn%27t+have+to+be+crazy&qid=1592590276&sprefix=work+doesn%27t%2Caps%2C144&sr=8-2

Scripts in package.json - https://docs.npmjs.com/misc/scripts

Links:

https://www.cypress.io/

https://github.com/cypress-io/cypress-example-recipes/tree/master/examples

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

Directives are everywhere and are super powerful, but also a bit more complicated to create than components.  In this episode, Chris and John cover many of the inner workings of directives inlcuding how to create them and some more advanced ideas of what you can do with them.

Quick Tips:

Bent - https://www.npmjs.com/package/bent

Angular Essentials - https://marketplace.visualstudio.com/items?itemName=johnpapa.angular-essentials

Links:

https://angular.io/guide/attribute-directives

https://sweetalert2.github.io/

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

In Angular applications, clean components help to keep your code readable and straightforward. In this episode, Chris and John cover how to critically review your components to know when they are too complicated, and some ways to go about refactoring them, including using Services to handle some of the more complicated business logic.

Quick Tips:

Ultralearning

Pomodoro technique

Links:

https://www.amazon.com/Ultralearning-Master-Outsmart-Competition-Accelerate/dp/006285268X

https://en.wikipedia.org/wiki/Pomodoro_Technique

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

This week John and Chris use an example of building a forum to talk about how to conditionally create the components you need without the use of ngIf statements.  The discussion includes the steps to get there, why you would want to do it this way, and gotchas along the way.

Quick Tips:

Regex101 FTW

cmder console

Links:

https://regex101.com/

https://cmder.net/

https://angular.io/guide/dynamic-component-loader

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

This week it's all about Testing.  Specifically Unit Testing in Angular.  John and Chris cover everything from why you want to test your code and how to get started with testing, including some gotchas along the way.

Quick Tips:

Using Dynalist to organize your thoughts and work plans

Splitting your Angular libraries for better performance

Links:

https://angular.io/guide/testing

https://dynalist.io/

https://medium.com/angular-in-depth/improve-spa-performance-by-splitting-your-angular-libraries-in-multiple-chunks-8c68103692d0

https://freakonomics.com/podcast/the-cobra-effect-a-new-freakonomics-radio-podcast/

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

This week John and Chris talk about Authentication in Angular.  They discuss everything from how to guard your routes in your Angular app to methods for modifying the http requests to include auth tokens.

Quick Tips:

Image and video capture in your merge requests

Windows PowerToys and screen templates

Links:

https://github.com/microsoft/PowerToys

https://angular.io/guide/router#milestone-5-route-guards

https://jwt.io/

https://angular.io/api/common/http/HttpInterceptor

https://maxchadwick.xyz/blog/http-request-header-size-limits

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

Angular Libraries are where you turn your modules into npm packages that can be used in other Angular applications.  John and Chris dive into this subject going over concepts and terms.  Then talk about how to build out and structure your libraries, along with plenty of tips and gotchas.  They even go into how to handle distributing your packages using your own repository manager and semantic versioning.

Quick Tips:

npx and how to use a package without installing it

using rxjs take(1) to fake http calls using a subject

Links:

https://angular.io/guide/libraries

https://github.com/milestechnologies/ngx-package-starter

https://www.npmjs.com/package/npx

https://www.learnrxjs.io/learn-rxjs/operators/filtering/take

https://www.npmjs.com/package/ng-packagr

https://docs.npmjs.com/misc/semver

https://www.sonatype.com/nexus-repository-oss

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

Chris and John tackle RxJS.  Starting with the basics including terminology and concepts and going in depth on use cases, operators, pipes, and some of the tips and gotchas.

Quick Tips:

Fork a GUI for git

Who's afraid of Regex :)

Links:

https://git-fork.com/

https://www.thisdot.co/labs

https://twitter.com/BenLesh

https://twitter.com/ladyleet

http://phillydotnet.org/2020-1-schedule.html go to Saturday's sessions for our talk

https://twitter.com/JohnGrahamDev

https://twitter.com/PilgrimSecret

https://www.milestechnologies.com/careers/

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

Chris and John explore Angular's Change Detection.  Starting with the basics or terminology and concepts and going in depth on how it works, performance concerns, and tips.

Quick Tips:

Windows Key + V

Object.assign()

Links:

https://www.thisdot.co/labs

http://phillydotnet.org/2020-1-schedule.html go to Saturday's sessions for our talk

https://twitter.com/JohnGrahamDev

https://twitter.com/PilgrimSecret

https://www.milestechnologies.com/careers/

Music: Phortitude by Shane Ivers - https://www.silvermansound.com

View Details

Chris and John tackle Lazy Loading in Angular.  Starting with the basics including terminology and concepts and going in depth on how it works, performance concerns, and tips.

Quick Tips:

Prettier config files

Impostor Syndrome

Links:

https://prettier.io/

http://phillydotnet.org/2020-1-schedule.html go to Saturday's sessions for our talk

https://twitter.com/JohnGrahamDev

https://twitter.com/PilgrimSecret

https://www.milestechnologies.com/careers/

Music: Phortitude by Shane Ivers - https://www.silvermansound.com