Getting set up for CS 2120

We’re going to be learning the programming language Python version 2.7, which means you need a Python interpreter on your computer. By far the easiest option is download the (completely free) Academic version of the Anaconda Scientific Python Distribution (Anaconda, for short):

The advantage of Anaconda is that it pulls together Python and a whole bunch of other packages all into one place. There are versions for Windows, OS X and Linux, all of which contain everything you’ll need for this course (and a tonne more).

  • Download the free base version of Anaconda
  • Install it on your computer (detailed instructions in the next link)

  • Have a quick look at the Anaconda Quick Start Guide


Want to write Python code from anywhere you can get access to a webbrowser? No messy installation. No Fuss. Just code. Check this out:

You have to register, but the free option does more than enough for what you’ll likely need. The only downside is that you need an internet connection and if the PythonAnywhere servers choke, you’re out of luck until they’re back up.

Want to hack Python code on your iPhone, iPod, iPad? Python for iOS has you covered. Android user? Try SL4A. Note that due to the nature of mobile devices, these interpreters will be more limited than Anaconda. They’re still plenty powerful enough to practice the basics while you’re waiting for a bus. You will, however, need tiny fingers.

Don’t bother with this part unless you’re hardcore – for real, don’t

If you’re feeling frisky, you’re also more than welcome to roll your own Python environment from scratch. Start by downloading and installing a Python interpreter from

This will give you a bare-bones plain Python environment. During the course, we may make use of libraries that do fancy things like plotting graphics. If you install Anaconda, all of those libraries are included. If you’re rolling your own, you’ll have to install the libraries yourself by hand. The most straightforward way to do this is with easy_install, which is pretty easy. Except when it isn’t.


The advantage of building your environment yourself, by hand, is that you’ll learn a bunch of interesting auxilliary skills beyond just the programming being taught in the course. If you end up wanting to use Python in your own research, you might need specialized libraries that aren’t in Anaconda, so these skills could be useful. The disadvantage is that you may spend a whole bunch of time fighting to get packages installed, when you could’ve used that time to learn more about programming.