AiA 256: Debunking Monorepo Myths  with Victor Savkin

AiA 256: Debunking Monorepo Myths with Victor Savkin

Episode Summary Victor Savkin, former angular team member and now cofounder of Narwhal Technologies Inc or Nrwl, returns to Adventures in Angular to teach the panel about monorepos. Victor starts by explaining what monorepos are and why you might need one. Monorepo style development is when multiple projects developed in the same repository and the tools used to manage code between those apps. There are many benefits to using monorepos as Victor explains to the panel, such as sharing code between apps. Monorepos help you see what's going on in reality as well as helps you take control of the structure of your code. It also allows for more interesting deployment strategies. Victor talks briefly about his time at Google, working on the toolchain and using a large monorepo. After the panel asks about the costs of using a monorepo strategy, Victor explains that there are many perceived costs that are actually false or easily overcome. The first perceived cost he tells the panel about is how people get confused and believe that apps have to be deployed together when they really have to be developed in the same repository. The second is the fear of misplaced ownership, that some other developer will come along and ruin their code. Victor explains that ownership can be configured and controlled so that no one you don’t trust can touch your code. The next myth developers believe about monorepos is that it doesn’t scale and especially when it comes to performance. Victor explains that when the app is set up correctly and testing used correctly this isn’t a problem. The final perceived cost is that Git will break. Victor debunks this by explaining that you would have to be doing extremely well in order for Git to be a bottleneck and even then there are ways around that problem. Victor explains the one real cost and that is you have to change the way you code. The panel discusses a few different coding styles. Victor recommends getting used to single version policy and trunk-based development. He defines trunk-based development, explaining how it works and why it is better for monorepos than long-range branch development. Victor sees two types of groups who want to get started in monorepos and he explains what they most commonly do wrong. The first is greenfield projects who jump right in without thinking about it and eventually crash. The second is teams with a giant app and through a monorepo in hoping it will help them structure their app. He explains there is a right way to start using monorepos in both situations. Asking the important question is how to get started. Agreeing upon the structure, naming, ownership, are you going to build the frontend and backend in the same repo, and the answers to a bunch of other questions will affect your work the most, even more than the tooling you use. Some of these answers will be specific to your company where others will be universal, like naming and ownership. With other tools for monorepo out there, the panel asks Victor why Nrwl decided to build their own tool. Victor explains that the current tools on the market do not do it all. Lerna only does one thing great and Bazel is very selective on who can run it. Nrwl is hoping to marry Bazel to Nx, so they can allow everyone to use Bazel. They want Nx to support all tools and even Windows. The panel wonders if Nx is perfect. Victor explains that it nearly there. Nx is pluggable and easy to use. It is easy to learn. Victor explains that they really care about developer experience at Nrwl. Nx is free and opensource so everyone can give monorepos a try. Resources for learning about monorepos are discussed. Victor invites everyone to watch the ten-minute getting started video on the Nx website. He also lets the listeners know about a new book coming out mid-September and it will be more organizational based than the last. The panel wants to know what comes with Nx. Victor explains that Nx gives you modern tools by setting up Cypress, Jest and other tools for you. Because Nrwl is a consulting firm, the panel hopes that Victor will have an update on the trends. Victor shares his view that trends don’t really tell you anything about the true status of a framework. How many downloads a framework has doesn’t show the longevity of that framework. Frameworks being used to make large scale apps that will be around for years is how you can tell the longevity of a framework. From that perspective, Victor feels that Angular is doing really well. To end the episode, Shai Reznik recalls how passionate Victor was about NgRx a few years ago. He asks Victor if he still feels the same way as before. Victor explains that NgRx is pretty well most of the time, has great docs, is well maintained, and he would still recommend it.Panelists
  • Jennifer Wadella
  • Brian Love
  • Shai Reznik
  • Alyssa Nicoll
Guest
  • Victor Savkin
Sponsors LinksPicksBrain Love:Alyssa Nicoll:
  • Caffeine Content Warning!
Jennnifer Wadella:
  • The Fall Season
  • NGD Conf
  • Laptop Safety at Conferences
Victor Savkin:Shai Reznik: Special Guest: Victor Savkin.

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.

Jaksot(468)

Accessibility in Angular with Vitalii Bobrov - AiA 423

Accessibility in Angular with Vitalii Bobrov - AiA 423

Special guest, Vitalii Bobrov joins us to talk about accessibility on the web and how to relate it to user experience in general. What can we do to improve accessibility? How can we improve accessibil...

29 Elo 202450min

Bazel with Alex Eagle - AiA 422

Bazel with Alex Eagle - AiA 422

Alex Eagle is a Software Engineer on the core Angular team at Google. Alex and the panel talk about Bazel, a a free software tool that allows for the automation of building and testing of software.Lin...

22 Elo 20241h 1min

Functional Programming with Angular, NgRx with Raul Jimenez - AiA 421

Functional Programming with Angular, NgRx with Raul Jimenez - AiA 421

Raul Jimenez, the CEO of Byte Default, answers the panels many questions on functional programming with NgRx. In this playful interview, Raul defines functional programming and what it is trying to so...

8 Elo 202455min

The JAM in JAMstack with Tara Z. Manicsic - AiA 420

The JAM in JAMstack with Tara Z. Manicsic - AiA 420

In this episode of Adventures in Angular the panel interviews Tara Manicsic. Tara is an Angular Developer Experience Engineer at Netlify. Tara explains what she does at Netlify. She explains what Netl...

1 Elo 202437min

Angular Projects with Zama Khan Mohammed - AiA 419

Angular Projects with Zama Khan Mohammed - AiA 419

In this episode of Adventures in Angular the panel interviews Zama Khan Mohammed about his recent book and other open source work he has done in the Angular community. Zama explains what is so differe...

18 Heinä 202440min

Unleashing Angular's Potential with WebAssembly and Rust - AiA 418

Unleashing Angular's Potential with WebAssembly and Rust - AiA 418

In today's episode, They dive deep into the fascinating world of WebAssembly and Rust with our special guest expert, Evgeniy Tuboltsev. WebAssembly, a powerful binary format, allows code to run at nea...

11 Heinä 202435min

Mastering Angular Testing Strategies with Ng Demo and Cypress Integration - AiA 417

Mastering Angular Testing Strategies with Ng Demo and Cypress Integration - AiA 417

In this episode, they dive deep into the world of Angular application testing with our special guest, Matt, the author of the Angular Mini Book and creator of the ng demo repository. They explore the ...

4 Heinä 202433min

Put A Form Around It with Sani Yusuf - AiA 416

Put A Form Around It with Sani Yusuf - AiA 416

In this episode of Adventures in Angular, Sani Yusuf stops by for an adventure and chats with Alyssa, Brooks & Chris about building component libraries in Nx and how he feels forms are one of Angular’...

30 Kesä 202453min

Suosittua kategoriassa Liike-elämä ja talous

sijotuskasti
mimmit-sijoittaa
psykopodiaa-podcast
rss-rahapodi
pomojen-suusta
ostan-asuntoja-podcast
rss-rahamania
rss-draivi
herrasmieshakkerit
rss-myyntikoulu
rss-sami-miettinen-neuvottelija
rahapuhetta
inderespodi
salkunrakentaja-podi
juristipodi
rss-lahtijat
rss-bisnesta-bebeja
rss-seuraava-potilas
rss-set-for-life-sijoita-ja-vaurastu
rss-rahataito-podcast