I may have to migrate a major software used all day every day by 600+ people at my company into the cloud, and this also entails moving the application's standalone executable interface into their web-based interface. While testing the web interface, I noticed that it is noticeably slower and buggier than the standalone interface and decided to do a little research via inspect element; the first thing I checked was a simple page with a title, basic table, and literally nothing else, and the body of the table consisted of SEVENTEEN nested divs, each row consisted of an additional four nested divs, and each cell consisted of another seven nested divs. If you have a table with 30 rows and 10 columns, you're looking at (at least) 17 + (30 * 4) + (30 * 10 * 7) for a total of TWO THOUSAND TWO HUNDRED THIRTY-SEVEN DIVS. How? Why? What could possibly be the fucking purpose of this? They didn't even use the table element, it was JUST divs with classes, of course completely unintelligible and generated by some kind of bundler. Unlike the standalone interface, the tables in the web-based interface are limited to showing up to 200 rows at a time - I think I understand why now.
I do not understand what the fucking aversion people have to plain HTML and CSS (and even JavaScript) is. Is it because nobody actually knows how the fucking Internet or basic web technologies work, so they rely on layered frameworks which, ironically, almost always end up creating a solution which is infinitely more obtuse and confusing than just doing DOM manipulation via vanilla HTML/CSS/JS? I'm so fucking sick of cloud-based bullshit and the amount of garbage overengineering present in every facet of modern web development, and I'm not even a purist! I really do understand a lot of the shortcuts people take; descriptive HTML elements can be a pain in the ass past a certain point, I don't trust all browsers to display everything in the same way so I prefer to be explicit with my CSS, the form API is not fleshed out enough to be practical for a lot of purposes, and vanilla JS' lack of straightforward reactivity is a fundamental flaw in its design - I get it. But every motherfucking thing being represented by a twelve divs, every webpage being half-SSR-half-CSR with at least one client-side JS framework and CSS framework? Somewhat of a side rant, but I'm convinced that people who bitch about CSS being difficult are genuinely just low IQ; I almost never have any issues with making it do exactly what I want, and I'm far from an expert on it.
People nowadays understand intuitively that they can be insanely lazy and sloppy with modern web dev because you can practically puke at JavaScript and there's a 99% chance it will do something without erroring out, plus modern hardware allows you to have horrifically inefficient code and layouts with minimal performance impact, but my God, there has to be a tipping point eventually. Nobody actually knowing what's going on under the hood (the "hood" still being an insanely high level of abstraction for web dev purposes) is eventually going to cause a serious fucking problem. The company selling us this product is worth billions, though, so I guess we're not at that point yet.