News for hackers. Stuff that matters.
Re:A Plea for Lean Software (1995) [pdf] by KronisLV on Tuesday June 29, 2021 @05:31AM (#27673666)
On an idea level, i'm all for DDD (domain driven design) and many of the ways to achieve modularity - be it at code level, like in the new versions of Java, be it on a library level, with shared common code, or maybe even having a hexagonal architecture, or microservices.

That said, in reality, doesn't any sort of modularity imply increased complexity?

  - you need to manage your modules and figure out where to put the code
  - you need to figure out mechanisms to share and reuse it, as well as test every single integration (breaking changes will be harder)
  - you need to invest significant resources into the Ops side of things - maintaining multiple deployments and making them talk to one another
It seems like it would lead to trading one set of constraints for another, each having their downsides. In my subjective opinion, monoliths are the only way to go for small teams (~1 pizza) and relatively small systems (~10k MAU), maybe migrating over to modular monoliths as time goes on, and only then branching out to other approaches.

I actually wrote a blog post on modular monoliths a while ago, that mentions using feature flags, however i'm not sure whether the tone/quality is entirely appropriate for HN: https://blog.kronis.dev/articles/modulith-because-we-need-to...

Regardless, it feels like the industry perhaps jumped over the concept of modular monoliths entirely and went straight for microservices.

Of course, if we're talking about modularity purely on the code level, then dynamic loading of code is its own can of worms, as can also be many methods of installing extensions.

Re:A Plea for Lean Software (1995) [pdf] by ChrisMarshallNY on Tuesday June 29, 2021 @06:37AM (#27674033)
I'm not sure why you think that isn't suitable for HN. It's a well-written, thoughtful piece.
Re:A Plea for Lean Software (1995) [pdf] by KronisLV on Tuesday June 29, 2021 @09:05AM (#27675229)
Because of the slightly tongue in cheek style. It's something that would fit better in a Medium article, perhaps.

That's not to say that everything on HN needs to be cut and dry, but factual discussions seem a bit more productive, in my experience. To that note, having any stats on the prevalence of modular monoliths would have been awesome, or maybe even more information about feature flags - those are often not discussed all that much!

Re:A Plea for Lean Software (1995) [pdf] by ChrisMarshallNY on Tuesday June 29, 2021 @11:54AM (#27677695)
Oh, heck. I'm screwed, then. I'm a wiseass.