Альона Нагаєвщук, 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, я бачу, що пайтоністи потребують поглиблених знань в окремих темах».

У Python код перевіряю лінійно і виправляю помилки у процесі написання. У більшості мов програмування код збирається докупи і намагається запуститися. Якщо виникне помилка, не спрацює вся програма. Поспішаючи, можеш не переглянути окремий шматок коду, і на перший погляд усе буде нормально. Але варто користувачеві натиснути на злощасну частину коду, важлива функція заглючить. В інших мовах код не запустився б.

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

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

А далі, що?

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

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

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

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