Зміст допису
Вступ – перший онлайн-курс
Саме з цього онлайн-курсу все і почалося. Ось, що я написав 23 червня 2013 року на Facebook:
Сьогодні отримав свій перший сертифікат від Coursera. Курс тривав 9 тижнів. Хочу відзначити надзвичайно високий рівень технічного та методичного забезпечення курсу. Отримав справжнє задоволення від навчання.
До допису я тоді додав ось цю світлину:

А сам сертифікат виглядав так (дата 6 липня пояснюється тим, що сам сертифікат я завантажив тоді не одразу, а Coursera з якоїсь внутрішньої причини згенерувала 6-го липня сертифікат наново):

Тривалість та вартість курсу
У 2013 році онлайн-курс An Introduction to Interactive Programming in Python дійсно тривав 9 тижнів. Коли зараз я знайшов його на Coursera, щоб додати на нього посилання, то побачив, що тепер автори курсу розбили його на дві частини: перша частина курсу триває 5 тижнів, а друга – 4. Отже, імовірно, що сам курс за змістом суттєво не змінився, а його просто розбили на дві частини. Окрім цього зауважу, що тепер Coursera вже безкоштовно не видає сертифікати. Звісно, і зараз можна вивчити будь-який онлайн-курс безкоштовно, але лише в режимі Audit. Ось відмінності безкоштовного та платного навчання на Coursera:

Ще однієї новацією Coursera, якої не було у 2013 році, є Спеціалізації (Specializations), які об’єднують 4-7 споріднених онлайн-курсів одного університету. Так, наприклад, обидві частини онлайн-курсу An Introduction to Interactive Programming in Python тепер входять до спеціалізації Університету Райса Fundamentals of Computing. Prepare for Advanced Computer Science Courses, що складається з 7 курсів. Спеціалізації платні (за аналогічним принципом, вказаним у таблиці вище), але можна дати запит на фінансову допомогу. Щодо цін, то на даний момент вартість спеціалізації Fundamentals of Computing. Prepare for Advanced Computer Science Courses складає $553 за всі 7 курсів одразу, або можна платити $79 за курс, тобто знижки за “опт” немає. До речі, сертифікат до онлайн-курсу Machine Learning, який я зараз вивчаю на Coursera, мені також пропонують придбати за $79, тому можна припустити, що це є стандартною ціною сертифікату на Coursera. І здається, я зрозумів, навіщо курс An Introduction to Interactive Programming in Python розбили на дві частини 🙂
Програма курсу (Syllabus)
Виявилось, що я завбачливо зберіг Syllabus курсу. Ось такою була програма у 2013 році:

А ось теперішня програма цього онлайн-курсу:
An Introduction to Interactive Programming in Python (Part 1):
- Week 0 – Statements, expressions, variables (Graded: Quiz 0)
- Week 1 – Functions, logic, conditionals (Graded: Quiz 1; Rock-paper-scissors-lizard-Spock)
- Week 2 – Event-driven programming, local/global variables (Graded: Quiz 2a, Quiz 2b; “Guess the Number!”)
- Week 3 – Canvas, drawing, timers (Graded: Quiz 3a, Quiz 3b; Stopwatch: The Game)
- Week 4 – Lists, keyboard input, the basics of modeling motion (Graded: Quiz 4a, Quiz 4b; Pong)
An Introduction to Interactive Programming in Python (Part 2):
- Week 5 – Mouse input, list methods, dictionaries (Graded: Quiz 5a, Quiz 5b; Memory)
- Week 6 – Classes and object-oriented programming (Graded: Quiz 6a, Quiz 6b; Blackjack)
- Week 7 – Basic game physics, sprites (Graded: Quiz 7a, Quiz 7b; Spaceship)
- Week 8 – Sets and animation (Graded: Quiz 8; RiceRocks)
Як видно, програма курсу майже не змінилась. Як і міні-проекти.
Особливості курсу
Я не буду переоповідати зміст курсу, оскільки він випливає з навчальної програми, але розкажу про деякі особливості:
- Всі завдання, де необхідно писати код на Python (так звані “міні-проекти”) можна писати безпосередньо у вікні браузера, використовуючи спеціальну онлайн-платформу CodeSkulptor, створену одним із авторів курсу. Одразу зауважу, що це надзвичайно зручно – я міг писати свої програми з будь-якого комп’ютера та легко “здавати” завдання на перевірку (для цього потрібно було лише вставити веб-адресу свого міні-проекту у відповідне поле). Я і зараз нерідко його використовую для написання коротких програм, виконання різноманітних обчислень тощо, а мій син і понині іноді любить погратись у мої міні-проекти (особливо, у фінальний RiceRocks) 🙂 .
- Запам’яталась досить цікава система оцінювання міні-проектів. Після того як я відправляв свій проект на оцінювання (дедлайн був жорсткий), я повинен був анонімно протягом декількох днів (також із жорстким дедлайном) оцінити мінімум 5 запропонованих міні-проектів інших студентів. Для цього надавалась деталізована інструкція для перевірки та чітка розбаловка (скільки балів і за що саме). Далі мені пропонувалось за тим самим алгоритмом оцінити власну роботу. За невиконання цього етапу знімались бали. І хоча оцінювання було анонімним, можна було також написати якийсь узагальнений коментар. Я, як правило, писав щось на зразок “Good job! :)”, а сам отримував, наприклад, “well done! You have the best implementation from all that I have evaluated :), most people didn’t test for wrong input.”, “Sweet!”, “Excellent.”, “Full credit for every question. Good job!” тощо. Мені ця система сподобалась. І не лише через приємні коментарі 🙂 . Насправді це дійсно корисна та ефективна система оцінювання коду. Так в процесі оцінювання я бачив код інших студентів, нерідко помічаючи якісь корисні особливості. До того ж це дало можливість авторам курсу навчати одночасно десятки тисяч студентів. Тому не здивуюсь, якщо ця система (можливо, з якимись модифікаціями) залишилась і дотепер.
- Був, як потім виявилось, один і не дуже зручний момент (хоча і не критичний). Справа в тому, що автори курсу для роботи з графікою використовували власний модуль SimpleGUI замість, наприклад, популярного набору модулів Pygame. Тому випускникам курсу потім доводиться проходити певну адаптацію до нових модулів.
- В кінці кожного тижня потрібно було скласти два тести (інколи один), що складались з 9-10 запитань. На кожен тест давалось, здається, три спроби.
- Також в кінці кожного тижня, окрім нульового, студент мав можливість створити цікаву програму (mini-project). Код міні-проектів поступово ускладнювався, але й водночас спрощувався за рахунок нових елементів та конструкцій. Квінтесенцією курсу було (і, вочевидь, залишається) створення варіації комп’ютерної гри Asteroids під назвою RiceRocks.
Висновок
An Introduction to Interactive Programming in Python – дуже цікавий та корисний онлайн-курс. Рекомендую усім, хто бажає швидко опанувати основи мови програмування Python. І не варто звертати увагу на платні сертифікати, адже головне – це знання та навички.
Дякую, що дочитали цю статтю до кінця 🙂 Бажаю успіхів!
На черзі огляд онлайн-курсу Model Thinking (Coursera).
2 коментарі до “Огляд онлайн-курсу “An Introduction to Interactive Programming in Python” від Університету Райса на платформі Coursera”
Сам проходив курс, це був перший досвід онлайн курсів. В цілому дуже гарно все пояснюють.
Так, згоден, добре пояснюють. Дякую за коментар!
Коментарі закриті.