M, W, F 12:20-1:10
in Upson 142

CS 1133: Short Course in Python

Spring 2020

Course Materials

Text (Optional)

Historically, the main text for CS1133 was Think Python: How to Think Like a Computer Scientist, Second Edition, by Allen B. Downey. While we still refer to this text, we have become less enamored with it over the years. It presents material in a fundamentally different order than we do in this course, and it is really only good as a supplementary reference.

Instead of requiring a textbook that you will never use, I recommend that you get the PDF or eBook, which is available free online.You can download it from Green Tree Press. If you absolutely need a paper copy, you can buy one from Amazon.

Other Python texts

You may use any other text that you wish as a reference. Here is a sample of conventional texts:

  • Campbell, Gries, Montojo, and Wilson, Practical Programming: An Introduction to Computer Science Using Python 3. The Pragmatic Bookshelf, 2013.

  • Zelle, Python Programming: An Introduction to Computer Science, 3rd ed.. Franklin, Beedle & Assoc., 2016.

  • Guttag, Introduction to Computation and Programming Using Python. MIT Press, 2016.


We do not require the use of GitHub for this course, as it is a bit too advanced for many students. However, we know that some of you will use it anyway, particularly for sharing assignment code with your partner. Because of the new academic integrity policy, we need to put strict rules on its use.

The free accounts that you get from github.com are publicly viewable. That means anyone can see them, and anyone can download code from them. This means that if you put your code on GitHub, and another student downloads it, you will be held liable for cheating, even though you may have no idea who this other person is. In fact, any code we find in publicly visibile in GitHub will constitute and academic integrity violation whether or not anyone copies it.

If you want to use a code repository, you should use the official Cornell GitHub instead. Any projects that you put here will be protected and cannot be accessed by other students. You will not be held liable for security leaks that are not your fault.

We know that this is inconvenient for students that would like to show code to prospective employers. However, there has been enough abuse of this in recent years that we have had to take a stricter approach to GitHub. We recommend that you share your code through a private repository or else work on another Python project in your own time.

Course Material Authors: D. Gries, L. Lee, S. Marschner, & W. White (over the years)