Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

My browser can't run Delphi or Turbo Pascal.


I was responding to this: "There's literally nothing better than HTML for UI."

In general that is false statement. In particular, when it relates to browsers, HTML is the local minimum of what can be done to describe the "UI".

Because HTML (well, DOM) is the only thing to describe the UI in the browser, and it's abhorrently awful. It can barely describe a page with static text and some images (and even then tools like Lighthouse will warn you that "you have too many elements on the page" if you dare go beyond 100 or so paragraphs). For the actual UI (yes, UI: complex layouts, interactions, dynamic parts, states, hundreds of complex interactable objects) HTML is unbelievably incredibly bad. Unfortunately that's the only thing you have running in the browser [1]

[1] Well, there's canvas (Google Docs switched to canvas because of limitations of the DOM etc.) and WebGL (pretty much every in-browser graphics program out there). But they suffer from having to implement literally everything from scratch.

Edit.

Just to show how inane "HTML is superior to everything is", here it is barfing at my static web site that only contains text and images (and a total of 9 Youtube and maps embeds): https://pbs.twimg.com/media/GF__tHjXgAAZGUA?format=jpg&name=...

Yes. It chokes on the insane number of .... 943 elements with a maximum depth of 8.

Apropos of nothing, here's a screenshot of a highly dynamic interface like Ableton Live with hundreds of dynamic elements https://cdm.link/app/uploads/2023/11/CleanShot-2023-11-15-at... that the "technical superior" HTML would not even be able to represent, much less render.

In reality it's very hard to find anything that is inferior to HTML when it comes to representing and rendering UIs.


Even after all that, you still haven't made explicit the thing that needs to be explicit for any of this to make any sense:

    ".... for UI *IN A BROWSER*"
I know it's convenient to forget the millions of us who spent years and continue to spend hours implementing UIs outside of a browser context, but it certainly doesn't feel very polite.


1. I've already answered about "in the browser"

2. Even in the browser it's the worst possible system

3. The original comment I was replying to didn't make any references to "in the browser", and explicitly talked about things like QML and XIB which are very much not in the browser.


Sorry, somehow I really misread your comment. Not sure how I was so wrong in my reading.

Needless to say I agree with everything you've written, and also appreciate the use of a DAW screenshot to make the point.


No worries :) DAWs have now become my go to example of complex interactive UIs :)


That said, there are examples of these being implemented in-browser. Not sure how any just use the canvas/webgl vs. the DOM (I know examples that do each).


I don't think anyone's trying to be impolite or diminish What Came Before, but HTML is used for lots more than websites and browsers. (Examples that come to mind are email, desktop and mobile apps, ebooks, and digital signage.)


Yes. Unfortunately we've not inly settled for one of the worst systems, but we additionally further settled for limited subsets of it as well (email, ebooks)


So, like an election in Russia, there's only one candidate in the race?


As a russian, I like this comparison, because it’s really on point and how I feel every time someone says:

- But HTML is lingua franca!

- There’s no alternative, that means it’s perfect

- You don’t need js/json/etc, just use HTML

- HTML is not that bad

- You can choose JSX, but it’s mostly HTML


"There's literally nothing better than HTML for UI" and "There's literally nothing better than HTML for UI in my browser" are two different statements; anyway, until relatively recently there was XUL.


Yes, they are two different statements. However, the comment I was responding to was making general claims and even used QML and XIB as examples.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: