14 ms·
I will just say I agree in my own words "the DOM sucks for user interface development". I don't know why people are always so quick to defend it, or insist on b
by millerm 6y ago
I will just say I agree in my own words "the DOM sucks for user interface development". I don't know why people are always so quick to defend it, or insist on being ardent apologists for it. It's a crap foundation for what we've been building on it for decades. It was never intended for this.
Yes, I am forced to use is, as we all are. But, I tell you, I miss Swing and actual GUI component libraries that were designed, and implemented, from the ground up to be used as GUI.
I could rant until the end of my career for this mistake of a path we all took in the 90s. HTML/Hypertext was a game changer. But, bastardizing this implementation into what we have to deal with today was a total and utter mistake.
- mtrovo 6y agoCould you give some examples of what are the problems with DOM and how do alternatives look like? It's been some years that I don't do anything web so I'm not sure if I'm familiar with its problems.
- dathinab 6y agoI wouldn't say it's a crap foundation but it's the wrong foundation. DOM, CSS and the way they interact with JS where designed for mostly immutable "documents" with mostly but to complex design. Then it was bend and extended to somewhat extend somewhat more complex designs and more interaction. That step was repeated again and again until now where is used for application graphical user interface instead of just displaying documents with some forms in them. The foundation is fundamentally unsuited for the task it's used for by now. CSS might seem simple but has crazy amounts of hidden complexity and until recently lacked trivial/simple ways to do some layouts common for GUIs but unnecessary (and bad) for displaying documents. In recent years thinks have gotten better, e.g. CSS grid makes GUI layouts SO much simpler, but still the foundation is broken. As consequence many of the promises the foundation gives are in practice often broken, too (like accessibility, like free resizing and zooming which often doesn't work correct, like cross platform as web apps are often designed for chrome relying accidentally on chrome specific behavior especially wrt. CORS, ...)