Почему IT-курсы программирования вредны и какие есть альтернативы.

Зачем я пишу об этом, когда все уже вроде бы высказались на этих ваших хабрах? Хочется. Я часто обсуждаю это с людьми, почему бы и не написать.
Так уж получилось, что я заслуженный работник IT (айти). Официально мне, конечно, медаль не вручали. Я не архитектор новой революционной ОС, всего лишь инженер по разработке и сопровождению сервисов в организации, которую вы точно знаете. Так или иначе, мои 6+ лет опыта в IT-инфре что-нибудь да значат. Образование у меня гуманитарное, склад ума скорее всего тоже. Ещё в ВУЗе я очень хотел узнать, как работают сайты, кто эти удивительные люди, что создают такое чудо техники. Но начинать кодить было страшно. Я ведь «гуманитарий». Тем не менее, судьба взяла свое, и я стал читать про сайтостроение, а затем пробовать писать “Hello world!”. Дело было не в хайпе. Я слов-то не знал таких: фронтенд, бэкенд и прочее. Была перспективная работа, которую не планировал менять. Меня влекла магия.
Занимался т.н. айтишкой я сам, без курсов, папиков менторов, даже без ютубчика. Находил pdf-книжки, читал, повторял. Если не понимал – читал снова, до победного. Каждая новая работа, на которую я устраивался, была более сложной.
Так что плохого в IT-курсах? Почему я выбрал такой заголовок для статьи?
Сразу скажу: проблема не в том, что человек хочет быть программистом или кем-то из этой сферы. Не проблема, что человек хочет вкусную зарплату. Проблема в подходе. Попробую объяснить свою точку зрения. Разумеется, вы можете с ней не соглашаться. Итак, IT-курсы плохи, потому что…
...потому что там «продают воздух».
Если вы откроете программу любой из онлайн-школ, то увидите, что список тем подозрительно совпадает с оглавлением учебника по ${programming_language_name}. Совпадение? Не думаю. На IT-курсах не дают ничего нового. Интернет завален книжками, статьями. Читаете и повторяте. Зачем это делать, если вам могут «объяснить материал?» А вот зачем…
…потому что курсы программирования не учат самостоятельности.
Самостоятельность, умение находить ответы – важнейший скил разработчика/программиста/кодера, админа, безопасника, веб-камщика – да кого угодно! Поступая на подобные курсы, вы расписываетесь в собственной слабости, в неумении гуглить. Сегодня «корочка» с подобных курсов – ред флаг для работодателей. Им не нужны неуверенные в себе мартышечки, им нужны победители интернетов. А ещё, самостоятельное обучение – хороший фильтр для входящих в этот опасный бизнес. Если не перегорели и продолжаете заниматься спустя, допустим, год-два бесплатно – это ваше. Не берусь вахтёрить, но программировать или админить сервера – это не для всех. Некоторых эта работа способна убить. Но об этом стоит писать отдельно.
…потому что писать код и устанавливать пакетики – лишь вершина айсберга.
Работа программиста сегодня это не про код. Это про решение проблем. А проблемы бывают разные. Бэкендер не сделал вовремя нужный API, чтобы вы могли ещё чуть-чуть погонять JSON. Нужно общаться с ним в лс, угрожая разбить еб узнавая статус задачи. Скрипт валится с ошибкой, которой не было на курсах и нет на Stack Overflow. Коллеги в десятый раз просят поменять цвет блока на странице и от этого у вас горит пердак. Изменения в ветках гита конфликтуют и нужно этот конфликт разрешить. Вы пришли на новое место работы, вам не дали доступы и нужно как-то их получить. Куча проблем не будут охвачены программой IT-курсов. А зачем тогда платить за них деньги?
…потому что IT-курсы программирования не дают базу.
Базу из алгоритмов, структур данных, математики, видов архитектуры ПО, паттернов и т.д. Этот пункт пишу с пониманием, что не везде это нужно на практике и полном объёме, что есть гугл. Но эти дисциплины формируют образ мышления, без которого есть риск упереться в «стеклянный потолок». Это тема для отдельной статьи.
А что делать, если очень хочется программировать?
Учиться самостоятельно. На мой взгляд, лучше книжек и документации пока ничего не придумали. Кто-то смотрит видео, но, на мой взгляд, это несколько поверхностный способ. Если цель не только кодить, но и работать, то делайте петы, которые можно показать людям. То есть которые что-то делают на проде, а не пылятся в вашем GitHub-аккаунте. Работа вам после этого не гарантирована. Особенно сегодня, когда рынок распух от джунов. Но если есть возможность, начинайте с низшей должности в компании, где возможен рост. Ещё советуют open source. Типа туда можно контрибьютить и работодатели, заметив ваш вклад в cummunity, начнут бомбардировать вас офферами. Как по мне – участие в open source это не для новичков. Также есть риск, что будущему работодателю будет плевать на ваш опыт, если он не релевантен направлению деятельности компании. Но если желание есть – можно пробовать. Конечно, куча людей нашли работу после курсов, а некоторые из них даже остались в индустрии. А знаете, что это значит? Что они достигли бы успеха и без курсов. Просто ребята выкинули деньги на ветер. Ну ок. Ладно. Они получили жизненный опыт. Таких меньшинство.
Ладно, прекращаю душнить. Жизнь непредсказуема, и каждый находит свою судьбу в самых неожиданных местах. Быть может однажды вы поступите в онлайн-школу программирования «Deeck Coders», вас добавят в чатик группы, там вы встретите любовь всей вашей жизни и будете платить алименты умрете с ней в один день после получения диплома. Я лишь описал свое видение ситуации. К сожалению, так думаю не только я, и есть мнение поважнее моего.
В любом случае, удачи вам!