Comment on Reality check: Our Go backend stack
colonist@programming.dev 11 months agoDefine elegant. I think in this case the first devs built elaborate structures. Maybe seen as elegant in the beginning. But it doesn’t really make sense to introduce abstractions and structures when you don’t know yet where the domain boundaries are, etc.
MajorHavoc@lemmy.world 11 months ago
You just defined it perfectly.
“Elegance” early on ends up being a mistake. The chosen abstractions look really nice, but turn out to be the wrong ones for the unique problem domain.
The first six times I encountered it, I thought the team got unlucky. Then I recognized that it’s a pattern/mistake that pretty much every new formed development team falls into.
Even when I’m on the team, I end up being “old man yells at cloud”, and they add early abstractions anyway. (Which I don’t mind… As they point out, there’s no harm trying to get it right on day one. The harm comes from believing we got it right.)
The benefit I can bring is introducing patterns that support refactoring: regression test automation, strong ruthlessly fast test pipelines, and chat-ops.