Web Performance Is A Lie: The State Of The Web Is Diminishing Returns
In somewhat of a rant I talk about hyper fixation on a problem that no longer exists, at least by the end of the decade.
Early in my career, in the days of PHP dev, I became hyper-obsessed with performance. Our company site utilized big images & videos and it was a huge drag on customers. I spent time optimizing caching, file sizes, and PHP codes; this was the upper limit of what was available to optimize. I was too early in my career to realize CDNs were a thing. It was fulfilling, though; we dropped the first contentful paint substantially. At the time, the average global internet speed was ~8mbps.
Fast-forward to today. So many technologies have been introduced and improved over a decade. Technologies like Serverless, Edge Workers, Global CDNs, and Webpack have offered tremendously helpful file size and serving time reductions. All this has contributed to incredibly fast renders with tons of API calls. Yet, some sites are still blatantly terrible, at least if you were still living in 2013.
CNN is an example:
Your experience with 2013's average internet connection would be bad.
A Tough Battleground
Performance has been a key factor in many technologies that have gone after one another. I recall a keynote at an EmberConf many years ago quoting a React aficionado proving Ember's terrible render performance with large lists of components. They later announced a new rendering engine that would fix it, backed by hundreds of hours of work. I think that's missing the point of Ember, I thought to myself during the keynote.
Ember wasn't specifically focused on performance, it was focused on ease of use. Well, with that rendering engine change came massively painful breaking migrations that made people eventually leap from the framework in droves, including me. They had sacrificed ease of use for performance and lost. React emerged as the winner.
But, besides core maintainers, newer folks, and contributors, no one I've spoken to loves working with React. Many people I talk to grow tired of it. So why is it so popular still? Familiarity, popularity, integrations, tree shaking. Performance? Maybe.
The framework battles were mostly over performance and the following popularity contests that ensued. Ergonomics came later, that is, whatever we have today. In all this time spent on performance, the world has been changing.
Everyone always wants faster and easier. This is why Codegen via LLMs have made an absolute killing in the middle market of software dev. This is why platforms like Vercel, which started as Zeit and promised one line deployments, flourished. Vendor lock-in be damned; we can always refactor, right?
Fast forward to 2024
The average download speed is 50mbps. >5x increase from speeds at the height of the framework battles. Bandwidth is cheaper as the availability of nodes to distribute it expands. Caching strategies are strong, front end fetch is fast, yet now our attention shifts to SSR (Server side rendering).
It’s an impressive technology, SSR that is, don’t get me wrong. It’s also a technology that has been around and has dozens of potential problems you either have to solve yourself, or use a platform to do that for you. I’m looking at you Vercel. For what? Performance.
In a talk with a higher-up at Vercel, whose name I won’t mention, they suggested that even people who use the most performant features on their platform don’t actually need them.
What about those folks living out in the rural areas? Surely they’ll be struggling to pull up your website with a 5mb bundle while they tend to their cow, Jesse the Jersey. You’ll probably guess my reply. If you didn’t, it’s Starlink. Don’t believe me? Go for a drive and try not to spot a dishy in more remote areas.
This is my somewhat frank segway to the point of this article. Technology is improving at an exponential rate outside of soft infrastructure, however the stuff we build on really isn’t all that jet-fueled anymore. We made a turn somewhere that doesn’t make sense with evolving hardware.
This is my opinion, anyway. That the state of the web is in diminishing returns. Platform enshittification is ripe and no amount of sprinkling LLMs like MSG can save it. Go out and build something useful. Something cool.
That’s all.