Hacker News new | ask | show | jobs
by Cyberdog 1072 days ago
Note that I'm a Tailwind hater.

Tailwind and similar frameworks divorce the concept of a semantic web we as a society have been building towards for decades. It works against the idea that you mark up areas of your code with descriptive labels like "header" and then put the code describing how the header should appear in another easily-editable file, and instead encourages you to use generic style descriptors to describe how the header area of your site should appear in the HTML itself. This is how we built web sites before CSS was widely adopted and, though it was "easier" to do things like `<p color="#999999">` in HTML 3 rather than separate the code from the appearance markup, it was generally considered to be a really bad idea. But Tailwind and the like drag us back in that direction.

3 comments

> concept of a semantic web we as a society have been building towards for decades

This makes no sense to me. Semantic Web was a mostly failed attempt at making web pages readable to machines. Your actual complaint seems to be Separation of Concerns. Nevertheless, that is something that is only of interest to a subset of developers. Society doesn't care.

How did it fail? Are you speaking just in terms of its slow adoption?
I'm speaking in terms of no adoption.
The person you're responding to wrote about "a semantic web", not the Semantic Web. Ordinary class names, done properly, add semantics to Web pages, and this is what went on for years without Web developers necessarily trying very hard or even knowing that's what they doing—until people started abusing the medium and writing CSS compilers/automanglers and then, later, stuff like Tailwind.

Did developers adopt the ideas? Mostly no. But were they actually still doing it, despite not having bought in to the philosophy? Yes.

> Ordinary class names, done properly, add semantics to Web pages

CSS classes added semantics, really? Assuming that is true, who exactly was this visible to? Definitely not any reasonable definition of society as the GP claimed.

Yes, really.

> CSS classes added semantics

They're not "CSS classes":

> Classes are a markup concept. The class attribute predates CSS; CSS's selector language lets you target "classified" content, but it's not like classes were invented for CSS.

<https://news.ycombinator.com/item?id=36630297>

"No adoption" is certainly superlative. That existing sites rarely go through top-down redesigns is part of the slow adoption, though. Are there really designers who have been exposed to the idea of semantic design and yet are still making designs with <div> soup instead of <main>, <header>, etc? I would certainly hope not.
> Tailwind and similar frameworks divorce the concept of a semantic web we as a society have been building towards for decades.

We definitely haven't been building any sort of "semantic web", ever.

> It works against the idea that you mark up areas of your code with descriptive labels like "header"

You mean `.hero-text__sticky-container--secondary` and such. This neither is semantic nor decouples styles from the document.

> rather than separate the code from the appearance markup, it was generally considered to be a really bad idea.

People pretend that it is a bad idea. In reality "separate code from appearance" was dead on arrival. You'd be hard-pressed to find sites from any era of the web that didn't couple code and presentation (even if the two were in different files).

You only have to realise that separation of concerns cuts both ways: https://twitter.com/simonswiss/status/1664736786671869952?s=... (accessible to non-logged-in users)

At the dance time world you say the semantic web has arrived in the non tailwind parts of the web?
I guess it depends on what we mean by "arrived." Are the technologies present and can they be used well? I think so. Are they as widely used as they should be? Of course not. Is there room for improvement? Always.
When the semantic web was the new thing, it was similar to the hype cycles around new technologies or very early applications of it (nft, etc).

A contextual, connected knowledge base and digital consciousness never really came according to the semantic web specs in terms of implementation and adoption and use by the masses.

Still, maybe that middleman work is something LLMs could help with.