News for hackers. Stuff that matters.
Re:Under Deconstruction: The State of Shopify’s Monolith by didibus on Thursday September 17, 2020 @03:49PM (#24509132)
Ignoring some of the deployments and dependencies related aspects of microservices Vs monolith, one aspect that has me convinced against my own ideals is that a micro-service has a "strong" boundary in that it is actually difficult and effortful for a developer to cross it.

This in turn has a positive effect in maintaining proper boundary and putting the right amount of thought about the interfaces and responssability of each component.

Re:Under Deconstruction: The State of Shopify’s Monolith by exterm on Thursday September 17, 2020 @05:24PM (#24510130)
It's all tradeoffs. You get a stronger boundary, but you also get a distributed system.

Also, the first try of drawing boundaries will always be varying degrees of wrong. If you have very strong boundaries at this stage, iterating on them, moving responsibilities around, can be harder.

Also, with the right tooling it's definitely possible to harden monolith internal boundaries to a comparable level.

I can see though how many smaller companies would not be in a position to build that tooling.

Anyway... there is no either / or here, as I've explained in another comment. What if you have components within a monolith, but each component has its own database, for example? What if test suites are completely isolated, so that tests for component A can not access code in component B?

You can get pretty strong boundaries with a few comparably simple tricks.

Re:Under Deconstruction: The State of Shopify’s Monolith by lmm on Thursday September 17, 2020 @09:49PM (#24512126)
A decent module system can achieve the same thing without all of the network overhead. Even just something like maven multi-module projects makes it hard enough to accidentally cross the boundaries.
Re:Under Deconstruction: The State of Shopify’s Monolith by yeswecatan on Friday September 18, 2020 @06:44PM (#24522574)
Agreed 100%.