Когда я впервые услышал о программировании буткемпов, я предположил, что это были мошенничества - немного более современная версия ITT Tech (которая сейчас закрыта). У них были те же характеристики: коммерческие, плохо регулируемые, нацеленные на людей, которые хотят изменить свою карьеру, и т. Д. Я полагал, что у них были те же самые подводные камни. Даже если у основателей были добрые намерения и они не пытались использовать людей в своих интересах, это не означало, что результаты были хорошими. К тому же они длились всего три месяца; как образование могло даже приблизиться к четырехлетней программе?

Я хочу сказать, что если вы относитесь к программированию буткемпов как к глупости, то, эй, я был с вами. Было.

Затем я пошел и рассказал на семинаре по программированию о подготовке к техническому собеседованию. Это не пустая болтовня о самом себе. Это технический доклад, в котором рассматриваются темы информатики - структуры данных, алгоритмы и т. Д. - и обсуждаются конкретные сложные проблемы. Сделав это выступление много раз и взяв интервью у людей после него, я имею приличную способность соотносить реакцию аудитории с их общим уровнем навыков.

Удивительно - для меня - студенты на этом учебном лагере были в основном на одном уровне со студентами хороших университетов. Они действительно охватили основы информатики и казались достаточно умными. Интересно.

Я узнал больше (и подумал больше) о буткемпах, и это имело немного больше смысла.

Каково сравнение ученых?

Программы информатики требуют около 40 классов и четырех лет. Так как же вы могли сделать это за три месяца?

Ну, эти 40 классов в основном не CS.

Возьмем, к примеру, специализацию по информатике Пенсильванского университета. Всего 40 классов, только 14 из которых на самом деле являются классами CS.

  • Четыре основных класса информатики: программирование, структуры данных и алгоритмы. Это действительно важно.
  • 1 - математический класс по информатике. Я хорошо знаю этот класс. Это приятно, но не критично.
  • 6 - выборные. Факультативы помогают накопить опыт, но очевидно, что вы можете обойтись без какого-либо конкретного из них. В конце концов, большинство студентов не изучают каждый конкретный факультатив.
  • 3 - это вещи низкого уровня (операционные системы, компьютерная архитектура и т. Д.). Приятно иметь, но не критично.

Так можно ли выучить эти действительно важные 4 урока за 3 месяца? Абсолютно. В конце концов, в колледже студенты посещают 4–5 классов одновременно.

На практике во время учебного курса, вероятно, будут пропущены некоторые из менее важных тем в алгоритмах. Это справедливо, поскольку их цель - создавать программистов, а не ученых. Они заменят эти «недостающие» вещи более практическими знаниями.

Выпускники учебного курса так же хороши, как выпускники университета?

Нет, но проблема не столько в ученых, сколько во времени. Студенты университета проходили стажировку и четыре года выполняли проекты (в свободное время и на занятиях).

Это вовсе не означает, что учебные курсы по программированию плохие. Это сравнение совершенно несправедливо.

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

Более справедливое сравнение: возьмите выпускника учебного лагеря, позвольте ему писать код в течение 3,5+ лет после этого, а затем сравните его с новым выпускником университета. Теперь кому будет лучше? Я вложу свои деньги в выпускник буткемпа - при прочих равных.

Выпускники учебного лагеря младшие - очень младшие. Но время это исправит.

То есть вы говорите, что начинающие программисты должны ходить в учебные курсы, а не в колледж?

Если вы хотите быть программистом всегда и всегда, тогда обязательно. Пропустить колледж.

Примечание: это совет по карьере, а не по жизни. Колледж дает полезный жизненный опыт. К тому же это действительно дорого. Это компромисс.

Да, вы пропустите некоторое образование в области компьютерных наук. Если вас это беспокоит, выучите это самостоятельно. Тебе только что вернули 3,5 с лишним года своей карьеры.

Некоторые компании будут предвзято относиться к вам из-за отсутствия у вас высшего образования. Это обратная сторона. Но ваши дополнительные 3,5 года опыта могут это компенсировать.

Более серьезная проблема возникает, когда вы хотите выйти за рамки программирования. Будут ли к вам относиться с таким же уважением и доверием? Я не совсем уверен.

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

Но но ...

Все это «в общем». Вы не «вообще». Вы конкретный человек с особым выбором.

Если вы выбираете между MIT и random-mediocre-bootcamp, MIT, вероятно, поможет вам продвинуться дальше. Если вы выбираете между университетом с плохим рейтингом и довольно сильным учебным курсом, учебный лагерь, вероятно, будет лучше.

Я не думаю, что любой путь является «очевидным» выбором для начинающего программиста. Это очень сильно зависит от ваших возможностей и ваших целей.

Достаточно сказать: буткемпы - это не афера. Некоторые учебные лагеря могут быть отстойными, но это верно и для колледжей.