Ask HN: Developers, why are we re-implementing the same wheels
Most web applications include some subset of: user and api authentication, database interaction, remote api, user and/or api output, and performance features like caching, load balancing, proxying, etc. This is not an exhaustive list, but these are some of the primary, common elements. The total set of possible combinations of features, even including some special sub-features, is not excessively large.
Why are we still cobbling these elements together manually? After 30 years of building web applications, we have a pretty good idea of what's possible and how to solve it. Even with frameworks, we still are working far too low level. We should be choosing which features and which options we want and feeding that into a system that runs the solution or generates a deployment script for the solution.
The business specific details should be handled by plugins, and that customization is where we should be putting our time and creative energy. A well designed plugin system would also allow developers to use whatever language they prefer for each plugin, and developers could a language based on the special needs and ideally suited libraries. It would also free us from language lock-in.
Wordpress, while not initially intended to be such a system, is a partial example (even though it's a 15+ year old view on a solution to originally a different problem).
Why is there no modern answer to this problem? (Or if there is one, what is it and why don't we use it?)