Насколько я понимаю, если подробно сравнивать, какой из них лучше, взвешивая все плюсы и минусы, то выбор падает на Kotlin. Почему же тогда его популярность не выросла до сих пор и не переросла популярность Java?
Потому что legacy. Уже написаны тонны кода, который никто не будет переписывать.
Потому что java промышленный язык со спецификацией и многолетней историей.
И то. Если брать мобилки, то Kotlin популярнее. Так что лет через 5 приходите.
В техническом плане может это и так. Но решает бизнес. Как только делать на другой технологии станет очевидно дешевле или смена технологии будет окупаться - она получит свое распространение.
Конечный пользователь платит за продукт, а не за язык на котором он написан. Заказчику в принципе все равно на чем написан продукт, лишь бы было дешево, быстро и качественно. А исполнителю быстрее и дешевле нанять разработчиков на яве чем на мало распространенном языке.
Можно просто задать себе вопрос: "Я готов получать меньше денег за радость работать с новой, более продвинутой технологией?".
Получается только инди-проекты могу позволить себе роскошь выбирать технологии.
Почему разработанные в 60-е Фортран, Кобол и PL/1 используются до сих пор? Потому что написаны гигантские библиотеки, которые никто переписывать не будет :) Хотя найти специалиста, чтобы программу скажем на коболе поправить - это уже в конце 90-х было нифига себе задачей :)
Когда нечто завоевывает массы - оно начинает само себя этим удерживать. Сколько просуществовали 3.5" дискеты? Магнитофонные компакт-кассеты? (до сих пор вроде не умерли...)