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 1)

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 1 of this course, we will introduce the basic elements of programming (such as expressions, conditionals, and functions) and then use these elements to create simple interactive applications such as a digital stopwatch. Part 1 of this class will culminate in building a version of the classic arcade game "Pong".


  • Week 0 - Statements, expressions, variables
    • Understand the structure of this class, explore Python as a calculator
  • Week 1 - Functions, logic, conditionals
    • Learn the basic constructs of Python programming, create a program that plays a variant of Rock-Paper-Scissors
  • Week 2 - Event-driven programming, local/global variables
    • Learn the basics of event-driven programming, understand difference between local and global variables, create an interactive program that plays a simple guessing game
  • Week 3 - Canvas, drawing, timers
    • Create a canvas in Python, learn how to draw on the canvas, create a digital stopwatch
  • Week 4 - Lists, keyboard input, the basics of modeling motion
    • Learn the basics of lists in Python, model moving objects in Python, recreate the classic arcade game "Pong"

Taught by

Joe Warren, Scott Rixner, John Greiner and Stephen Wong


4.9 rating, based on 3,372 Class Central reviews

4.8 rating at Coursera based on 3247 ratings

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

  • Anonymous
    I've taken and finished part 1 and part 2 of this course. There is a ton of information and skills learned. The practice problems are not necessary for your final grade, but the quizzes and mini-projects are. I really recommend doing the practice pr…
  • This course is very well structured, guiding you through the basics of Python. Some big pros for the course: - Engaging profs explain things clearly and and are entertaining, particularly Joe Warren and Scott Rixner - They have created a simple b…
  • Anonymous
    I had an excellent time in this class! I have taken several other programming classes before, but would not classify myself as a computer scientist or software engineer by any means. Compared to classes I took in University, this course did a subst…
  • Anonymous
    With a lot of new instructors teaching online, and new platforms, I believe the diversity is to increase the competition, and more successful platforms/classes will appear. However, although this course is a little old, it provides you with exercise…
  • I really liked Profs Warren and Rixner's way of delivering the course, and the use of game design is a very interesting way to get the message of programming across and also to provide a means of practicing the material taught in the course. The pee…
  • Anonymous
    This is a great introduction to MOOC's and to programming in general. I am a programmer with many, many years of experience (hair grayer than Joe's). I wanted to see what this MOOC thing was about and chose their class as I had never taken a formal…
  • Ajeeth Kumar
    It is both a sad and a happy moment, as we come to the end of the session. My daily mornings start at 5am with this course, and I am not sure what I am supposed to do now, that the course has come to an end. At the same time, I am really happy to se…
  • Anonymous
    I am probably an atypical student. I am retired, in my seventies and took this course for fun and to try to keep my mind sharp. I have no intention of becoming a professional programmer. In my past, I have had experience with several programming lan…
  • Anonymous
    Before starting this review, I'd like to provide some context about myself. I am a medical student with no prior programming experience. In fact, I'd go so far as to say that prior to ~2 years ago, I really disliked computers. However, something cl…
  • Mike Smart
    On the whole, this was a great experience. The instructors (Scott Rixner, Joe Warren, and John Greiner) clearly care about the quality of the course, and take extra steps to make the course fun with their geeky humor. Rather than dump full lectures…
  • Anonymous
    This class is excellent. I completely agree with all the positive comments. The instructors are just fantastic. Each lecture is well presented and their enthusiasm for teaching really shines through. You also get a good sense of their fun, geeky p…
  • Anonymous
    Well worth your time. When you finish, you will know enough to address most of your coding requirements ("be dangerous"), or know where to find what you need to know. Instruction is competent, clear and concise and exercises are well integ…
  • Anonymous
    Interactive programming in python is a great course for everybody wanting to learn the basics of python programming. In my opinion, it is especially suitable for beginners who have no or only some experience in programming. When I started this cours…
  • Anonymous
    As a programming language Python is excellent for beginners to professionals. It has all the features of other languages but is easy to learn and you can get results immediately. The Python class from Rice on is excellent and the instru…
  • Profile image for DARSHAN TALAVIYA
    Python Programming: Interactive Introduction Title: A Fantastic Introduction to Programming with Python! I had the pleasure of taking the "An Introduction to Interactive Programming in Python (Part 1)" course offered by Rice University on Coursera…
  • First of all, it's a great honor to be part of this special course. I learned a lot, really. I'm an ICT teacher for technology although we don't have the best technology in the Philippines but we can absolutely use the tools you've provided and taught us. I enjoyed this course sooooooooo much.
  • Anonymous
    The OOP week was a very, very big hurdle for me and I had to pay my dues and work really hard to get over it and see the light... The BlackJack week cost me many, many hours, most of these spent wondering if I would get it! But man!!! Was that wort…
  • Anonymous
    I had taken a few programming courses before this one (although none in Python, so much of the content was new). This is by far the best I've taken. It really improved my coding style and general ability by leaps and bounds. Unlike many courses, the…
  • Anonymous
    This was an excellent course. Pros: Great progressive course structure. You start out with the basics and gradually move into more advanced topics. The instructors. Each week had numerous lecture videos (each no more than 15 minutes with a majori…
  • Anonymous
    However, I still enjoyed it very much.

    I really enjoyed this class and the format it was presented in. For me, I learn and retain much more through an online class due to the fact you can do the course as an ¡§open book.¡¨ This really makes me search for the answer and in return, I retain more information. I found it relaxing to be able to turn the work on the assignments and test at my leisure and when I had the time. I liked the fact you were very clear that more internet research may be necessary for some assignments To be honest, there is nothing that I disliked about the course. I will definitely be taking another online course from you!

Never Stop Learning.

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

Someone learning on their laptop while sitting on the floor.