How to Take This Course#
This course is for beginners. We focus on practical programming skills, with just enough theory to explain important concepts.
Because regular practice is essential, the course is organized around weekly activities. We expect students to come to class prepared. In-class sessions are not recorded and are not mandatory, and it is your responsibility to keep up with the course.
Weekly Activities#
Preparation#
Do these activities before class. They take about 2–3 hours per week:
Reading: Read approximately one chapter from the textbook.
Copy-and-Run Exercises: Copy and run the provided code examples to get familiar with the concepts.
Self-Quiz: Test your understanding of the reading and exercises.
In-Class#
Do these activities in class, moderated by teachers and teaching assistants:
In-Class Quiz: A 10-question quiz, similar to the self-quiz.
Coding Practice: Write small programs to practice what you have learned.
Live Demo: Watch a demonstration focused on solving problems.
Problem Solving: Work on larger, self-contained coding problems.
Closure#
Do this activity after class. It takes about 1 hour per week:
Syllabus: Review what you have learned this week.
Voluntary Assignments: Submit your solutions and get feedback.
Advanced#
A voluntary track for students who want to go further:
Additional Tasks: Optional challenges if you want to learn more.
Python Features: Explore Python features that are not part of the syllabus.
Ways to Take the Course#
The Fast Track#
If you already have some programming experience, that is great — but you should still make sure you meet all the learning goals of the course. We recommend focusing on:
Self-Quizzes: Use these to check your understanding of each week’s material. If any questions are difficult, go back and review the readings and copy-and-run exercises.
Syllabus: Make sure you know what the course covers. All assignments and exam tasks stay within the syllabus, so it is important to be familiar with it.
Voluntary Assignments: Submit your solutions to get feedback. We follow a strict grading policy: solutions that do not follow the specifications may score poorly, even if they do more than what is asked. Submitting regularly is the best way to understand how your work is evaluated.
Exam Preparation: Near the end of the course, you can submit solutions to previous exams. This is a great way to get familiar with the format and what is expected.
Advanced Topics: We have also collected a set of advanced topics. Feel free to explore — you might find something that challenges or inspires you.
The Self-Paced Track#
If you cannot attend the in-class sessions, you can still follow the course at your own pace.
Complete the preparation and self-quiz activities for each week, then work through the in-class activities on your own. If you need help, ask questions in the course discussion forum.
We recommend following the weekly schedule as closely as possible and not falling behind. From week 5, remember to submit your voluntary assignments to get feedback.