Вопрос актуальный, учитывая обилие литературы, видеолекций и прочих обучающих материалов. Но для каждой задачи есть своё решение. Видео или статья дадут понимание, интересно ли вам работать с выбранным языком программирования или нет, помогут написать первые «бесплатные курсы по программированию в Москве» и погоняют по базису.
А иногда хочется углубиться, задать вопрос, получить фидбек. Увы, самообучение на такой спектр не рассчитано. Да, если вы опытный программист, то вполне можете освоить новый язык или технологию самостоятельно, но какие-то подводные камни всё равно можно упустить из виду и не найти ответ на свой вопрос. Это зависит только от ваших потребностей. Интенсивы набирают популярность, и связан такой эффект с отсутствием у людей времени. Суть в том, что на интенсивах продолжительностью в 1–3 дня вам дают максимум полезной информации, которая тут же откладывается в голове. В этом варианте обучения не предусмотрены большие перерывы между лекциями, как в случае с длительными курсами.
Однако онлайн-курсы по программированию практикуют домашнее задание и дебрифинг, дают время осмыслить полученную информацию и сформулировать вопросы. Кроме того, преподаватели несут ответственность за полученные вами знания, оценивают их впоследствии, предоставляют бесплатную консультацию. Но в этом случае у вас должно быть много свободного времени, так как совмещать работу и продолжительное обучение непросто.