вот я не понимаю несколько вещей, и одна из них - следующая:
зачем городить кучу ЯП, а потом ещё на каждый ЯП городить кучу фреймворков? Получается, что разраб тратит время сначала на изучение ЯП, а потом ещё примерно столько же времени тратит на изучение нового Фреймворка...
Причём когда выходит обнова ЯП приходится доучиваться, а когда выходит обнова Фреймворка, порой приходится дебажить или тоже доучиваться...
Ну новые языки и фреймворки создаются не потому что создатели решили усложнить жизнь бедным программистам, правда? Очевидно, что в начале существует какая-то проблема для решения которой создаётся новая технология, позволяющая решать эту проблему (не всегда удачная). Если бы в 50-60х годах рассуждали подобным образом, то мы бы писали в машинных кодах до сиих пор.