Не бывает хороших языков, бывают хорошие программисты - Андерс Хейлсберг, папа Turbo Pascal, Delphi, C# и TypeScript
Я изучил, что пишут на тему выбора первого ЯП, и столкнулся с тем, что, в основном, авторы берут короткий топ языков по частоте использования и так же коротко перечисляют их возможности и области применения. Мне кажется, такой подход скорее собьет новичка с толку - он: а) весьма условный и субъективный, ведь в нескольких пунктах ни про один язык толком не расскажешь; б) не понятный, так как изобилует терминами, большинство из которых ты узнаешь не раньше, чем, собственно, этот язык начнешь изучать. Начитавшись таких статей, ты либо заработаешь паралич решения, мечась между часто противоположными мнениями, либо таки выберешь язык, но останется куча вопросов и сомнений по поводу верности выбора.
У тебя также может появиться соблазн выбирать язык по таким критериям, как количество вакансий или средняя зарплата кодеров на сайтах вакансий. И то, и другое неразумно. Тебе не нужны сотни вакансий, тебе нужна одна классная. А средняя зарплата - нечто вроде средней температуры по больнице, тебе она не расскажет почти ни о чем. Правило тут простое: хорошие разработчики зарабатывают много, плохие мало. Исключения, конечно, есть, но чаще в пользу плохих. Тем не менее, надеюсь, что ты хочешь быть хорошим, и я расскажу, как этого добиться, но в другой раз.
Итак, каким образом я предлагаю выбирать язык? Для начала хорошо бы избавиться от отвлекающих сомнений в том, что выбор будет правильным. Снижай градус важности происходящего. Относись к своему первому языку не как к профессии на всю оставшуюся жизнь, а как к точке входа в огромную, необъятную сферу технологий, которая, как ни крути, расширяется куда быстрее, чем область твоих в ней познаний. Независимо от того, какой язык ты выберешь, в основном ты будешь не столько изучать его синтаксис и возможности, сколько разбираться в выбранной области его применения и приобретать навыки мыслить по-кодерски. Основная твоя задача - побыстрее понять, чем вообще занимаются разработчики, получить первую работу и опыт, а дальше вопросы выбора у тебя будут появляться и разрешаться вполне естественным образом. Важный, но не очевидный момент: не так важен язык, как опыт и знания в определенной области, умение мыслить алгоритмами и любить решать сложные задачи. Можно провести аналогию с естественными языками. Если ты умеешь говорить на одном языке, любишь общаться и имеешь под рукой гугл - сможешь худо-бедно говорить на любом, если понимаешь контекст.
Алгоритм выбора языка читай в следующей статье.