An observation seen on Mastodon:
My responses:
Except for perhaps you and me, no one really teaches HTML. Students are told here’s the syntax, here’s p, a, span, div. Apply these elements and see how this looks. Right from the beginning, students are taught that HTML is about looks, not meaning.
Because HTML-only web pages look boring, almost immediately students are taught CSS, which (mostly) overrides the HTML look. Students conclude that HTML doesn’t matter as its look is overridden by CSS anyway.
Then when they get to JavaScript, they learn that HTML is merely a structure on which they hang their JavaScript events and such.
Prior to 2008 or so, most devs came to the web via HTML and CSS, then JavaScript. We taught separation of powers and spent more time on HTML. We taught HTML is not about the look.
After 2012, most devs came to the web through JavaScript first or almost first. Almost no time was spent on HTML and CSS because future devs learned that JS was the exciting part.
Only now after 10 years of this relentless emphasis of JavaScript are devs realizing that HTML and CSS are 2/3 of the front end and may deserve some time and attention. Only with the recent emphasis on accessibility are devs finally understanding that HTML has some useful characteristics that come for free. There’s no need to program each div with aria this or role that. And 75 layers of nested divs may be a bad thing.