An Introduction to Interactive Programming in Python (Part 1) (Coursera)

Offered by Rice University,
An Introduction to Interactive Programming in Python (Part 1) (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.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

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".

Course 1 of 7 in the Fundamentals of Computing Specialization.

Syllabus

WEEK 1
Statements, expressions, variables
Understand the structure of this class, explore Python as a calculator

WEEK 2
Functions, logic, conditionals
Learn the basic constructs of Python programming, create a program that plays a variant of Rock-Paper-Scissors

WEEK 3
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 4
Canvas, drawing, timers
Create a canvas in Python, learn how to draw on the canvas, create a digital stopwatch

WEEK 5
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"

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

Related Courses

Fundamentos de Android (Coursera) Coursera
Universidad Nacional Autónoma de México

Fundamentos de Android (Coursera)

Por medio de ejercicios prácticos, serás capaz de manipular las herramientas que Android te ofrece para desarrollar aplicaciones móviles. En este curso, instalarás el entorno de desarrollo Android Studio y manipularás sus más sofisticadas particularidades. Por ejemplo, la composición de archivos de un proyecto Android y los patrones más comunes para el desarrollo de tus aplicaciones.

Jun 22nd 2026
5-12 Weeks
Interfacing with the Raspberry Pi (Coursera) Coursera
University of California, Irvine

Interfacing with the Raspberry Pi (Coursera)

The Raspberry Pi uses a variety of input/output devices based on protocols such as HDMI, USB, and Ethernet to communicate with the outside world. In this class you will learn how to use these protocols with other external devices (sensors, motors, GPS, orientation, LCD screens etc.) to get your IoT device to interact with the real world.

Jun 22nd 2026
4 Weeks
Hypothesis Testing with Python and Excel (Coursera) Coursera
Tufts University

Hypothesis Testing with Python and Excel (Coursera)

In today's job market, leaders need to understand the fundamentals of data to be competitive. An essential procedure to understand business and analytics is hypothesis testing. This short course, designed by Tufts University expert faculty, will teach the fundamentals of hypothesis testing of a population mean and a population proportion, using Excel and Python for calculations. You'll also discover the central limit theorem, which is essential for hypothesis testing. To conclude the course, you will apply your newfound skills by creating a plan for an experiment in your own workplace that uses hypothesis testing.

Jun 23rd 2026
1 Week
Interfacing with the Arduino (Coursera) Coursera
University of California, Irvine

Interfacing with the Arduino (Coursera)

Arduino senses the environment by receiving inputs from add-on devices such as sensors, and can control the world around it by adjusting lights, motors, and other actuators. In this class you will learn how and when to use the different types of sensors and how to connect them to the Arduino. Since the external world uses continuous or analog signals and the hardware is digital you will learn how these signals are converted back-and-forth and how this must be considered as you program your device. You'll also learn about the use of Arduino-specific shields and the shields software libraries to interface with the real world.

Jun 22nd 2026
4 Weeks
Machine Learning Foundations: A Case Study Approach (Coursera) Coursera
University of Washington

Machine Learning Foundations: A Case Study Approach (Coursera)

Do you have data and wonder what it can tell you? Do you need a deeper understanding of the core ways in which machine learning can improve your business? Do you want to be able to converse with specialists about anything from regression and classification to deep learning and recommender systems? In this course, you will get hands-on experience with machine learning from a series of practical case-studies.

Jun 22nd 2026
5-12 Weeks
Functional Program Design in Scala (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Functional Program Design in Scala (Coursera)

In this course you will learn how to apply the functional programming style in the design of larger applications. You'll get to know important new functional programming concepts, from lazy evaluation to structuring your libraries using monads. We'll work on larger and more involved examples, from state space exploration to random testing to discrete circuit simulators. You’ll also learn some best practices on how to write good Scala code in the real world.

Jun 22nd 2026
5-12 Weeks
Cloud Computing Concepts, Part 1 (Coursera) Coursera
University of Illinois at Urbana-Champaign

Cloud Computing Concepts, Part 1 (Coursera)

Cloud computing systems today, whether open-source or used inside companies, are built using a common set of core techniques, algorithms, and design philosophies—all centered around distributed systems. Learn about such fundamental distributed computing "concepts" for cloud computing. Some of these concepts include: clouds, MapReduce, key-value/NoSQL stores, classical distributed algorithms, widely-used distributed algorithms, scalability, trending areas, and much, much more!

Jun 22nd 2026
5-12 Weeks
Comparing Genes, Proteins, and Genomes (Bioinformatics III) (Coursera) Coursera
University of California, San Diego

Comparing Genes, Proteins, and Genomes (Bioinformatics III) (Coursera)

Once we have sequenced genomes in the previous course, we would like to compare them to determine how species have evolved and what makes them different. In the first half of the course, we will compare two short biological sequences, such as genes (i.e., short sequences of DNA) or proteins. We will encounter a powerful algorithmic tool called dynamic programming that will help us determine the number of mutations that have separated the two genes/proteins.

Jun 22nd 2026
5-12 Weeks
Interactivity with JavaScript (Coursera) Coursera
University of Michigan

Interactivity with JavaScript (Coursera)

If you want to take your website to the next level, the ability to incorporate interactivity is a must. But adding some of these types of capabilities requires a stronger programming language than HTML5 or CSS3, and JavaScript can provide just what you need. With just a basic understanding of the language, you can create a page that will react to common events such as page loads, mouse clicks & movements, and even keyboard input.

Jun 22nd 2026
4 Weeks