I really love this review of the past 20 years. It gets to the heart of the hype/FOMO cycle that's driven so many of these stacks to short-lived superstardom, and then quickly into irreversible technical debt. I have never really understood this. My favorite comment I ever got on a coding board when I was debating the pros and cons of building my next project in the trendy platform of the day was
I wouldn't call XML entirely a hype or FOMO, it has become part of what we call the modern web even today.
1. The very language that websites are written in today (HTML5/XHTML) are nothing but XML dialects.
2. React's JXS language which many sites use today is also an XML dialect.
3. RSS and ATOM standards used to publish your blog or website feeds are XML standards.
4. JSON replaced XML only as an efficient transport medium, it's not a substitute for XML entirely. XML nodes have attributes which is an additional layer in describing your data. As your data structure gets more and more complex, XML becomes a better way of defining it.
By contrast, many JS frameworks which came after XML like backbone, knockout, angular.js (1.x), etc. are eating dust today and will probably never see the light of day again.
Rss/Atom feels like a case of Querty keyboard. https://www.jsonfeed.org/ would be a better choice, but only a few readers implement it, and a lot of frameworks has Rss/Atom by default with a click.
As you explain in (4), Xml makes sense for complex data, but feeds are basically in their final version.
I really find it interesting that some people consider working with xml such a pain that they develop a whole new standard with the sole raison d'être being "It's not xml"
I wasn't speaking specifically about XML. If anything, XML is a poor metaphor for the 2010s hype cycle, as it was a much broader early vision to unify storage and web services than what existed at the time, and garnered a lot of industry backing as a potential standard. The fact that we ended up with JSON as a standard really seems like an historical anomaly. But who cares, I used to deal with SOAP, and AMF (which passed actual types, sometimes)... I'm just happy there's a standard, even if it sort of sucks. XML was bound to be a bad standard because it was too eXtensible, but those were the early days of the web.
On the other hand, JSX is a fucking abomination on its face. All it does is flip the ugly paradigm of writing inline javascript calls inside your HTML, so now you write your HTML inside JS. It will die in a few years, and so will React just like Angular, because tightly coupling logic to display is nifty but it always exponentially increases technical debt.
I wouldn't call JSX an XML dialect. It's JS with the ability to use HTML tags (or things similar to HTML tags, given the class → className rename) as rvalues. The JSX HTML tags aren't valid XML, e.g. because of braces (<a href={url}>). Even if you don't use any attributes, an XML parser won't do anything useful to a JSX document.
>> STFU, go out and make web.