> 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.
Ask your LLM, "Can we remove three.js so that we can re-architect the graphics system to be more optimized for our specific use case?" and see what it comes back with.
You mean the LLM is?
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.
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.
Do you actually use 100 different apps in the browser? The web is nice for loading websites, obviously you shouldn't have to install one app per website. But anything more complex than a website should be a program you install.
> hostile to the idea of installing an application
When you load a webapp, you download and run it. It's actually pretty similar to "installing and deleting right after use". If I look at mobile phones, people most definitely install apps they care about. Nobody would use whatsapp from the browser on their phone, or Instagram, or TikTok, would they?
> isn't economical
Oh yeah, I agree that the cheap option is to have a webapp. Usually it's not even done well: I often have to run Chrome because the cheap webapp doesn't work on Firefox. Next step to get cheaper: vibe-coded webapps. We're getting there, but it does not make it desirable!
> Google also doesn't own the web contrary to popular belief (Even if they have an outsized amount of influence).
Are you really trying to say that "the web" is not "the property" of Google? I mean, I agree, but... do you actually believe that this is what I meant?
Yes. My tab count regularly exceeds 100.
> If I look at mobile phones, people most definitely install apps they care about. Nobody would use whatsapp from the browser on their phone, or Instagram, or TikTok, would they?
You're confusing volume of applications with time spent on applications. These users have 2-3 tasks they're willing to download and install an app for, but chances are you will never develop an app billions of users will have open for most of the day, and most users don't want to download an app to do things outside of Instagram, TikTok etc.
> Oh yeah, I agree that the cheap option is to have a webapp. Usually it's not even done well: I often have to run Chrome because the cheap webapp doesn't work on Firefox. Next step to get cheaper: vibe-coded webapps. We're getting there, but it does not make it desirable!
Invisible hand of the free market tends to take care of that. And I say that as someone who leans liberal progressive when it comes to economic policies. I doubt the 1.0 versions of many "hand-crafted" apps would hold up to today's standards either.
I really don't understand how some people think it's possible to craft a "perfect" version 1.0 of anything and then release it out into the wild with 0 problems. This was an issue BEFORE vibe coding. Does anyone here remember the first release of Cyberpunk 2077? Software doesn't magically improve by itself, it has to run into real world friction and feedback from users to get anywhere. Even if that feedback is just "this app is vibe-coded slop".
> Are you really trying to say that "the web" is not "the property" of Google? I mean, I agree, but... do you actually believe that this is what I meant?
Yes. "Chaos is a ladder". Instead of bemoaning the state of the internet, it's more productive to find opportunities in the current chaos.
What do you call a webapp? To me, Gmail is a webapp. Google Docs is a webapp. A video game running in the browser is a webapp. Outlook running in the browser is a webapp. Google Meet is a webapp.
HN is NOT a webapp. Google Search is NOT a webapp. A blog is NOT a webapp. Those are "websites" (again, my wording for clarity).
My stance is that the web is great for websites, not for webapps. Apps should run on the OS, not in the browser.
> most users don't want to download an app to do things outside of Instagram, TikTok etc.
But again, what do they do outside of Instagram, TikTok, etc? Almost nothing, right? And most of that nothing is probably done on websites, not webapps.
Sure, they don't want to install an app to order something on Temu/Zalando. But those should be websites anyway.
> Invisible hand of the free market tends to take care of that.
Invisible hand doesn't work in a market ruled by quasi monopolies.
> I really don't understand how some people think it's possible to craft a "perfect" version 1.0 of anything and then release it out into the wild with 0 problems.
In good approximation, nobody thinks that. That's why you can update software. Which is done in webapps in a way, though brute-force style: instead of updating the webapp when it changes, you re-download it every time.
> Instead of bemoaning the state of the internet, it's more productive to find opportunities in the current chaos.
My point is: "don't write webapps, write native apps". There are plenty of opportunities there.
- 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)
That AI is making it easier is happenstance, it makes generating UIs in anything easier.
I don't think I know even a single exception outside the hardware-heavy games or AR/VR.
I do not enjoy running random strangers' Rust on my machine unless it's sitting in a VM and probably also a container, at which point the performance benefit is gone anyways.
I recently moved all of the desktop apps I reasonably could to browser tabs and have been quite happy with it.
Oh and don't forget how easily you can modify the source. With a simple user script or extension I can modify your website to behave exactly how I want it to without recompiling.
In practice since then, browser-based apps ended up eating a lot of the demand for native apps and the web browser as a platform ended up displacing a lot of native apps, but the echo has stayed around here with little grounding. As such the distribution, security, and performance posture for browser and mobile apps has become a lot better while native app toolkits have lagged behind.
There's certainly a possibility that agentic development will make native development "cheap" again and encourage a lot more of it. But the web platform's security posture is much more well fleshed out at this point so I'm not sure.
Most browsers are evergreen and updated frequently now, to the point that that no longer seems like an issue.
Hadn't really realized this is happening. Is it? Actually my experience right now is the exact opposite.
Yeah there's a ton of llm slop web games out there but anything serious is going to be a desktop application
The only personal app I use that is native is a game.
So my experience is that web is serious and native is frivolous.
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.
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.
It will be shutoff. And i wont miss it.
getting them approved and updated is fucking hell and a half. these companies owning these platforms are ghoulish monsters doing everything they can to make the process shit. and it's gotten vastly worse.
want to give away open source? too bad, pay apple. too bad, pay google. if things had gone differently for microsoft, too bad pay microsoft. for a watch, for a tv? pay x, pay y.
> the OpenCode ios app has been ready for weeks but apple hasn't approved it \ even worse they categorized it as an "internal app" so i don't even know how much they're prioritizing it https://bsky.app/profile/thdxr.com/post/3mzlbwhubqm2t
one of the top 10 ai apps of all time and they're still getting yanked around, can't get things going.
someone else in my feed had a creative neat tarot card app, with some fun twists. that apple outright said they wouldn't even evaluate, because it was already a served market, tarot cards.
a lot of ya'll weren't around and/or dont remember when you had to pay for Microsoft Visual Studios to develop windows apps. to just develop them! as an adult a couple hundred dollars (1996 dollars) isn't so attrocious, but as a grade schooler, it was an so sad knowing i had no chance to get started making gui apps. now it's developer fees yearly, and app store control, which has gotten more and more annoying to work around, with limits on number of installs for pre-releases, with limits on how long the builds work. native platforms are vicious nasty bad things, owned by massive terrible companies. even KDE spent probably two decades being super on the fence, with Trolltech's weirdly Qt licensing being already on the fence and only a rug-pull away from being a horrible mistake to have built to.