Week 345 was posted by Charanjit Chana on 2024-06-07.
I had planned to write something about the ability to view the source of a webpage back in January and then in March, Nick Heer wrote about the topic himself.
This world is unfortunately becoming lost or, at least, degraded — not because it is no longer possible to view the source of a webpage, but because that source is often inscrutable, even on simple webpages.
When I think back to the late '90s and early 2000s, it was the ability to view the source that taught me a lot about how to build interfaces. As much as any book could, if not more.
Using a modern browser it's hard to tell exactly which version of the sigames.com website it was that introduced me to CSS, but I remember it being around 2001 when I figured out you could style the scroll bars on a website. This lay the foundations for me wanting to dive into building interfaces. I'd long been building table-based layouts already by this point and it would be another couple of years before I moved away from that approach but I did start to build up an understanding of CSS.
I find that I'll inspect a page, using developer tools, rather than viewing the source these days but when I want to find a RSS feed, then I will normally view source and search the output. There are unfortunately a lot of times now where the source is nothing more than the shell of a site, enough to include JavaScript which then proceeds to build up what we see.
I have a lot of nostalgia for the early web and web 2.0, so I now find myself being a grumpy old man but truly believe we have unfortunately lost our way with how the web is supposed to work.
We've overcomplicated every part of the process. Source control is the only necessary evil I believe in. Hydrating with JavaScript is far more impressive to me than building entire websites with front-end frameworks.
Owning your shit
If you had to process the majority of the logic at your own expense (legacy mindset) then you'll optimise the hell out of what you're doing to keep costs down without having to trade-off on speed too much. When we offload to the client, we let them waste their resources. Computers have an absurd amount of power now and I wonder how much of that energy is expended on executing things that could have been pre-processed and cached server side. I'd guess the number is ridiculously large.
When we're talking about web applications, the rules are a little different. The web wasn't necessarily designed with this in mind, but it works and makes tools accessible to more people. I just wish everyone paid more attention to how much data they are pushing around when it comes to building interfaces. Few industries need real time data. Caching for a second or more would be perfectly acceptable.
Progressive Enhancement is how I've tried to approached developing on the web for the past 20+ years. Anything I do outside of application development uses CSS and HTML in any way possible and I've begun to avoid JavaScript wherever I possibly can.
What the web should be
The web should be fast. The web should be easy to explore. The web should link together.