Алена Нагаевщук, Blog Author

25 мая 2020

В скобках не запутаешься и ошибку не упустишь. Ревизия курса обучения Python

У тебя есть четыре месяца и желание освоить простой язык программирования. Что выбрать? Для MATLAB надо хорошо разбираться в алгебре, в JavaScript никуда без HTML/CSS. А есть такая сфера, где достаточно понимать, из чего состоит компьютер и что такое операционная система. Это курс изучения Python. Простые приложения, прототипы игр и тестирование программ — для всего этого на Python код пишется быстро, а ошибки можно исправить в процессе.

img

Студенты и преподаватель Beetroot Academy рассказывают, как устроен интерактивный курс Рython и где после обучения пригодятся знания.

Пайтонистка, которая смогла

Никого не удивлю тем, что для меня английский — второй базовый язык. Так и Python должен стать в моем резюме следующим языком программирования после C#. На нем кодят в Google, NASA и Instagram. Теперь и я, в своей однушке на Позняках, сижу на диване и пробую собрать чат-бота по всем канонам пайтона. Но давайте по порядку.

В прошлом году я окончила курс по C# — загорелась делать мобильные приложения на IOS и Android. Нашла двух американских заказчиков и работала себе спокойно полгода, пока у них не закончился бюджет. Пришлось быстро думать: что еще такого выучить, чтобы не прогореть? Для меня было важно найти практичный курс по программированию. Хотелось учиться и одновременно кодить в реальных проектах. Так я выбрала Python.

Язык лаконичный, ускоряет время разработки и по синтаксису напоминает английский язык. Пока в C# создашь проект, напишешь пару классов, в Python — метод написала в notepad++, запустила с командной строки, и все заработало. В Python нет мудреных символов, скрытых переменных, заголовков и излишнего кода. Копируя структуру англоязычных предложений, при желании можно освоить базовые понятия.

Помните мой крах с предыдущей работой? Когда заказчики затихли, а в Beetroot Academy я только проходила собеседование, подалась в контент-аналитики. Кто бы мог подумать, что Python здесь пригодится. Моя основная работа проходит в Excel. Python дал больше инструментов для редактирования текста и структурирования больших массивов данных.

На первых уроках выучила половину курса

Мы учимся в мессенджере Discord. Общаемся всей группой в основном канале и в виртуальных аудиториях по 3–4 человека. Материалы всегда под рукой. На полезные ссылки преподаватель не скупится.

undefined

Сергей Довгополюк, преподаватель курса обучения Python в Beetroot Academy Vinnytsia: «Я выбрал тактику — меньше объяснять и давать больше практики. Показываю студенту на примере его кода, что где-то есть ошибка, и даю 3–4 источника в интернете с решением. Ответ может быть по одной ссылке. Я специально так делаю, чтобы студент сам просматривал, анализировал и понимал, что ему нужно».

undefined

На втором уроке мы уже выполняли задания середины модуля. В LMS-системе (программе для дистанционного обучения, — ред.) классные вводные видеолекции, но по ходу курса не хватает более сложных задач. Лектор разбавляет программу своими заданиями. Так мы видим, как теория проявляется в реальных проектах.

Однажды застопорились на классах и работе с файлами. Препод раз за разом давал похожие задания, чтобы все наконец-то разобрались. Одно из таких — создать и протестировать приложение по флористике. В результате справились и обогнали программу на несколько уроков.

undefined

Сергей Довгополюк: «Когда проходили декораторы — шаблоны, меняющие часть структуры кода — я дал студентам свои задания. Они создавали и наполняли CSV-файлы, хотя по программе им это еще рано знать. На курсе нет усиленной работы с математическими модулями, но своих студентов я и в этом натренировал. Работая в сфере Data Science, я вижу, что в “питоне” нужны углубленные знания по отдельным темам».

В пайтоне код проверяю линейно и исправляю ошибки в процессе написания. В большинстве языков программирования код собирается целиком и пробует запуститься. Если возникнет недочет, не сработает вся программа. В спешке можно не протестить отдельный кусок кода, и на первый взгляд все будет нормально. Но стоит пользователю нажать на злосчастную часть кода, важная функция заглючит. В других языках код не запустился бы.

Ольга Прокопчук, Educational Manager в Beetroot Academy: «На одном из занятий наблюдала классный метод: преподаватель кодит и намеренно допускает ошибку, чтобы в конце программа не сработала. Студенты должны разобраться, что пошло не так. Включается критическое мышление. Наш мозг привыкает к одному темпу работы, ему становится комфортно, и в определенный момент он расслабляется. Студентов надо держать в тонусе, и такие задания в этом помогают».

Сергей Довгополюк: «Для объяснения Python на примерах, приглашаю специалистов из отрасли. Недавно к нам подключался программист из EPAM Systems. Рассказывал о необходимости тестирования. Ребята активно включились в обсуждение, под конец созвона расспрашивали нас с гостем и просили чаще звать специалистов».

А дальше, что?

Создать бэкенд сайта на Python можно с помощью множества фреймворков. Самые популярные — Django и Flask, которые мы разбираем на курсе. Но для полноценного графического оформления понадобится HTML/CSS.

Заморачиваться над сайтом не хочу, поэтому для финального проекта выбрала Telegram-бот. Идея такая: пользователь запрашивает информацию о каком-то понятии или событии, а бот отвечает сведенными данными из «Википедии» со ссылкой на источник. Не надо долго гуглить, все коротко и по сути. Планирую сделать программу на украинском и английском языках. 

Python применяют в специфической работе с данными, машинном обучении, Data Science, DevOps и системном администрировании. Так что теперь без работы не останусь.

Спасибо студенткам Елене Рольской и Ольге Бойчук, студентам Александру Бутенко и Сергею Шостаку, а также преподавателю курса Python Сергею Довгополюку и Educational Manager Ольге Прокопчук за помощь в подготовке материала.