Massachusetts Institute of Technology
Dept. of Electrical Engineering and Computer Science
Spring Semester, 2008
6.01: Introduction to EECS 1

Software

In this course, we'll be using the Python programming language. We'll also be using a Python package called soar to control the robots, both the real ones and in simulation. Soar was written for EECS1 by Michael Haimes with help from Ross Glashan. It's originally inspired by a platform called PyRo that's used for robot programming at several schools.

You'll also need an editor and/or development environment for writing and debugging your programs. This term, we will be using IDLE, a programming environment specially designed for Python programming and included with the Python distribution. It's also possible to use emacs for homework, if you prefer, although we'd like you to use IDLE in lab. If you do use Emacs, we suggest that you use the latest version, Emacs 22, which comes with built-in support for Python programming. IDLE is easier to use if all you want to do is to write and run simple Python programs for this class. Emacs is a powerful real-time display editor that you can use for Python and lots of other text-processing and programming applications.

The course has its own laptops for you to work with in lab, that hook to the robots. In order to do the homework, you'll need to have access to a machine (yours or someone else's) that has Python, soar, and the IDLE installed. Or you can use Athena.

Installing the 6.01 software on your own computer

You can use use GNU/Linux, Windows, or MacOS, as you prefer. The installation instructions are different for the different operating systems. Please look at the instructions even if you (think you) have all this installed already, so that you have the correct versions of the software. In particular, make sure you are running Python version 2.5 — not 2.3 or 2.4 or 3.0:

There are a lot of steps to the software installation, so be sure to ask the staff for help if you have any questions at all.

Using the 6.01 software on Athena

You can use Athena for doing the homework in 6.01 if you don't have your own computer (or if you'd just rather use Athena anyway). See the instructions for using the 6.01 software on Athena.

Using the 6.01 lab laptops and getting the lab software

You should log in to the lab laptops using your Athena username and password; they should behave as Athena machines. When you want to first set up your Athena account for 6.01 (eg, during the first lab), you should run the following command on one of the lab laptops or on any Athena machine (including Athena dialups such as athena.dialup.mit.edu or linux.mit.edu):

athrun 6.01 setup
This command will create the Desktop/6.01 directory in your Athena home directory and checkout the 6.01 software repository into that directory. Your Desktop/6.01 directory will include the "lab1" subdirectory (which will contain the files associated with that lab including all the files mentioned in the handouts). You only need to run the above command once ever -- when you subsequently log in on any lab laptop, the 6.01 directory will already exist on the Desktop.

Once you've done the setup, you can pull the latest files from the course locker into your Desktop/6.01 directory by running the following command on any Athena machine or on the course laptops:

athrun 6.01 update
This command will perform an svn up (but not an svn revert) on your Desktop/6.01 directory, so you will get an any newly released software but you will not lose any changes that you have made to already released files. It will mostly be useful for pulling in entirely new lab code distributed by the staff.