Во многом, это уже полумеры. С одной стороны, действительно костыляют не такое страшное на Java/C#/RoR/Python, сильно меньше пользуясь PHP (но больше — JS, но там хотя бы эргономику в последние годы сильно улучшили). С другой стороны, "по-хорошему" нужно было бы "переизобрести" весь Web на более продуманных технологиях и протоколах. Частично это даже в конце концов происходит — WebSockets, HTTP/3 и сопутствующие инициативы. Но из-за обратной совместимости — всё равно на половину костыли. 😞
А я вот переизобретаю в свободное время 😛 Правда без явной ТК и типов... Это осознанный шаг, но, заминусуют, уверен :) Поэтому остаётся изобретать в режиме "для себя".