What are your opinions on the future of back-end web development? Is the Java ecosystem going to wither away as more modern and better solutions are emerging and maturing?
If so, which language/framework and/or programming paradigm do you think will become the new dominant player and how soon?
Personally I would love to see Rust becoming a new standard, it’s a pleasure to write and has a rapidly growing ecosystem, I don’t think it’s far away from overtaking Java. The biggest hurdle imo is big corporations taking a pretty big risk by choosing a relatively new language that’s harder to learn compared to what has been the standard for decades.
Playing it safe means you minimize surprises and have a very large amount of people that are already experts in the language.
Taking the risk will definitely improve a lot of things given that you find enough people that know or are willing to learn Rust, but it also means that you’re trading off Java flaws with Rust flaws. That’s the case however with every big change, and Java flaws are a good enough reason to make a big change.
Serverless.
Modern DBs (supabase, atlas, firebase) don’t require much, if any, backend code.
I’m talking mainly about serious backends that perform complex logic, not just CRUD operations
FWIW, serverless doesn’t mean “no backend”. Serverless apps can still have backend code using edge functions. Serverless just means “much less backend”.
Most backend code I’ve seen is boilerplate, or reimplementing functionality that already exists in the DB, and serverless libraries just remove the need to write that boilerplate at all.
Serverless will forever be stuck as a tech that’s only good for majority async stuff because of cold boot speed, scaling costs, and general latency.
Good point. That used to be the case, but I think that’s been a solved problem for a while. IIRC, most places cache functions for up to a day, so any site with reasonable traffic won’t have to wait for boot.
Regarding scaling, one cool thing about serverless libraries is that some are open source and provide instructions on how to self-host.