Курс начинается с довольно низкоуровневых вещей, и периодически думаешь: «так же никто не пишет код». Но дальше начинаешь понимать, что всё это было нужно для того, чтобы не смотреть на современные инструменты как на магическую кнопочку, которая всё за тебя делает.
С практикой тут тоже всё серьёзно. Иногда открываешь задание с мыслью «ну щас быстренько сделаю по теории и всё», а потом два часа сидишь уже с мыслью «пофиг как я это напишу, главное чтобы просто заработало»).
Отдельная история — это проекты. Вот там реально начинается полёт фантазии. Никто не водит тебя за ручку и не рассказывает, как и что делать. Тебе просто говорят: «нужно сделать вот это, выглядеть должно так, вот документация на всякие штуки, с которыми тебе придётся разобраться самому». И дальше крутись как хочешь).
Но при этом один на один с проектом тебя не оставляют. Есть наставник, вебинары по проектам, а после сдачи проверяющий укажет на ошибки и подскажет, где и как можно было сделать лучше. Так что готовьтесь после проверки переписывать половину проекта (в этом и есть весь смысл — только так и начинаешь расти как разработчик).
Из минусов — UI в практиках. Мне очень не хватало возможности просто рассплитить два файла и держать их перед глазами одновременно, а не прыгать туда-сюда. Хотя возможно я слепой и эта кнопка всё это время была где-то рядом).
А вообще, я реально понял, что быть хорошим разработчиком — это не знать кучу функций наизусть и очень быстро писать код (как я раньше думал). Куда важнее уметь разобраться в незнакомой задаче, понять, что вообще происходит, и найти решение, даже если ты впервые столкнулся с таким кейсом.