Your arguments are not related to Next or server-side-rendering frameworks at all, you arguments are related to static websites vs SPAs (client or server rendered). Although you have some valid points it has been proven that devs rather just use the more powerful approach even if they don't need to. The two ways of building apps (static vs SPA) are just too different and there is more job market for SPAs so even things that don't need to be SPAs end up as SPAs.
On top of the FOMO of maybe you might need some dynamism in your pages in the future, it just makes sense to go as SPA from the start.
> Deploying NextJS stuff on Vercel, while maybe dev experience friendly, is not a visitor friendly thing to do. The amount of websites, that merely show a white screen, when you don't allow arbitrary JS to run ... And of course with allowing tons of JS comes tons of tracking.
That has nothing to do with deploying on Vercel. In fact, deploying on Vercel and using NextJS _should_ allow developers to do exactly the opposite: provide javascript-enhanced [0] websites instead of javascript-only, with server-side rendering with low latency since the servers are right next to the user. It's just most developers are lazy, and for some reason the recommend practice is to do data fetching on the client, even though data fetching on the server is extremely trivial in NextJS [1][2].Also, Vercel doesn't force you to use NextJS, in fact they hired Rich Harris which is the genius behind Rollup and Svelte. SvelteKit also allow for a hybrid javascript-enhanced approach with remix-inspired form actions [3] and hybrid data loading [4].
[0]: https://react.dev/reference/react-dom/hydrate
[1]: https://nextjs.org/docs/basic-features/data-fetching/get-ser...
[2]: https://nextjs.org/docs/basic-features/data-fetching/get-sta...
Of course one can be selective in what one allows, but what happens with the main required scripts is still unclear and it requires one to be knowledgeable and aware about these things. The usual visitor is not. Lets say they were recommended a privacy protecting extension like NoScript or uMatrix or uBlock Origin or ... by a friend. They will notice: "Oh the website is not working now! Guess I have to turn the extension off/have to whitelist the website." All because some wanna go easy web dev does not care and puts simple text content behind JS rendering bloat. Of course you can use server side rendering. but somehow many people don't and all goes to shit.
Next one finds oneself rebuilding things, that a normal web browser has had at the ready for decades, only because the whole website was forced into a web app approach and there is a separate router and all that stuff. At that point using a traditional web framework that simply renders HTML on the server would have been a better choice, but of course it is not hyped like NextJS is. It is not fashionable!
Usually those websites merely have some text or picture content and the visitor never needed any dynamic features. They merely want to see content, that could be immediately delivered, instead of being hidden behind a white screen and lots of unnecessary JS bloat. Think about how many websites you visit a day truly need dynamic features for the purpose you visit them for. Then think about how many of those are implemented in this style nevertheless.
Great that devs are having some great experience on Vercel. That does not make it good websites or visitor friendly. Maybe we can get back to not so selfish development practices some day?
I also don't see NextJS as some kind of big improvement over the status quo. I have used it a little, but could not name a single feature it has, that is somehow better than what we had already. If anything, it further entrenches and encourages the "everything as a web app" and "everything using JS" mind set, which I consider to be quite harmful. So I don't think Vercel deserves "to be paid well" for making it.