Monorepo: please do!

Why are we talking about this?

  • The code base is unwieldy — I don’t need all this other junk.
  • It’s harder to test, because I have to test all this other junk I don’t need.
  • It’s harder to work with outside dependencies
  • I need custom virtual source control systems

It forces the conversation, and makes trade-offs visible

  • Find all the places where the old API is being used.
  • Are there cases where the new API cannot be used?
  • Can you patch and test the other components to know you won’t break them?
  • Can those teams validate your change right now?
  1. Support multiple internal APIs, with the old algorithm deprecated, until D can get off it.
  2. Support multiple released versions, one with the old interface, one with the new.
  3. Delay releasing the improvement in A until B, C, and D can all accept it at the same time.

--

--

--

Former CTO at Chef, Open Source nerd, Sustainable Free and Open Source Communities advocate.

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Azure Static web site hosting meets Jekyll

Using Docker in genomics workflows

How to Build User Interfaces for Big Data

Learning From Microservices — as a Data Engineer

Ethereum Alarm Clock Beta Release 0.9.0

Getting “Permission Denied” error when pulling a docker image in Jenkins docker container on Mac

Selenium WebDriver with Python for Web Automation Testing: Getting Started

Improve your API design by following this simple step — Part 2

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Adam Jacob

Adam Jacob

Former CTO at Chef, Open Source nerd, Sustainable Free and Open Source Communities advocate.

More from Medium

Our way of doing code review and pull request

When you need to fix a bug and you can’t

Don’t trust package.json

Running a Successful Remote Hack Week