The arguments for and against SPAs feel a bit like ground hog day and a bit beside the point now that we have a third option: native code compiled to wasm that completely bypasses the DOM/JS/CSS combo in favor of just rendering straight to a canvas or webgl.<p>I care about two things as a user:<p>I want to receive content in a convenient way and I'd like the web experience to be as good or better than the mobile experience. It seems that very few web developers are capable of doing that. I blame DOM/JS/CSS for this.<p>I don't particularly care about "native" as a user. I do care about non stuttering and smooth animations if they need to be a thing, slick design (I appreciate good design). The competition on mobile is so fierce that a lot of content gets presented using native apps because that seems to be the best way for developers to deliver the best possible experience to users.<p>I don't see why a desktop web browser should be any different. Give me the best experience, not some javascript developer's watered down version that works around gazillions of limitations imposed by DOM/CSS/JS. Browsers now have all the means to do other things. If it can run Unreal at 60fps, there's really no good reason for that browser to do a worse job than a native IOS/Android app.<p>Take Hacker News as an example. A fine example of old school brutalist design and intentionally so even. It works and I understand why this is and even respect that. There are many apps in the appstores for IOS and Android that attempt to deliver a native experience for HN content. Some of these apps you might consider to be superior in how they deliver the content. You get to swipe content, there are slick material design things, etc. Popular with some people. There are good reasons to use native UI frameworks for that.<p>Now here's the kicker: there's no technical reason for a browser to provide you a worse experience than a natively developed application. Basically with wasm you could do whatever and you can have it 3D accelerated with web GL. Package it up as a SPA and you get to bypass the Apple and Google app store censorship too. Win win, you'd say. Not a lot of websites seem to be going down that path yet though but it's not that hard to pull off. Take Figma for example. Very slick and it's mostly C++ rendering to a canvas.<p>There are of course a few reasons to prefer spas or html+css over wasm with some kind of native thing for delivering content: SEO, loading speed, accessibility, etc. But rendering quality, fancy design, or slick features are not among those reasons. That's what you sacrifice to get those other things. The web always was a bit of a compromise.<p>There's a reason native applications are popular with users and developers. Users like them because they are slick. Developers like them because they know it results in the best experience for the user. So, why is that different on the web? Same content different rules? Aside from the above reasons, there's very little reason to hold back on the web. We've all just gotten used to believing that we have to. Challenging beliefs like that once in a while is not a bad thing.