AiA 260:  NgRx, The Mystical Machine, with Wes Grimes

AiA 260: NgRx, The Mystical Machine, with Wes Grimes

In this week’s episode of Adventures in Angular the panel has fun interviewing Narwhal rocks star and NgRx expert, Wes Grimes. Wes starts by sharing how he got started in NgRx. In a previous company, Wes was the lead architect for a project that had need of a state management solution, so it was his job to figure out how to use NgRx. While figuring it out he created a structure for using NgRx and used that structure to write a blog article about best practices for NgRx. This blog article took the world by a storm and now has over 200,00 views. People are now building libraries and courses based on his article. The panel has a little considering the possible searches that lead people to his article. Jennifer Wadella shares some of the weirder searches that have led people to her posts. After their fun, the panel tries to get back on track. This article thrust Wes into the world of helping people understand NgRx, what he calls a mystical machine. He explains how this article was only the beginning of learning NgRx and that he is currently working on revising that first post. The main point covered in the article was how to organize the store and how to store it in the file system. It walks through creating angular modules for each slice of the store. The second point is covers heavily is the use of barrels. The biggest problem Wes see people run into in NgRx is they do not know where all their actions are. He shares the solution he uses for this problem, using a public API to group actions so they are easier to find. The panel expresses their frustration with the hard time the CLI has with barrel files. Wes explains why this is a common problem and shares a solution. The panel asks for other gotcha’s to watch for when using NgRx. Wes explains how and what developers miss out on when they fail to use selectors to their fullest. When selectors are used correctly and completely developers receive all the benefits of the testing they do on NgRx. The other benefits are builtin memoization and reusability. Another gotcha he warns against is using facades before fully understanding NgRx. This really fires up the panel, who then debates the use of facades in NgRx. Aaron Frost expresses his opinion that NgRx isn’t for everything and that by using facades you may not need to use NgRx. Wes explains that the large companies he works for are already committed to NgRx as their solution and he advises them not to use facades. Wes explains the downsides of using NgRx, the first is when developers jump in before they understand it and back themselves into a corner. Another downside is the upfront investment cost when learning NgRx. The panel jumps in wondering what Wes thinks of hiding those developers unfamiliar in NgRx with a facade. Wes explains how in doing this the team would be compromising architecture in order to avoid teaching developers to use NgRx properly. He clarifies that he doesn’t think facades are bad but in order to use them correctly in NgRx developers must first understand how NgRx works. Aaron explains why when working with developers unfamiliar with angular he advises them not to learn NgRx right away. Wes shares how he has seen developers misuse facades. When using a facade it entices developers to hop back and for between imperative and declarative code. Aaron jumps in and explains that imperative code in reactive programming is very bad. He invites listeners to go out and learn more about this because it is very important to understand. The panel considers strategies to help teams code reactively. Wes recommends requesting data from the server. This pattern is straight forward to implement and handles a lot of the common use cases in the store. Aaron suggests turning off default change detection, doing so will force the programmers to code reactively. Another way suggested is to structure teams separating concerns. The episode ends with Wes sharing his experience joining the NgRx core team by working in the documentation, filling in gaps that he found. He also shares what will be coming to NgRx. The platform will be expanding beyond just state management, supplying reactive libraries for angular. They are also getting ready for an experimental release of NgRx component. Panelists
  • Aaron Frost
  • Brian Love
  • Jennifer Wadella
  • Shai Reznik
  • Alyssa Nicoll
Guest
  • Wes Grimes
Adventures in Angular is produced by DevChat.TV in partnership with Hero DevsSponsorsLinksPicksBrain Love:Shai Reznik:Aaron Frost:Jennifer Wadella:Wes Grimes:Special Guest: Wes Grimes.

Advertising Inquiries: https://redcircle.com/brands

Privacy & Opt-Out: https://redcircle.com/privacy

Become a supporter of this podcast: https://www.spreaker.com/podcast/adventures-in-angular--6102018/support.

Avsnitt(468)

Angular Elements, Annex & Storybook with Brad McAlister - AiA 439

Angular Elements, Annex & Storybook with Brad McAlister - AiA 439

In this episode of Adventures in Angular, Brad McAlister joins our regular panelists: Alyssa, Chris, and Brooks! Brad walks us through his work of transitioning into an Annex Monorepo and how working ...

9 Jan 202551min

How to Get a 60% Performance Gains with Push Pipe featuring Michael Hladky - AiA 438

How to Get a 60% Performance Gains with Push Pipe featuring Michael Hladky - AiA 438

Michael Hladky joins the adventure to discuss how he's gotten a 60% performance increase using push pipe and related techniques.Many developers can get by without this technology, but Michael explains...

2 Jan 202552min

Matchmaking NGXS and Firebase with Joaquin Cid - AiA 437

Matchmaking NGXS and Firebase with Joaquin Cid - AiA 437

Joaquin Cid is an Argentinian developer who has built a plugin for NGXS state library that allows developers to connect to Firebase and have their queries automatically import into NGXS. Further, it a...

26 Dec 202455min

Practical Applications of RxJS in Angular Development - AiA 436

Practical Applications of RxJS in Angular Development - AiA 436

In today's episode, Lucas is joined by Jason Akbar, a full-stack software engineer who’s got a knack for front-end development. He recently penned some intriguing articles on Medium about RxJS operato...

19 Dec 202423min

Azure Cognitive Services with Ankit Sharma - AiA 435

Azure Cognitive Services with Ankit Sharma - AiA 435

Ankit Sharma, an Angular GDE and author, joins us in this episode of Adventures in Angular to talk about using Azure cognitive services with Angular.Linkshttps://azure.microsoft.com/en-in/services/cog...

12 Dec 202436min

Power Up Angular with RXjs with Armen Vardanyan - AiA 434

Power Up Angular with RXjs with Armen Vardanyan - AiA 434

Armen Vardanyan is an Armenian Angular developer who works extensively with both angular and RXjs. He walks Chuck through the ins and outs of how he uses RXjs to expand the functionality of his Angula...

5 Dec 202457min

Getting your Components to Communicate with Ravi Veliyat - AiA 433

Getting your Components to Communicate with Ravi Veliyat - AiA 433

Ravi Veliyat helps train people in many web technologies, Angular being one of them. The panel discusses the various ways you can get your components to communicate, from inputs and outputs all the wa...

28 Nov 202450min

Managing and Capturing Errors in Angular ft. Philipp Kief - AiA 432

Managing and Capturing Errors in Angular ft. Philipp Kief - AiA 432

Philipp Kief is a German developer who walks through how to manage and capture errors in your Angular application and how to display them to users.He discusses how he standardized error handlers in hi...

21 Nov 202454min

Populärt inom Business & ekonomi

badfluence
framgangspodden
rss-jossan-nina
varvet
uppgang-och-fall
bathina-en-podcast
avanzapodden
svd-tech-brief
rss-kort-lang-analyspodden-fran-di
rss-borsens-finest
rss-inga-dumma-fragor-om-pengar
borsmorgon
24fragor
lastbilspodden
kapitalet-en-podd-om-ekonomi
dynastin
rss-dagen-med-di
rss-den-nya-ekonomin
market-makers
fill-or-kill