👏 more 👏 developers 👏 need 👏 to 👏 hear 👏 this
I can count on one hand the number of my clients over the past couple of years who haven't either over-architected for scale or were unnecessarily concerned about it (prior to coming to me for strategic advice, of course 😉).
You don't need to understand Distributional Little's Law to figure this out, it's obvious with primary school level math.
(screenshot excerpt from https://tailscale.com/blog/new-internet)
@ryantownsend I think their answer to "how did we get here" is missing a crucial bit of nuance: the influence of tech company blogs.
I've noticed a pretty clear pattern over the years where some tech company has to solve a problem at scale, blogs about how they've done it, and then there's a horde of developers who excitedly reads that blogpost and declares it the new best practice, elevating it to the level of "you are not a serious developer if you don't do this", often egged on by the tech company in question.
When prodded as to why, given that they are not a big tech company themselves, the answer has always been the same: a *belief*, not merely a hope, that they will be soon. Many of them outright reasoning along the lines of "if I do the same thing as this big tech company, I *will* grow as big as them and get rich, because clearly it worked for them".
This is, IMO, a much stronger effect than that article implies; this kind of technical writing actually drives entire hype cycles and steers entire developer communities in specific directions (as opposed to individual developers just being a bit optimistic), and I've seen it happen first-hand many times.
@joepie91@social.pixie.town @ryantownsend@webperf.social Ignoring the obvious cases of overengineering for the sake of quick monetary gain, I feel like sometimes we just wanna build stuff in a way akin to making a small shed, and deriving enjoyment out of committing to build it in a way where it lasts and maintaining it is enjoyable. We could both make it out of used wooden pallets and have a quick solution, or we could build it from bricks and be satisfied with it standing for a long time.
There's this sort of DIY (repair-ish) culture where people would rather build something solid themselves and enjoy the process, and there are people who don't wanna invest the time into it and I think it's valid when devs have a preference in how they deploy even if it isn't the optimal one.
We absolutely despise shell scripts and writing systemd services, but still enjoy running stuff. I feel we're justified in choosing our deployment pathway purely based on vibes if it brings us satisfaction in seeing it work, sort of [autistic] joy.
We like working on a website but the thought of having a deployment path that isn't fun is more detracting than the desire to write some article or blog for it
So I believe even spending 5 hours to automate a 2 minute task is a valid form of entertainment and learning new skills
@joepie91@social.pixie.town @ryantownsend@webperf.social Ergo, I believe this is one of the main reasons people do this
@joepie91@social.pixie.town @ryantownsend@webperf.social There's a reason people choose to run Gentoo and we don't tell them "we could play Minecraft on our stock Android phone"
