This was extracted from a chat before it disappeared down the IRC black hole. It is not my rant, I have only improved the formatting.
I wish more websites improved their interface without taking a js-dump. It’s hard to comprehend how deep the issue goes. Fundamentally, I think the problem is that the modern ‘web developer’ wasn’t around for the earlier days of the web and, moreover, doesn’t actually understand what the web is. They don’t know any better because they’ve never seen any better. Just look at how ‘server side rendering’ has become a trendy fad, like these people have never heard of such a mindblowing concept.
As near as I can tell, “understanding” is not (generally) considered to be a prerequisite for being any sort of developer. If someone decides to make a website and looks up resources for it, the first thing they’re probably going to discover is either something faddish and trendy but completely insane and misguided (SPAs) or something which should be decent but has obnoxious functionality added with JS (e.g. cookie banners, tracking, floating headers), possibly gratuitously broken without JS (let’s hide the content with CSS and then show it with JS!) because whoever created it has no comprehension of their craft.
What’s sad about this is that I remember the culture in say, 2002, with things like alistapart.com, which is literally named after the use of <ul> to create navigation tabs, etc. via CSS, rather than trying to crudely use HTML tables for layout etc. You had an ethos of XHTML, progressive enhancement, not misusing semantic elements like table for layout, etc. At some point that flew out the window and the industry completely lost it.
Much of the functionality in HTML5 is a good thing, but I guess HTML5 was sort of the warning sign for the changes, since part of it was literally “We do not think it’s reasonable to require us to close tags in the order they were opened.” which, if you think about it, is hilarious. Imagine writing a code generator which generates C and complaining that it demands valid input.
The more I’ve thought about this, the more I’ve come to conclude that all HTML templating based around string templating systems (as opposed to transforming and serializing an AST) are a horrible hack in the first place. The industry literally complained that having to generate valid XML was untenable because their practices in this regard were so poor in the first place, and objected to having to cleanup their act.