← Back to context

Comment by mikestorrent

14 hours ago

Yes, the web was a mistake; as a distributed document reading platform it's a decent first attempt, but as an application platform it is miserable. I'm working on a colleague's vibe-coded app right now and it's just piles and piles of code to do something fairly simple; long builds and hundreds of dependencies... most of which are because HTML is shitty, doesn't have the GUI controls that people need built in, and all of it has to be worked around as a patch after the fact. Even doing something as simple as a sortable-and-filterable table requires thousands of lines of JS when it should've just been a few extra attributes on an HTML6 <table> by now.

Back in the day with PHP things were much more understandable, it's somehow gotten objectively worse. And now, most desktop apps are their own contained browser. Somehow worse than Windows 98 .hta apps, too; where at least the system browser served a local app up, now we have ten copies of Electron running, bringing my relatively new Macbook to a crawl. Everything sucks and is way less fun than it used to be.

We have many, many examples of GUI toolkits that are extremely fast and lightweight. Isn't it time to throw the browser away, stop abusing HTML to make applications, and design something fit for purpose?

> The web was a mistake

I wouldn't say that. The web had done way more good than harm overall. What I would say is that embedding the internet (and its tracking and spyware and dark patterns that have gain prominence) into every single application that we use is what is at fault.

The web browser that we built in 1990 was all on-premise obviously. And it had a very different architecture than HTTP. There were two processes. One used TCP/IP to mirror the plant computers model into memory on the workstation. The other painted the infographics and handled the user navigating to different screens. The two processes used shared memory to communicate. It was my first job out of university.

Was doing sortable-and-filterable tables in the browser without a server round-trip 20 years ago using XML/XSLT and not thousands of lines of JS but something on the order of dozens.

> Isn't it time to throw the browser away, stop abusing HTML to make applications, and design something fit for purpose?

Not going to happen until gui frameworks are as comfortable and easy to set up and use as html. Entry barrier and ergonomics are among the biggest deciding factors of winning technologies.

  • There are cross platform concerns as well. If the option is to build 3-4 separate apps in different languages and with different UI toolkits to support all the major devices and operating systems, or use the web and be 80% there in terms of basic functionality, and also have better branding, I think the choice is not surprising.

    • In line with "the web was a mistake" I think the idea that you can create cross platform software is an equally big mistake.

      You can do the core functionality of your product as cross platform, to some extend, but once you hit the interaction with the OS and especially the UI libraries of the OS, I think you'd get better software if you just accept that you'll need to write multiple application.

      We see this on mobile, there's just two target platform really, yet companies don't even want to do that.

      The choice isn't surprising, in a world where companies are more concerned with saving and branding, compared to creating good products.

      1 reply →

    • There is a lot of stuff you can get done with the standard library alone of various languages that play nice on all major platforms. People tend to reach for whatever stack of dependencies is popular at the time, however.

  • Visual Basic solved that. The web is in many ways a regression.

    • Visual Basic (and other 90s visual GUI builders) were great simple options for making GUI apps, but those GUIs were rather static and limited by today's standards. People have now gotten used to responsive GUIs that resize to any window size, easy dynamic hiding of controls, and dynamic lists in any part of the GUI; you won't get them to come back to a platform where their best bet at dynamic layout is `OnResize()` and `SubmitButton.Enabled = False`.

  • Man, you never used Delphi or Lazarus then. That was comfortable and easy. Web by comparison is just a jarring mess of unfounded complexity.

  • Are they not? Gui libraries are like button(function=myFunction). This isn't rocket surgery stuff here at least the gui tooling I've used.

    • Pretty much any non-web GUI framework I tried so far has either been terrible to set up, or terrible to deploy. Or both. Electron is stupidly simple.

      ImGUI is the single exception that has been simple to set up, trivial to deploy (there is nothing to deploy, including it is all that's needed), and nice to use.

      1 reply →

> Isn't it time to throw the browser away, stop abusing HTML to make applications, and design something fit for purpose?

Great. How do you get all the hardware and OS vendors to deploy it for free and without applying their own "vetting" or inserting themselves into the billing?

> Isn't it time to throw the browser away, stop abusing HTML to make applications, and design something fit for purpose?

We had Flash for exactly that purpose. For all its flaws, it was our best hope. A shame Apple and later Adobe decided to kill it in favor of HTML5.

The second best bet was Java Applets, but the technology came too early and was dead before it could fly off.

Some may mention WebAssembly, but I just don't see that as a viable alternative to the web mess that we already have.

  • The death of Flash was squarely the fault of Adobe's neglect. Apple simply refused to tolerate their garbage.

> the web was a mistake;

It's not "the web" or HTML, CSS, or JavaScript. That's all instant in vanilla form. Any media in today's quality will of course take time to download but, once cached, is also instant. None of the UX "requires" the crap that makes it slow, certainly not thousands of lines to make a table sortable and filterable. I could do that in IE6 without breaking a sweat. It's way easier, and faster, now. It's just people being lazy in how they do it, Apparetnly now just accepting whatever claude gave them as "best in show".

Nah, some fixes to HTML would go a long way to address these issues.

I agree we need in built-in controls, reasonably sophisticated, properly style-able with CSS. We also need typed JS in the browser, etc

the web is great as an application platform.

what's not great are the complexity merchants, due to money & other incentives etc that ship to the web.

there's better web frameworks that are lighter, faster than react - but due to hype etc you know how that goes

Back in PHP days you had an incentive to care about performance, because it's your servers that are overloaded. With frontend there's no such issue, because it's not your hardware that is being loaded