А где можно научить? В институте? В чем разница? Или в ВУЗе тоже нельзя? Тогда откуда берутся программеры? Типа научится можно, только работая программистом? Да, на практике учишься быстрее, это как с языком, в среде его освоишь быстрее. Только кто вас возьмет на работу без знаний, обучать с нуля.
Программирование - это конечно ремесло с элементами творчества, но так можно сказать и про музыку, и про изобразительное искусство. И успешно их учат в школах.
Разница в окружении.
В школе один хочет быть программистом, вторая баллериной, третий архитектором, четыертый боксером. + такое же окружение преподавателей....
В школе протирают штаны. Там не учат ничему конкретному. Просто общее развитие и форма социализации.
В университете на определенной специальности - все стремятся овладеть одной определенной специальностью + окружение соотв. преподавателей.
Но даже в университете, скажем из 100 человек поток, хорошими программистами станут в лучшем случае 10 и еще 15-20 посредственными. Остальные 70-75 человек уйдут в другие отрасли или смежные специальности. Тоесть университет тоже не решает задачу обучения. Университет решает задачу селекции.
Пройдя селекцию обычно эти 10-25 человек с потока с 3-4 курса получают приглашение на работу в той или иной компании. И вот только там, попав в окружение профессионалов и происходит обучение кадров.
Знаю одного косметолого-выпускника 27-го лицея