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)

Why would you use Angular in a Startup? - AiA 415

Why would you use Angular in a Startup? - AiA 415

Catalin Ciubotaru joins the show today to share his industry insights and the advantages and disadvantages of using Angular in a startup.  In this episode…Main advantages of AngularMoving quickly with...

6 Kesä 202437min

Progressive State Management with NGXS with Aliaksei Kuncevic - AiA 414

Progressive State Management with NGXS with Aliaksei Kuncevic - AiA 414

In this episode, Brooks, Alyssa and Chris talk with Aliaksei Kuncevič about Progressive State Management with NGXS. Aliaksei walks the crew through this progressive journey by starting small and imple...

30 Touko 20241h 2min

The Easiest Way to use Angular Elements with Tomas Trajan - AIA 413

The Easiest Way to use Angular Elements with Tomas Trajan - AIA 413

In this episode of Adventures in Angular Tomas Trajan, an angular elements expert, breaks down how to use angular elements for the panel. Tomas explains that angular elements are great for very specif...

23 Touko 202445min

Navigating Technical Hurdles: Exporting Invoices to PDF and Maintaining Rich Text Formatting - AiA 412

Navigating Technical Hurdles: Exporting Invoices to PDF and Maintaining Rich Text Formatting - AiA 412

Mrina Sugosh is a Keynote Speaker, Advisory Board Member and Technical Storyteller. They delve into the world of web development and all things tech. In today's episode, they have an insightful discus...

2 Touko 202433min

Mastering Open Source Contributions with Santosh Yadav  - AiA 411

Mastering Open Source Contributions with Santosh Yadav - AiA 411

Santosh Yadav is a Google Developer Expert for Angular. They delve into the intricacies of contributing to the Angular ecosystem and demystify the challenges associated with open-source projects. They...

25 Huhti 202452min

Migrating Material: AngularJS -> Angular with Michael Prentice - AiA 410

Migrating Material: AngularJS -> Angular with Michael Prentice - AiA 410

Michael Prentice is the owner of DevIntent and an AngularJS Material Lead Maintainer at Rangle.io.SponsorsChuck's Resume TemplateDeveloper Book Club Become a Top 1% Dev with a Top End Devs MembershipL...

18 Huhti 202453min

AngularJS to Angular Migration with Craig Spence - AiA 409

AngularJS to Angular Migration with Craig Spence - AiA 409

Craig Spence was a developer at Trade Me in New Zealand before he moved to Sweden to join Spotify. Trade Me is New Zealand's biggest website and it is similar to eBay where people buy and sell lots of...

11 Huhti 202441min

Ngrid with Shlomi Assaf - AiA 408

Ngrid with Shlomi Assaf - AiA 408

In this week’s episode of Adventures in Angular the panel interviews Shlomi Assaf, talking about ngrid. After some playful banter about the naming of Ngrid, Shlomi shares the reasons behind building n...

4 Huhti 202442min

Suosittua kategoriassa Liike-elämä ja talous

sijotuskasti
mimmit-sijoittaa
psykopodiaa-podcast
rss-rahapodi
pomojen-suusta
rss-rahamania
ostan-asuntoja-podcast
juristipodi
rss-myyntikoulu
rss-seuraava-potilas
rss-draivi
sijoitusovi-podcast
rss-lahtijat
rss-startup-ministerio
herrasmieshakkerit
rahapuhetta
bakkari-tarinoita-tapahtumien-takahuoneista
lakicast
rss-h-asselmoilanen
rss-turha-edes-yrittaa