Найти в Дзене

Почему универ не готовит программистов

https://habr.com/ru/articles/990892/ А должен? Программирование не наука, а ремесло на мой вкус. Учат специализированные курсы (здесь могла быть ваша реклама), а универ немного про другое. Автор считает, что университеты не готовят квалифицированных программистов, так как преподаватели часто не имеют опыта работы в реальных проектах, а учебная программа не учитывает современные требования индустрии и не даёт практических навыков. В то же время в игровой индустрии наблюдается дефицит квалифицированных разработчиков, способных работать с современными движками и решать сложные технические задачи. Автор утверждает, что программирование требует специфических способностей и определённого склада ума, а настоящие навыки приобретаются через самообучение, практику и наставничество, а не через традиционное университетское образование, которое скорее создаёт среду для общения единомышленников и обмена опытом. Но у университета нет задачи "сделать программистов для рынка труда". Университет помим

Почему универ не готовит программистов

https://habr.com/ru/articles/990892/

А должен? Программирование не наука, а ремесло на мой вкус. Учат специализированные курсы (здесь могла быть ваша реклама), а универ немного про другое. Автор считает, что университеты не готовят квалифицированных программистов, так как преподаватели часто не имеют опыта работы в реальных проектах, а учебная программа не учитывает современные требования индустрии и не даёт практических навыков. В то же время в игровой индустрии наблюдается дефицит квалифицированных разработчиков, способных работать с современными движками и решать сложные технические задачи. Автор утверждает, что программирование требует специфических способностей и определённого склада ума, а настоящие навыки приобретаются через самообучение, практику и наставничество, а не через традиционное университетское образование, которое скорее создаёт среду для общения единомышленников и обмена опытом.

Но у университета нет задачи "сделать программистов для рынка труда". Университет помимо каких-то сопутствующих вещей учить фундаментальным понятиям, которые "не нужны" в классической работе, но развязывают руки тебе делать что угодно. Я вот окончил МЭИМ ВШЭ по направлению фундаментальной информатики. Программировать меня там не учили, но я знаю теорию графов, теорию информации, матан и многое другое. И я могу решать наукоёмкие задачи. Поэтому ко мне с ними периодически обращаются под заказ.

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

А учить тому что такое DI, каким образом под капотом устроен словарь (с его логикой бакетов), что такое замыкание как мы обсуждали, вуз и не может, и не должен. Парк языков, технологий и подобного в программировании огромный. От курса по конкретному языку толку мало. И изучение программирования это путь практики и чтения документации. Достаточно написать один большой проект не пытаясь в чистый код, не используя MVC, MVP, MVVM и тому подобное и сразу станет ясно через боль, почему так делать не стоит. Я уже в разработке 10 лет, и до сих пор есть что нового узнать. Поэтому тут я согласен с автором, что разработка это путь самообучения.

Но дело не в том, что знания и фреймворки меняются, не в том что программы вузов по разработке не могут быть актуальными, не в том что в вузах мало специалистов с глубоким коммерческим опытом. А в том что вузы учат фундаментальным понятиям коих на самом деле в программировании очень мало. Программирование мне чем-то напоминает рисование. Ты просто постоянно оттачиваешь мастерство.

#мысли