Hacker News new | ask | show | jobs
by debacle 4224 days ago
HTML will never be semantic. The whole idea should be scrapped. HTML is inextricably bound to CSS in 2014, and has become more and more about presentation and less and less about data.

Which is fine. We have JSON and XML for data. I would rather see some cohesive standards for JSON data formats, because that is the future. HTML is just the glue between CSS and Ajax requests.

2 comments

To your point, I would also love to see more improvement in the area of using HTML/CSS/JS as a proper user interface toolkit. For example, Flexbox and CSS Grid Layout are steps in the right direction.

The web browser is a powerful sandboxed VM installed on virtually all Internet connected devices. And yet we a terrible toolkit for building applications on top of this VM (and I know it's because existing tools were built for hyperlinked documents and not proper stateful applications).

Also an interesting interesting topic are the different classes of these Internet applications. On one hand you have applications like Gmail, which are intended to reach a broad audience and should work on most "platforms" (substitute "web browser" for "platform" in this case). But you also have the traditional enterprise LOB application, where you may focus on one or two platforms and make that a "requirement".

I agree that HTML needn't be strictly semantic in the way that the OP suggests. But for the foreseeable future, it does need to encode basic structural data for CSS-less presentation. That includes links, headings, inter-page and intra-page navigation, and the like. Who needs that data? Screen readers, text-only browsers, and scrapers, to name a few.

Someday, it may be possible to do away with the concept of a web "page" or "document." Desktop and mobile apps aren't (generally) built in that paradigm. But if we move away from the document concept, we'll have a new set of problems. How do we represent things like blog posts, which really are more like documents than applications? How do we enable a variety of clients with varying capabilities to consume textual content? How do we maintain the useful concept of a URI, if at all? These may not be unsolvable problems, but they are challenging for sure.