Carnegie Mellon University
These notes are designed for intro/intermediate programmers (specifically, students who have completed about 8-to-10 weeks of 15-110 at CMU). The notes are adapted from two earlier sets of notes, and may contain some peculiarities due to this history.
Note that this design for Tetris is somewhat simplified for these purposes, though the end result is indeed a reasonably functional game of Tetris. Also, note that the Python code accompanying these notes is not fully tested and is not necessarily designed to exacting standards.
Finally: the techniques used to create this game can be used to create many other popular arcade games. Have fun!