Хорошему программисту надо знать программирование. А любой язык программистом учится элементарно, т.к. программист понимает, что все языки программирования состоят из комбинаций очень небольшого числа одних и тех же базовых концепций и все эти концепции программист знает.
Язык программирования - не цель обучения, в всего лишь инструмент для записи найденного способа решения задачи (т.е. алгоритма) в понятном компьютеру виде. И главное в работе программиста - не написание кода, а нахождение алгоритма, адекватного поставленному техническому заданию.