> 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.
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)
Most of the problems we have with online security, privacy, tracking, etc., are the result of the rapid, irresponsible and sometimes infantile expansion of capabilities of the simple web browser.
Canvas? Resolutions? Sound drivers? web-usb ?!
We’re giving up something very valuable when we “improve” html or “enhance” the browser.
That AI is making it easier is happenstance, it makes generating UIs in anything easier.
The other side of that coin is training. You can train people on VB in far less time. Most people writing JavaScript for a living have absolutely no idea what they are doing. Most of these people are completely reliable on React to put text on screen and then other languages at absolutely every opportunity. While there is amazing stuff coming out of a select few start ups and many open source projects, those people are not the typical corporate software developer.
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?
The big distinction is security policy. There is a tremendous amount of things you can do in the browser that you cannot do on the desktop if you do not own the computer.
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.
i find it ridiculously uncompelling. it's always felt not like a well formed grounded way to be. it's amazing that we have really good capable platforms that can help us. especially when there are multi-polar orgs like w3c and what and lately wicg that serve as stewarts, that watch over these platforms. when there are often ietf tie ins. when there are projects like interop that help move the platform forward across browsers, agree on the baseline.
what's so viciously deeply libertarian coded to me about this assessment is it's me me me me me. what can i do? what can i make? what software can i build? with some notes of fear to tell you google is bad. beware google. i realize the anti-google sentiment is super strong in the world, but after being around the web for decades i can hardly say what thanks and joy and celebration i have to google for building the ultimate existential hedge against everyone else: a free platform for the free world that runs free on endless devices, that is the only free platform the world has ever seen with any success. that has gotten vastly better.
i think at this point and for half a decade plus on HN the "I know it tends to be an unpopular opinion" is thanks for the web and google. i think i'm in the minority for my thanks. i think the outrage and dismisal and scare words is by far the most popular stance.
but what's on the other hand? native apps, on native platforms? those things that run on 20% of computers, that you have to be a licensed paid up authorized developer to ship to, that have very long queues for submitting your app to to maybe some day have it approved perhaps?
the libertarian view is what you can do. yeah, the super small, the do it yourself. it's a fantasy.
the mature societal view is what we can do. it's having this permissionless platform that anyone can build software for. it's having Project Fugu trying to make that platform competitive, good, capable: giving hte native platform a constant run for the money. so that we all can benefit. so that any dev can make an app. it's "extensible web manifesto", where the web doesn't bake in particular flavors of software development, so we can choose jquery or backbone or react or vue or solid or svelte or lit, so society can iterate and keep refining and re-deciding what surface they want to program to, what models fit them, what they want to program against: you don't see that with native platforms! you get what they are and that's mostly that!
you get such a wide ranging low level platform, such freedom to use it as you please on the web. but much much much more, everyone else can enjoy it too. it's a civilized platform, the only civilized one where we have control, where we the world has say. if you don't like the native platforms, well, you can remake something else, but it'll be you and your couple friends perhaps amid the 7b people who are still using either the web or what big companies gave them.
It gets small things right, like:
- Links open in the default browser
- Smarter about when to open new windows vs overtaking current window
- New windows have access to the same cookies
Those last two were big things when I was using Proton apps as PWAs. For example, I would go to the Proton Docs PWA and it would launch a new Proton Docs window with cookies for the document.
I don't think I know even a single exception outside the hardware-heavy games or AR/VR.
Windows though... seems to be stuck in the 90's.
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.