В прошлый раз мы сделали полный обзор бесплатной части курса Практикума по фронтнеду — и получили много запросов о том, чтобы сделать разбор всего курса — как бесплатной, так и платной части. Но чтобы было интереснее, мы решили взять на этот раз другой курс Практикума — «Python-разработчик». Вот что мы разберём, шаг за шагом:
- Как всё устроено и основы Python ← вы здесь
- Бэкенд на Django
- API: интерфейс взаимодействия программ
- Алгоритмы и структуры данных
- Управление проектом на удалённом сервере
- Посмотрим, что нужно для дипломного проекта
- Поговорим о подготовке к трудоустройству
- Алгоритмы и структуры данных Ver. 2.0
- Бэкенд на Django Ver. 2.0
- Управление проектом на удалённом сервере Ver. 2.0
Последние три темы — обновлённые, расширенные и дополненные, поэтому мы их разберём отдельно и посмотрим, что добавилось.
Как будем разбирать курс
Мы не будем рассказывать про каждый урок: в каждом блоке много тем, в каждой теме до 16 уроков, а в каждом уроке несколько заданий, и, если разбирать прям всё, получится то же самое, что в Практикуме, только в несколько раз больше.
Вместо этого мы сосредоточимся на том, что там дают, как объясняют и как вообще происходит обучение в тренажёрах. Заодно посмотрим, какие приёмы используются, чтобы материал воспринимался проще.Сегодня сначала расскажем коротко о блоке «Как всё устроено», а потом подробно разберём блок «Основы Python». Если что, его можно пройти бесплатно в отдельном курсе, который так и называется — «Основы Python-разработки».
Блок «Как всё устроено» — 6 уроков
Начало
Задача этого блока — рассказать о том, как будет проходить обучение на курсе, как тут всё устроено, как работают тренажёры, тесты и проверка знаний после уроков. Теоретически это можно пропустить (и в конце первого урока нам так и пишут), но если это ваш первый курс Практикума, лучше так не делать — не увидите много нового и полезного для себя.
Также нам сразу говорят, что курс делится на две части — бесплатную и платную. Бесплатная (то, что будем смотреть сегодня) состоит из 8 уроков и посвящена основам Python:
Кто такой бэкенд-разработчик
Цель урока — объяснить, кто такой бэкенд-разработчик, чем он занимается, на каком языке будем писать код и почему. Всё предельно понятно, на примерах кода, картинках и хороших аналогиях.
А вот как нам рассказывают про связь и различие фронтенда и бэкенда: всё как в «Коде», только глубже, подробнее и с красивыми иллюстрациями:
В Практикуме используют классный приём, который позволяет сразу понять, насколько вы сами усвоили и поняли тему: разложить задачи по категориям, чему учат или не учат на курсе:
В конце некоторых уроков есть тест — он покажет, есть ли ещё пробелы в знаниях и на что из только что пройденного нужно обратить больше внимания:
Как устроено обучение в Практикуме
На этом уроке нам рассказывают про спринты — основной подход к разработке и выполнению задач, принятый у программистов. Один спринт — две недели, за это время разбирается одна большая тема вместе с практикой:
Кстати: если какой-то термин в уроке будет непонятен, его всегда можно выделить и попросить уточнить значение у нейросети Яндекса.
Например, мы так и не поняли, что такое спринт:
Выделили слово, нажали на «Уточнить» и получили ответ:
Практика — очень важная и весомая по объёму часть обучения на курсе, поэтому с ней тоже связано много вопросов. Один из них — что делать с ошибками в проекте, который вы сдали как домашнюю работу в очередном спринте. Отсюда можно сделать два вывода:
- ваш код действительно будет проверять в проектах живой человек, а не робот, давать комментарии, говорить, где что лучше исправить и так далее;
- задача Практикума — научить вас работать с кодом так, как это происходит в компаниях, когда у вас есть проверяющий в виде, например, сеньора или тимлида.
Чему вы научитесь на основном курсе
На этом уроке нас знакомят со структурой и таймингом обучения: что сколько длится, когда начинается, когда каникулы (такое тоже, оказывается, есть на курсе):
Но самое интересное — какие проекты мы сделаем за время обучения. Это не что-то простое типа «привет, мир!», а полноценное портфолио из шести проектов:
- Фитнес-трекер — позволит считать шаги и калории.
- Платформа для блогов — на ней можно будет зарегистрироваться, создать и отредактировать пост, загрузить картинки, написать комментарии.
- Бот в телеграме — он будет оповещать вас о статусе проверки вашего домашнего задания.
- API для блога — полноценный API (программный интерфейс приложения) для блогерской платформы и документация к нему.
- REST API для сервиса YaMDb — базы отзывов о фильмах, книгах и музыке. А ещё научитесь работать в команде: это будет групповая работа.
Сервис Foodgram — веб-приложение, которое поможет пользователям выбирать и готовить вкусную и разнообразную еду, а ещё автоматически создавать список продуктов из рецептов.
Трудоустройство после курса
Практикум сопровождает студентов не только во время учёбы, но и в процессе поиска работы. Для поддержки студентов разработана специальная программа помощи в трудоустройстве — карьерный трек.
Это бесплатная программа, она стартует ближе к концу обучения; от участников программы требуется уделять занятиям 2–4 часа в неделю.
Ещё на уроке расскажут, не поздно ли менять профессию именно вам, как устроен карьерный трек и что нужно там будет делать на каждом этапе.
Единственный вопрос к этому уроку — встроенное ютуб-видео, которое в обычных условиях просто не открывается. Надеемся, скоро ребята перенесут все свои интервью со студентами и выпускниками на свой хостинг.
Будет сложно, но у вас получится
Практикум — молодцы: они сразу предупреждают, что курс по получению новой профессии Python-разработчика может оказаться сложным. И иногда это действительно так: осваивать новое с нуля бывает непросто. Чтобы справиться с этим, в этом уроке собраны советы и истории тех, кто уже прошёл обучение и освоил новую профессию. Это действительно может мотивировать и придать сил в сложной ситуации.
Блок «Основы Python»
Всё, с введением в обучение закончили, переходим в раздел «Основы Python». В нём 8 тем:
- Знакомство с Python ← сегодня разберём вот это
- Циклы и ветвления
- Функции
- Словари и множества
- Строки и форматирование
- Библиотеки
- Протокол HTTP
- Сетевые запросы
В каждой теме — от 6 до 16 уроков, тут уже не получится пройти их быстро или просто прочитать, как в уроках выше. А всё потому, что тут появляются тренажёры: интерактивные страницы, где можно писать и запускать свой код, видеть ошибки, читать подсказки и оценивать результат знания темы.
Можно начать совсем с нуля. Даже если вы до этого ни разу не открывали редактор кода и не разбирались в ИТ и программировании, всё будет понятно. Если уже есть опыт — будет проще и тоже понятно (и новое для себя вы точно встретите).
Практики много. Нет, не так: практики — МНОГО. Её столько, что иногда думаешь: а может, лучше было бы сократить, — но это обманчивое впечатление. Можно сколько угодно читать теорию, но без практики ничего не получится. Всё делается в тренажёрах, есть подсказки, есть теория, всегда можно почитать материал и вернуться к коду.
Знакомство с Python
Цель этой темы — познакомить вас с языком Python в целом, рассказать, как он работает в общих чертах, на каких принципах строится код. Сюда же — написание совсем простых новичковых программ и поиск мелких ошибок, чтобы в дальнейшем вы не пугались ни кода, ни того, что в нём могут появляться ошибки.
Всего в теме 16 уроков, вот ключевые:
- философия Python;
- основы синтаксиса;
- переменные и типы (и их преобразование);
- ошибки;
- именование переменных;
- вывод на экран;
- дробные числа;
- списки.
А вот философия языка, дзен Питона — то, что появляется на экране после команды-пасхалки import this:
На русский это можно перевести так:
- Красивое лучше, чем уродливое.
- Явное лучше, чем неявное.
- Простое лучше, чем сложное.
- Сложное лучше, чем запутанное.
- Плоское лучше, чем вложенное.
- Разреженное лучше, чем плотное.
- Читаемость имеет значение.
- Особые случаи не настолько особые, чтобы нарушать правила.
- При этом практичность важнее безупречности.
- Ошибка никогда не должна замалчиваться.
- Если только вы сами этого не захотите.
- Встретив двусмысленность, отбрось искушение угадать.
- Должен существовать один и желательно только один очевидный способ сделать что-то.
- Хотя он поначалу может быть и не очевиден, если вы не голландец.
- Сейчас лучше, чем никогда.
- Хотя никогда зачастую лучше, чем прямо сейчас.
- Если реализацию сложно объяснить — идея плоха.
- Если реализацию легко объяснить — идея, возможно, хороша.
- Пространства имён — отличная штука! Будем делать их больше!
Здесь уже появляются первые практические тренажёры — пока простые и встроенные прямо в теорию. В них уже можно что-то менять, запускать код и смотреть, что получается:
Все объяснения, как устроены команды, из чего они состоят и как работают — простые и наглядные. Для новичков самое то:
Особый кайф в том, что в процессе изучения материала понимаешь: над курсом работали далеко не глупые люди. Они продумали много мелочей, включая подсказки и шпаргалки по самым часто встречающимся темам. На зелёной плашке — пример такой заботы и ссылка на шпаргалку:
Кроме тренажёров, есть тесты: вы читаете задание и выбираете подходящие, на ваш взгляд, варианты ответов. И так по каждой изучаемой теме:
Иногда для разнообразия часть уроков даётся в виде диалогов, где вы выступаете в роли стажёра и даёте свои ответы. С методической точки зрения это хороший сценарий: можно и отвлечься немного, и новое узнать, и мозг как будто не так напрягается, как при обычном чтении теории:
Материалы по знакомству с Python построены так, что ты сразу читаешь теорию — и тут же можешь применить или проверить её в мини-тренажёре и посмотреть, как это работает на практике:
Чем дальше — тем больше встречается практических заданий. Здесь нас знакомят с ошибками и просят исправить простой код, чтобы ошибки не было. Даже новичку, который видит это первый раз, будет несложно:
Примерно с середины темы появятся полноценные тренажёры. Они устроены так: слева теория, справа — окна для кода и результата его работы. Читаете теорию, смотрите задание, если нужно — берёте подсказки и добиваетесь нужного результата. Если с первого раза не получится написать или исправить код, не переживайте: всегда есть помощь и нет ограничений на количество попыток.
Чем дальше в курс — тем больше практики:
Уф, на этом пока закончим: мы познакомились с самой базовой базой, дальше будет интереснее и немного сложнее.
Промежуточные итоги
Сегодня мы посмотрели две самые простые темы большого курса Практикума «Python-разработчик»: как всё устроено и самые основы Python. Вот короткие выводы:
- всё подаётся максимально просто и понятно;
- новичок, который до этого вообще не видел код, тоже разберётся;
- практики — много, и это хорошо;
- есть подсказки и решения к сложным моментам — тоже хорошо, если ими пользоваться не каждый раз, а когда действительно становится сложно.
Через неделю-полторы будет продолжение: смотрим на остальные 7 тем из базового курса по Питону, а потом будем разбирать блок «Бэкенд на Django».
Как начать
Всё просто:
- Заходите в свою учётную запись в Яндексе (или создаёте, если ещё нет).
- Переходите на страницу курса.
- Нажимаете на кнопку с бесплатным стартом.
Это всё, скоро увидимся с разбором следующих тем, подпишитесь, чтобы не пропустить продолжение :-)