Всем привет! Хочу поделиться своим мнением о том, почему не стоит тратить деньги и время на курс от Я.Практикум, если вы только начинаете знакомиться с программированием. Я заинтересовался Python, несмотря на нулевые знания в области, ведь учить что-то новое — всегда полезно. Правда, сейчас в интернете можно найти много качественных бесплатных ресурсов, и платные курсы уже не так необходимы. Тем не менее, четкая структура обучения и наличие наставников создают ощущение процесса, как на реальной работе. Итак, я решил записаться на курс. Главной ошибкой было то, что я слишком доверился положительным отзывам на сайтах, которые занимают первые строчки в поиске Яндекса. Сразу скажу, что после поверхностного ознакомления (кстати, это была моя вторая ошибка) при выборе между двумя онлайн-школами я остановился на Я.Практикум. Очевидно, что отзывы были исключительно положительные, все выглядело очень привлекательно, да и наличие тренажера с бесплатным первым блоком сыграло важную роль. Так вот, с чувством гордости я стал студентом, готовым погружаться в изучение. В письме с поздравлением мне сообщили, что я сделал правильный выбор, что теперь я на пути к становлению квалифицированным специалистом, и что с вероятностью 70% найду работу по новой профессии. Также было сказано, что перед тем, как начать курс, обязательно нужно пройти первый бесплатный блок под своей учетной записью. (Далее они начинают повторять, что каждый сам ответственный за свой процесс обучения, а их роль — лишь помогать.) (* В общем, если нет внутреннего желания учиться, то ничего не получится.) В конечном итоге я прошел тренажер с бесплатным курсом полностью и освоил его от начала до конца. Хотя было непросто начать с нулевыми знаниями в программировании, мне все-таки удалось справиться. На самом деле, это не так уж сложно — просто научиться писать код, делить переменную на другую и выводить результат на экран. Первый блок начинается с самых простых вещей, а по мере прохождения сложность постепенно увеличивается, в конце требуется выполнить небольшой проект, используя изученный материал. Именно на первом проекте появились сомнения, почему теория, преподнесенная в ходе курса, не дает четких ответов на вопросы, которые возникают при выполнении финальной работы. Ну что ж, гуглить — это тоже часть учебного процесса, и я это умею. Поищем в интернете, ведь важно уметь находить ответы на вопросы самостоятельно. Проект по итогам курса я сдал, теперь жду, когда начнется следующий этап. Наконец-то наступил момент начала обучения! Все участники собираются в Slack. В целом, в Slack есть несколько каналов, каждый из которых посвящен определенной теме: в одном — конспекты, в другом — связь с наставниками, в третьем — общение с другими студентами и так далее. Знакомство в Slack проходит в неформальной обстановке, кураторами и преподавателями настроено дружелюбное общение. Нам рассказали, куда можно писать, а куда — не стоит. В общем, стоит выделить немного времени на ознакомление с правилами и интерфейсом, чтобы понять, куда и как отправлять сообщения. Это не слишком сложно, но сразу стало очевидно, что даже в этом процессе нужно пройти небольшой курс обучения :) Итак, с Slack мы разобрались, можно начинать обучение? О, нет, не так быстро! Вам дается целых 4 дня на выполнение бесплатного блока, и если вы его уже прошли, то можете спокойно ознакомиться с теоретическими материалами. Но вот дальше — вам не пройти. Эта уловка достаточно любопытная! О ней я расскажу в конце отзыва, и вы поймете, зачем это сделано. Прошло 4 дня, наступил понедельник, и начался следующий учебный блок (после бесплатного). Каждый новый блок запускается с понедельника следующей недели. Как было заявлено при знакомстве, достаточно выделять 1,5 часа в день на обучение, чтобы не отставать от общей группы. Ну что ж, не проблема, можно иногда посвятить и целый день. **Но вот важное замечание: если у вас нет исходных знаний, то и целого дня не хватит, чтобы идти в ногу с программой. Проблемы начнутся уже на многих заданиях. Иногда тренажер может «глючить» — вы вводите правильный ответ, а он все равно показывает ошибку. Потом выясняется, что нужно было закомментировать выводы из предыдущего задания, иначе решение будет неправильным. В каких-то заданиях это указано, а в каких-то — нет. С самого начала становится очевидно, что упражнения были подготовлены разными людьми с разным уровнем знаний, а теоретические материалы часто не совпадают с практическими заданиями. Да, уже на этапе бесплатной части я наткнулся на ошибку в одном из заданий: можно не дать правильный ответ, но все равно получить зеленую галочку и несколько шуток от Петросянов. **Когда мы перешли ко второму блоку, то столкнулись с краткой теорией, в которой всё больше ощущалась оторванность от реальных практических заданий. Теоретический материал часто казался просто заимствованным из учебника, без учета того, что реально нужно для выполнения задач. В заданиях мы всё так же выводим первые несколько строк таблиц и печатаем принты, хотя уже должны были бы работать с более сложными вещами, такими как функции, лемматизация или группировка данных. Создавалось впечатление, что просто скопировали части конспекта, не особо думая о связи с тем, что реально нужно для выполнения заданий. От того лаконичного и понятного подхода в бесплатной части тренажера не осталось и следа. Теория стала фрагментарной и не имела смысла в контексте выполнения заданий. Шутки и вопросы, которые должны были как-то развеселить или помочь, скорее напоминали унылые клише, чем что-то действительно полезное. Всё это оставляло неприятное ощущение от того, как преподносится материал. Вместо того, чтобы предоставлять четкую и последовательную программу, нас постоянно бросают из одного задания в другое. Множество информации приходится искать в Google, а не в самой теории к заданиям. Какой смысл в теории с готовыми решениями, если вместо того, чтобы объяснить, зачем и почему мы выполняем эти шаги, нам предлагают хокку или просто шутят, а мы все так же выводим строки таблиц? Похоже, что это сделано для создания иллюзии легкости в обучении, но вместо этого возникает странное ощущение, что кто-то просто не понимает, что нужно. Все упражнения выполнены, теорию прочитал, но знания в итоге приходится черпать из интернета. Конечно, это странно видеть в платном курсе, но ладно. И вот, когда второй блок подходит к завершению, появляется заключительный проект. И тут становится ясно, что большинство того, что мы изучили, не имеет отношения к реальным задачам проекта. На изучение тренажера и выполнение проекта отводится 1 неделя, хотя можно растянуть и на две. Однако если выбрать второй вариант, вскоре окажется, что нужно уже приступать к следующему блоку, не завершив предыдущий. В итоге в голове появляется путаница, а результаты становятся всё менее заметными. Начинает нарастать напряжение, ведь ощущение, что не успеваешь, будет усиливаться. Особенно, если рядом с тобой учат программисты с двумя профильными дипломами, которые справляются с заданиями еще до конца первой недели. Такой настрой среди коллег, конечно, не способствует мотивации, а скорее приводит к еще большему разочарованию. Вернемся к проекту. В общем, вся суть сводится к тому, чтобы просто прочитать теорию из заданий и повторить предложенные действия. Но не все так просто: теория есть, а на практике снова те же самые простые задания — напечатать результат на экране. Проще с самого начала взять проект и начать активно гуглить, искать решения, вместо того чтобы разбираться с теорией, которая зачастую не имеет ничего общего с реальными задачами. Оказавшись в процессе, понимаешь, что вовсе не обязательно следовать предложенному в тренажере пути, потому что он только замедляет работу. Можно решить задачу гораздо быстрее, используя одну строку кода — и это вполне допустимо. В итоге, по мере завершения проекта становится очевидным, что теоретический материал мало полезен, и гораздо эффективнее искать примеры и решения на сторонних ресурсах, чем тратить время на бессмысленные выводы в тренажере, которые не играют роли в конечном проекте.