Context (skippable):
If you want to learn web development today and you use Google—even with the “one weird trick” of appending ”reddit” to your searches—all you find are micro-services, serverless/lambdas, >1M react packages, >10M npm packages, and >100M tutorials of how to do yet another to-do list with MongoDB or Firebase or the amazing marvel that is using SSR/CSR with Vercel.
For the sake of over-simplification, let's call this exciting web development. Now, where can I learn about the other side of the spectrum?
Request:
Is there an insanely pragmatic website or book containing everything you need to know when creating production-ready (yet simple!) web applications?
I am talking about HTML5, CSS3, modern JS (do you even need it? and if so, how does simple javascript look like?); `cron` jobs; database persistence; difference/explanations of when to use bare-metal v. vps v. vm; what there is to know about reverse-proxying and load balancers and how to correctly setup and deploy those and so on?
This is more of a manifesto but there is a small movement around simplicity at https://grugbrain.dev/ which is written by the guy behind https://htmx.org/ -- a nice little way to add the bare minimum JS needed for a 'modern' app. You can find a community of likeminded people at HTMX-adjacent places like their Discord and Twitter. I've also been an advocate of this kind of 'primitive' dev style and it's great to see it gain some popularity.
This recent talk from Djangocon "React to htmx on a real-world SaaS product" might be of interest: https://www.youtube.com/watch?v=3GObi93tjZI
Ironically, the ultra-modern serverless platforms such as Cloudflare Workers have strict size constraints which is leading to a kind of back-to-basics approach that minimizes dependencies and bundle size. You can find a lot of small libraries for this at https://workers.tools/. The latest JS framework to buzz here, Deno's Fresh, even touts "no JS is shipped to the client by default". We can see there is a resurgence of interest in server-side rendering.
The classics such as Rails are still alive and kicking. Phoenix seems to be a promising candidate for "the modern Rails".
As someone who experienced the Good Old Days of web development, I would recommend at least trying out the managed cloud services for things like databases and cron jobs and deployments. IMO, it's a lot easier to use them than manage it yourself. And with the new serverless stuff, we're actually pretty close to how CGI on shared hosting used to be where you could upload a script and not have to worry about the gory details so much.