by fullsend on 7/13/22, 10:43 AM with 1 comments
by fullsend on 7/13/22, 11:08 AM
At a certain scale these things seem necessary. But I’ve had the most success actually getting things done with small, competent teams where I replaced many different tools with as few as possible. For example I recently turned a complex spinnaker setup into a set of bash scripts that perform helm installs. It makes debugging, knowledge share, and development of the “system” so much easier. Why was the choice made originally, what features does it lack, there are tradeoffs certainly. But I feel we as an industry are losing the thread somewhere.
I often see people holding up StackOverflow and their few servers model as a bastion of sanity. I see them say, “I could run your whole company’s SaaS stack on a single box with systemd”. While I find it hyperbolic, more and more I am considering this not just a casual topic but a vital one.
Sometimes I find people asking - what about disaster recovery, high availability, scalability? When what we need is to slow down and ask, does it work? Is it usable? Or we’re so focused on isolation, deploying security tooling, the systems get complex, and no one understands them to the point they seem much less secure.
Simplicity seems key. Sticking to as few tools as possible, at lower levels, and only growing or adding as really well thought out requirements arise. This isn’t exactly what Johnathan Blow was talking about (abstraction and losing knowledge) but feels strongly related to me.