10 Comments

What tool do you use for diagraming?

Expand full comment

Diagram as code - mermaid.js

Expand full comment

Hi Sandeep

I am laso interestred about the tool. but one tool i know is "excalidraw" that is opensource and free to use.

Ravindra

Expand full comment

I reckon it was the transition to microservices that caused a real surge in microrepos around 2013/14-ish. The trend is changing and businesses started noticing that this pattern is no silver bullet. Most of the microservices implementations I've witnessed were in fact distributed monoliths where memory calls were replaced with network RPC. I don't want to say microservices are bad, just that I foresee more microliths emerging which might refine the broader code versioning strategy and lead to monorepos becoming increasingly popular.

https://www.primevideotech.com/video-streaming/scaling-up-the-prime-video-audio-video-monitoring-service-and-reducing-costs-by-90

Expand full comment

Mono repo - Google "developed its internal dedicated toolchain", this is due to its initial repos coming from a CVS style repo. It a legacy dependency they are stuck with for their legacy products and services. If you look at Android and Chrome, they are their own repos.

We need to call a spade a spade in these cases. A proper analysis of the pros and cons of each approach should be done and not follow a "because company x does it".

Expand full comment

Heads up “standards” is mis-spelled in the diagram as “stadndards”

Expand full comment

Open-sourcing projects that use a Monorepo could be difficult as setting access control would be non-trivial due to shared dependencies.

Expand full comment

the most underrated topic among developer and even inside enterprise team !

Expand full comment

Another great tool for monorepos that is not listed there is Pants https://www.pantsbuild.org/

Expand full comment

I like the callout of shared dependencies in a monorepo. There's the automatic version upgrading that you describe, which has both advantages and disadvantages, but there are also basics like easy sharing of configuration and constants. I wrote a post where I tried to explain why I miss this from my monorepo days, and how I haven't really found a solution I like in a microrepo setup: https://simplicityissota.substack.com/p/shared-constants-across-programming

Expand full comment