- Онлайн курсы по программированию и что они дают на самом деле
- Итак, что вам дает типичный онлайн курс
- Что онлайн курс не дает (судя по стажерам)
- Что я бы порекомендовал человеку, который хочет связать себя с web разработкой?
- Теперь обещанное про легкие деньги и миграцию из других профессий.
- Нужно ли обучаться программированию
- Недостатки такого подхода
- Недостаточный объем внимания маленьких айтишников
- Так ли это необходимо?
- Это может быть вредно для их здоровья
- Требует более глубоких знаний и силы воли
- Учить ли детей программированию?
- Материалы по теме
Онлайн курсы по программированию и что они дают на самом деле
По работе я постоянно имею дело с поиском программистов под разнообразные проекты. Последние четыре года я также отсматриваю стажеров для нашей компании, так как являюсь в ней автором и основным двигателем программы IT стажировки. Здесь не будем касаться вопроса, зачем это нужно в принципе, скажу только, что стажировка вещь полезная, плюс мне нравится передавать свои знания людям.
Все то время, что я подбираю стажеров, я имею дело в основном с выходцами из других профессий. Типичный стажер – человек, который окончил ВУЗ по любому другому профилю (медики, учителя, админы, маркетологи, кого только не было), получил опыт работы по специальности и решил, что ему надо что-то другое. Мотивация перемены области деятельности, как я понимаю, обычно деньги и комфорт. Есть поверье, что средний начинающий программист – это человек, который работает из дома три часа в день, а остальное время купается в деньгах как Скрудж МакДак.
Все эти чудесные люди практически в обязательном порядке проходят некие онлайн курсы и сразу по прохождении размещают резюме на вакансию junior-программист с ценником от 50 000 рублей.
Но мы сейчас, безусловно, говорим не о деньгах и трудностях выбора профессии. Я хочу поговорить о том, чему на этих курсах можно научиться с нуля, и почему просто курсы – это недостаточно для начала работы. В конце бонусом напишу, что думаю про массовое перетекание всех специалистов в область программирования.
Итак, что вам дает типичный онлайн курс
- Базовые знания по теме курса.
- Умение работать в некоем интерпретаторе кода, причем у каждого ресурса он свой.
- Умение выполнять некие типовые задачи, часто по одной каждого типа.
- Уверенность в своих профессиональных компетенциях (потому что курс часто называется как-нибудь типа Web-разработчик уровень 1).
Что онлайн курс не дает (судя по стажерам)
- Понимание, как на самом деле все работает. 90% стажеров приходят в ужас, когда их заставляют компилировать код вне их привычного интерпретатора. Примерно половина стажеров первый раз видят ftp клиент у нас на рабочем месте.
- Умение гуглить. Как ни смешно, на курсах знания ограничены фиксированным набором приемов, шаг влево, шаг вправо – и у человека ступор.
- Понимание, что типовые задачи могут при сходной реализации отличаться деталями. Очень частое явление, когда человек умеет копипастить код из программы курса, но приходит в недоумение, например, при добавлении GET параметра или изменении имени GET параметра.
- Понимание своего места в рабочем процессе. Человек учит программу курса PHP, скажем, но при этом не понимает, что для уровня junior разработчика неплохо бы, например, уметь встраивать код в html, или что данные к нему приходят из фронта и не всегда так, как ему нравится. То есть человек умеет выполнять узкую задачу, на которую его натаскали, но за ее рамки выйти не может вообще.
- Умение задавать вопросы. Курсы часто не награждают людей за лишние вопросы, складывается менталитет “я задаю вопросы, значит я признаю, что чего-то не знаю, значит я не прошел задание”.
- Реальную оценку своих навыков.
Про реальную оценку хочу поговорить подробнее. Когда человек закончил курс “Веб разработчик, уровень 2”, он автоматически думает, что он уже состоявшийся веб разработчик, в сертификате же так написано! По факту же человек еще далек от уровня, когда его можно выпускать в разработку, он не может самостоятельно реализовывать даже простейшие задачи без ментора. У большинства таких соискателей уровень знаний не подходит даже для нашей стажировки, так как мы все же рассчитываем на подтягивание готовых начинающих специалистов, а не на обучение почти с нуля.
Что я бы порекомендовал человеку, который хочет связать себя с web разработкой?
- Научиться искать информацию в сети. В наше время гугл может дать ответ практически на любые вопросы, надо их просто правильно формулировать.
- Помимо курсов (и любых других источников знаний) поискать в сети тестовые задания разных компаний, штук пять, и попробовать их выполнить.
- Найти в сети макеты сайтов в JPG и попробовать их сверстать. Дополнительный уровень сложности – сверстать пару макетов на flex, grid и блочной версткой.
- Очень многие курсы JS фокусируются на нативном языке. Попробуйте писать те же задания с использованием простых фреймворков, посмотрите разницу. Для начала я бы выбрал что то несложное, например jQuery.
С моей точки зрения, самый низкий входной порог в вебе у верстальщика. Если вы хотите работать с веб-технологиями, я бы предложил начать с этой профессии и позаниматься ею годик. Хороший верстальщик, на самом деле, это редкость, таким специалистам достойно платят, и они никогда не останутся без работы.
В процессе освоения профессии вы лучше поймете, где и как применяется JavaScript. Имея в активе знания по JS, верстке и опыт применения всего этого, вы легко из верстальщика станете FrontEnd разработчиком. А уже посмотрев, как все работает на фронте, вы сможете доучить необходимый вам по стеку технологий backend и дальше развиваться там.
Такой маршрут, безусловно, длиннее, чем просто пройти месячный курс и бежать на headhunter.ru, но намного надежнее, позволит вам набить меньше шишек, и главное – в итоге вы действительно будете понимать, как все работает и как взаимосвязаны фронт и бэк в современной веб-разработке.
Теперь обещанное про легкие деньги и миграцию из других профессий.
Мое мнение: если человек хороший специалист в своей профессии, он всегда будет востребован, а когда достигнет потолка по деньгам, сможет в крайнем случае открыть свое дело. Все профессии нужны, все профессии важны, как говорится.
Если вы не можете самореализоваться внутри своей профессии, вовсе не факт, что у вас получится реализоваться в другой. Поэтому надо взвесить все за и против перехода, не слушать умников, которые говорят, что программист – это легкие деньги, в отличие от врача или учителя. Вспомнить, почему, в конце концов, вы пошли учиться именно на вашу специальность.
Но может быть, программирование действительно ваша судьба. Тут надо подойти к вопросу без розовых очков и понять, что первые лет -надцать у вас не будет ни трехчасового рабочего дня, возможно, не будет удаленной работы. Вам придется много (и постоянно) учиться, совершенствовать свои знания, причем часто в нерабочее время. Оклад первое время может также демотивировать.
И попробуйтесь к нам на стажировку. Вдруг мы друг другу подойдем?
Нужно ли обучаться программированию
Детское программирование не должно восприниматься как непосредственное обучение малыша написанию кода – это довольно поверхностный взгляд на проблему.
Ведь оно учит маленького человека таким навыкам, как:
- Логическое, критическое и последовательное мышление.
- Решение сложных задач.
- Поиск шаблонов.
- Искусство коммуникации (общения), при освоении которого улучшается успеваемость.
- Грамотная организация труда (этот навык пригодится практически на любой работе).
Существует множество языков для детей и поэтому крайне важно, чтобы вы, как родитель, тщательно изучив варианты, нашли наиболее подходящий для вашего ребенка.
Недостатки такого подхода
Можно часами говорить о пользе детского программирования, но любая методика всегда имеет некоторые недостатки, и вот какие:
Недостаточный объем внимания маленьких айтишников
В программе начальной школы и дошкольных учебных заведений уже достаточно академических и внеклассных занятий для детей и порой заставить их изучать технические или естественные науки может быть непосильной задачей. В таком возрасте ребенок хочет одного – играть и развлекаться, а программирование заставляет его напрягать еще неокрепший мозг. Это не всем будет по нраву. Поэтому многие родители ратуют за то, чтобы малыши оставались малышами: играли в простые игры, бегали, лазали и лепили куличи в песочнице. А если и знакомить сына или дочку с программированием, то только после 13 лет, когда они приобретут базовые навыки вычислений, критического мышления и более глубокого понимания устройства вещей
Так ли это необходимо?
Да, программирование в тренде и зарплаты у разработчиков на данный момент неплохие, но стоит ли ограничиваться только этой сферой? Сегодня дети могут освоить множество других новых навыков, не связанных с программированием: искусство, медицина, архитектура, дизайн и т. д.
Это может быть вредно для их здоровья
Чрезмерное воздействие телефона или компьютера может негативно сказаться на неокрепшем зрении малыша. Кроме того, увлеченный гаджетом ребенок порой не в состоянии справиться с умственным напряжением и часто забывает делать перерыв на отдых, а без надлежащего контроля дети могут стать зависимыми от гаджета.
Также стоит сказать, что если начать изучать программирование уже в начальной школе, то у детей будет меньше времени для формирования навыка социализации и межличностного общения, ведь отношения в реальном мире не заменит никакая технология. И здесь все будет зависеть от квалификации педагога и качества материалов для обучения.
Требует более глубоких знаний и силы воли
Программирование – это не только про код, но и про усидчивость и терпение, которых у детей попросту нет. Ведь столкнувшись с первыми ошибками (которые будут обязательно) ребенок может потерять к этому интерес.
Учить ли детей программированию?
Очевидно, что наиболее качественно программирование зайдет подростку в возрасте 12-14 лет, когда он уже созрел, определился с тем, как воспринимать этот мир и взаимодействовать с ним. И тогда процесс обучения будет естественным и логичным продолжением его дальнейшего развития. И хоть логическим мышлением ребенок обладает уже к 6-7 годам, все же адекватно понимать развитые технологии ему будет трудно.
Было бы бессмысленно спорить, что изучение основ кодинга довольно увлекательная штука, которая здорово оттачивает логику и мышление, но как и многие другие занятия в жизни малыша – оно просто развивает. Кроме того, не стоит относиться к программированию как к науке о логике, ведь это только технология ее применения, инструмент, позволяющий автоматизировать какие-либо действия. Поэтому прежде чем принять решение взвесьте все «за» и «против».
Вот несколько советов не определившимся с выбором родителям:
- Учите своего ребенка программировать не потому, что все так делают, а потому, что он и вы этого хотите.
- Посоветуйтесь со своим ребенком, чтобы узнать его мнение. Дети старше 5 лет знают, чего хотят. Вы можете показать ему учебную программу и познакомить с некоторыми понятиями. Посмотрите, нравится ли ему это, и готов ли он продолжить.
- Вы также должны понимать, что это не быстрый процесс. Дети не могут просто так начать разрабатывать реальные приложения или игры, и могут пройти годы, прежде чем они полностью усвоят все необходимые концепции. И это нормально, главное верить в них и поддерживать, что бы ни случилось!
Решение о том, обучать ли ребенка программированию должно быть сделано с учетом его особенностей и личных интересов. Нельзя обучать его «из-под палки». У прогрессивных детских психологов по этому поводу есть свое мнение, оно звучит так: «Ребенок познает мир самостоятельно, сам учится ходить и говорить, лезет во все розетки и прочие запрещенные места, а любовь к более сложному познанию отбивается в школе и рушится принуждением родителей». Подумайте об этом перед тем, как отправлять свое чадо грызть гранит науки. Будущее не любит, когда его торопят. Удачи!