Learning Freak

Programming Learning Journey

Interactive Programming in Python

/ Category: Software Development

Another Python course offered by Coursera and one of my favourite. It's fast-paced and challenging. From lesson one students build interactive applications in a browser-based programming environment. No prior programming experience is required, but if you already know the basics, you won't get bored.

About the course

"An introduction to interactive programming in Python" is a two-part course offered by the Rice University through Coursera. It takes 9 weeks to complete the course: 5 weeks for the first part and 4 weeks for the second one. There are a few enrollments in a year for each of the parts.

A full version (paid 79 USD for each part) offers a series of lively videos, a quiz, a peer-graded task and a peer review every week. If you choose the 'Audit only' option (free of charge), you will have access to all materials except graded items, i.e. tests and tasks will be accessible, but you won't be able to submit them for grading. Completing each week took me around 5-7 hours. By the end of the course when the interactive applications became more complex it took me longer.

The peer-graded task is an interactive game to code, starting from "Rock-paper-scissors-lizard-Spock", through i.a. "Pong", "Memory", "Blackjack" to "RiceRock" - a version of the classic arcade game "Asteroids". All the games are developed in a browser-based Python environment named CodeSkulptor that was created by one of the course's instructors, Scott Rixner.



Blackjack

Click to watch my version of "Blackjack" on Youtube

What I have learned

The course introduced Python basics i.e. expressions, conditionals, functions, lists, dictionaries and loops in a clear and approachable way. It also helped me get used to working with more complex projects that had more lines of code than standard excercises for beginners. For example, for the first task, "Rock-paper-scissors-lizard-Spock", I wrote around 50 lines of code; for the last one, "RiceRock", almost 400. At first it was challenging to deal with such an amount of code, but got easier and easier with each week's assignment.

The course also offers possibility of code review. To get the grade, I was asked to review tasks of at least 5 other students and received feedback on my work from others. With more complex tasks, it was helpful to see how others completed the same task in a different way.



RiceRocks

Click to watch my version of "Asteroids" on Youtube

On the positive side

It wasn't an easy course for me, but definitely a rewarding one. What I especially like is that it helps beginners create games that are interactive, with nice graphics and music, and fun to play. It teaches Python basics and gives tools to build impressive applications.

The CodeSkulptor allows you to build content that responds to buttons, the keyboard and the mouse. It comes with a comprehensible documentation and is easy to learn and use. If you take the bait, the skills you learn here can be transferred to use e.g. PyGame.

The instructors did they best to make programming easy-to-learn and interesting. The course is really well-thought. Whenever you learn a new Python element, you immediately incorporate it into an interactive game. It's very different from standard courses for beginners where you write statements and print results in the interactive prompt. Here you write statements that are part of a bigger project.

All Posts

Comments

QsoRiX says:
Sept. 26, 2016, 10:37 p.m.

Thanks for sharing this. I must take a closer look at Coursera.

Leave a reply

All fields are required. Your e-mail address will not be published.