The Web Is More Than Enough, by Paul Ford
ftrain.com
ftrain.com
> The web browser is very, very, very powerful software for applications, and the cost of accessing that power is going down seemingly every day.
It's wild how much easier it is to build things that harness web technology these days. I'm building features on top of three.js and offline storage and SSE and WebAudio and WebAssembly multiple times per week these days. I used to tinker with some of those maybe once or twice a year.
We're probably further away now from "web is enough" than we were 5 years ago.
The web and people developing for it still have a long way to go before it's enough for me.
Also if you read the article, the topic is discussed entirely within the context of software development and distribution.
Many people (me included) like to complain about how systemd is trying to overtake everything, but browsers are a lot worse than that. Even if I can realistically choose my OS today, I have to run most apps in a browser. And the browser landscape is not that nice in terms of freedom: Google controls it through Chromium, Apple manages to force their users to use Webkit, and Firefox... is marginal.
More than that: I can realistically assemble my own OS, that is actually feasible. The one tricky component that I will need to integrate, though, is the browser. And the browser landscape, again, is totally controlled by BigTech.
Pushing for webapps is pushing to lock us into Chromium, controlled by Google. I don't see what's great in shipping a copy of Chromium embedded in a webapp and calling that a "desktop app".
I want control and diversity. The Web is far from there, and for some reason people love that.
Native apps have their place, but the average everyday user is becoming more and more hostile to the idea of installing an application and just using their existing web browser to accomplish the same task. I know I would rather use my limited SSD space for photos, games, and movies, than 100 different apps. Also supporting hundreds of different pieces of hardware isn't economical for most projects. The web solves both problems in that it gets your app into the hands of users immediately and you can delegate the responsibility of supporting various hardware to the browser vendors.
Google also doesn't own the web contrary to popular belief (Even if they have an outsized amount of influence). The web is an open standard, anyone could hack together their own browser if they wanted to with enough time and effort. That amount prior to the AI era was so large, only a shop like Google, Firefox, or Apple could put in the time and effort required to make one, and the amount of time of effort that requires is falling significantly day-by-day due to LLM generated code.
Because it's fun, but that's all it is. I had a class at university decades ago where the goal was to transmit data between two computers over audio (and the sound was unpleasant). It's not a novel idea, it's just not something that should be done other than for learning or fun.
- One browser window (with tabs)
- One terminal window (with tabs)
- Signal (not a web app, for good reason, though frankly I'd be thrilled if it lived in a browser tab anyway as an app being served to localhost)
- The occasional PDF viewer for PDFs I'm working on (anything loaded from the web gets viewed in the in-browser PDF viewer, but when I'm creating presentations or papers or similar, I have a terminal and a PDF viewer both half-maximized)
- Video player for local videos (mpv)
- Music player for local music (quodlibet)
Hadn't really realized this is happening. Is it? Actually my experience right now is the exact opposite.
That AI is making it easier is happenstance, it makes generating UIs in anything easier.
Yeah there's a ton of llm slop web games out there but anything serious is going to be a desktop application
It's sad we got such intensification of react as a jQuery++, such massive focus on munging html. But we really have made few gains building actual full stack front end architectures, about understanding deeply how to get work off the main thread, how to run js well. And there so much platform there we could be using!
Hurts a lot that workers have had absolutely pitiful ESM support. Still no import maps, and I'd place very high odds this baked nonsense stays just as shitfest when 2030 rolls around. That massively inhibits doing the right thing, makes it massively shittier to use the platform, alas. But it's doable. Bundle bundle bundle. Blah.
It will be shutoff. And i wont miss it.