Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Rice University

An Introduction to Interactive Programming in Python (Part 2)

Rice University via Coursera


This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple. These applications will involve windows whose contents are graphical and respond to buttons, the keyboard and the mouse.

In part 2 of this course, we will introduce more elements of programming (such as list, dictionaries, and loops) and then use these elements to create games such as Blackjack. Part 1 of this class will culminate in building a version of the classic arcade game "Asteroids". Upon completing this course, you will be able to write small, but interesting Python programs. The next course in the specialization will begin to introduce a more principled approach to writing programs and solving computational problems that will allow you to write larger and more complex programs.


  • Week 5 - Mouse input, list methods, dictionaries
    • Read mouse input, learn about list methods and dictionaries, draw images
  • Week 6 - Classes and object-oriented programming
    • Learn the basics of object-oriented programming in Python using classes, work with tiled images
  • Week 7 - Basic game physics, sprites
    • Understand the math of acceleration and friction, work with sprites, add sound to your game
  • Week 8 - Sets and animation
    • Learn about sets in Python, compute collisions between sprites, animate sprites

Taught by

Joe Warren, Scott Rixner, John Greiner and Stephen Wong


4.8 rating, based on 58 Class Central reviews

4.9 rating at Coursera based on 1169 ratings

Start your review of An Introduction to Interactive Programming in Python (Part 2)

  • Margaret Murphy

    Margaret Murphy completed this course.

    This 5-week course on Coursera is BRILLIANT! The whole course is 9-weeks long and done in two parts in succession (this one, Part 1 is 5 weeks, then Part 2 is 4 weeks). Do both! It is well structured with excellent videos, quizzes, practice exerc…
  • Alla Barry

    Alla Barry completed this course.

    An outstanding course!! The best course I have ever taken - Coursera or not! The absolute goal of the instructors was to help students to learn! every question on the quiz was aiming at helping with mini-projects! it was obvious there was a lot of…
  • Anonymous

    Anonymous completed this course.

    I have to say this is a fantastic class, so great that I am writing my first ever MOOC review online. Since I have some Python background, I skipped Part I and went directly into Part II. What a joy it is to learn this course! I literally can't put…
  • Profile image for Hadrien Grimaud
    Hadrien Grimaud
    Very nice introduction to Python programming; the material is very well designed, with progressive difficulty. Projects are not easy but not too difficult, just at the right level : it requires work, but they are funny, and instructors give you lot…
  • Susan B

    Susan B completed this course.

    Really enjoyed this course. I had taken the U. of Michigan Programming for Everybody (Python) class before this two-part course and I think together they provide a strong foundation. Intro Interactive Programming is great at making you really think through what you need to do in order to make your games work. But the PfE class was better at explaining the basic structure of the language (we're even using Regular Expressions in part III, which I have yet to see in the Rice classes). But I admit I had a lot of fun blasting asteroids!
  • Jim Pietrangelo completed this course.

    Well worth your time and effort. You won't be an expert when you finish, but you'll be armed with the foundational tools you need to move in that direction. Everything you learn in this course will be applicable should you decide to pursue more advanced programming courses in Python. Make no mistake, the professors are pros. Their dedication to this course and to their students is unmistakable.
  • Profile image for Matt White
    Matt White

    Matt White completed this course, spending 12 hours a week on it and found the course difficulty to be hard.

    Very challenging, but rewarding class. I feel like every type of learner can get through this class if they put enough effort, there's a lot of different sources to help you along.
  • Profile image for Tobias
    I had a lot of fun taking this class. It goes all the way from the basics to building a game in just a few weeks. The teachers are great.

    I finally have a better understanding of object oriented programming.

    I highly recommend it to everyone seriously looking into programming.

    However it is more challenging than other courses I took. So really expect to put some work into it.

    Thanks Joe, John, Scott and Stephen
  • Garnet Crocker
    Just as excellent as Part 1, anyone who has taken the first part and enjoyed it should push through and complete this part as well. The projects only get more fun and rewarding the farther you get.
  • Anonymous

    Anonymous completed this course.

    The content of this course (and Part 1) gives a really top notch introduction to programming using the Python language. The methods used by the instructors to get the material across is stellar. They actually invented a web based version of Python…
  • Rafa Bo completed this course, spending 12 hours a week on it and found the course difficulty to be medium.

    I took the first part of the course with no previous programming experience, and after finishing both courses I feel I have gained a foundation from where to develop myself. The teachers make an awesome job (thanks Scott and Joe!) at delivering sometimes convoluted concepts in a fun and easy-to-understand fashion. The exercises gradually build up in difficulty while allowing students to apply new concepts in a natural and gentle pace. And well, I call them exercises but they are actually videogames...Learning python while having fun, that's a combo!
  • Anonymous

    Anonymous completed this course.

    I spent 2 months learning some basic python on my own before taking this course. This course is fantastic! The course materials are easy to understand. The quizzes are challenging and really ensure that you understand the material in order to move on. The mini-projects are pertinent end extremely rewarding to complete. The teaching staff is wonderful...they genuinely enjoy teaching programming to students. This is the perfect course for someone to get their start in programming. I really loved this course!
  • Anonymous

    Anonymous completed this course.

    This is a great course that builds seamlessly unto the Part 1. The videos were engaging, the quizzes challenging and the miniprojects throroughly enjoyable. Joe and Scott are excellent teachers who work hard on inserting fun into their delivery of the material and while they are not always funny (who is?) you always appreciate their effort, laughing with them or at them or both! I'm looking into further courses from Rice that are offered by these gentlemen. They are worth finding again and again.
  • Profile image for Jim Hassett
    Jim Hassett

    Jim Hassett completed this course, spending 12 hours a week on it and found the course difficulty to be hard.

    Loved part II even more than I. Fun learning at its best. It is obvious that they carefully selected challenging game programs to teach programming concepts while letting the student have fun doing it. Scott and Joe were great. Their guidance on each program was clear, with the videos, quizzes, and examples all working together to provide everything needed to learn the material. I will take any computer class offered by Rice that these two teach!
  • Profile image for Izak Ramz
    Izak Ramz

    Izak Ramz completed this course, spending 8 hours a week on it and found the course difficulty to be medium.

    This course is awesome! Really recommended for beginners and experienced programmers. Even I consider myself as a experienced developer, I learned a lot of basic stuff I didn't know and I didn't learn at school (that's maybe I wasn't paying a lot of attention). I can say that my logic for programming has become stronger thanks to all the content and advices being taught in this course.
  • Profile image for EagerLearner

    EagerLearner completed this course, spending 7 hours a week on it and found the course difficulty to be easy.

    Great course, interesting teachers, funny exercises. It has 1 disadvantage though, in order to submit quizzes and peer-assessed mini-projects you need to pay for a certificate. If you don't have the money you can apply for financial aid.
  • Anonymous

    Anonymous completed this course.

    Well structured and well taught. Really enjoyed the exercises implementing games to enforce the concepts learned in lecture, specifically lists, dictionaries, and sets.
  • Profile image for Bhuvan N
    Bhuvan N

    Bhuvan N completed this course, spending 8 hours a week on it and found the course difficulty to be medium.

    Once you've completed the first part of this course, part 2 becomes considerably easier, but it doesn't stop being great fun. It's a memorable experience.
  • Anonymous

    Anonymous is taking this course right now.

    It is very helpful to understand the core of Python especially interactive programming in Python. Easy to move step by step to break down Python.
  • Profile image for Themis Stantzos
    Themis Stantzos

    Themis Stantzos completed this course, spending 15 hours a week on it and found the course difficulty to be hard.

    It's not easy but it is rewarding !!! By following this course one goes a long way into Python and in programming in general.

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.