Я слышал что программисты выбирают какую технологию, язык программирования использовать для тех или иных целей. А как в таком случае они изучают эти самые языки, если для нормального изучения языка нужно потратить немало времени?
Технологически языки во многом совпадают (да, команды разные, но исполняют-то одно и то же). Их даже классифицируют именно по этой причине. Бывают языки совершенно уникальные, но тем и интересней их изучать - именно за уникальность эти языки стараются все знать. С другой стороны, каждый язык имеет собственные отличительные особенности, следствием которых являются до известной степени индивидуальное расширение возможностей, отсюда и выбор для решения конкретно поставленной задачи - соотношение времени на реализацию задачи к ожидаемому результату.
Теперь об описанной тобой ситуации: если я не знаю язык, но знаю, что он лучше всего подходит для реализации поставленной задачи, я оцениваю время на изучение нового языка и соотношу его со сроками, выделенными на исполнение задачи. Если сроки "терпят" - изучаю и реализую на нём. Нет - реализую на языке, который знаю, изучаю новый язык, реализую на нём и делаю повторный релиз той же задачи, которая уже была реализована мной ранее на менее подходящем языке.
Эти суждения немного не верны. Программист, прежде всего, учится алгоритмическому мышлению. Вопрос языка программирования, это уже, скорее, больше справочная информация. Тем более, большинство языков общего назначения похожи. Больше времени уходит на изучение стандартных библиотек.
Они его изучают. Спонтанно, да?
Есть те, которым путь изначально закрыт - те, кто покупает курсы. В львиной доле они никогда не будут программистами, это даже можно назвать правилом. Исключения из правила будут, но то такое.
А есть те, которые умеют или научатся учиться.