Python
There is extensive Python documentation; you can use it online or click the first link to download the documentation to your own computer. (Please do not download it to your campus account; use the online version instead.)
What to Install to Work at Home
The course software is available in the computer labs, but you can also install the software on your own computer, so that you can work from home. If you work at home, make sure to test your code on your account on the CDF system, as we will do marking there.
Required Software
The following packages are used in this course. If you wish you may install the software on your own computer, you will need all three packages (Python, Wing (or an IDE of your choice), and PyGraphics). PyGraphics requires several packages that you should also install; its wiki page will tell you which ones you need for your system. If you run into problems, post your questions and any error messages on the course discussion board. However, the course staff (instructor, TAs, and system administrators) will not be able to sit down and help you install the software: we are responsible for the CDF Lab, and you are responsible for your own computer.
- Python 2.7: http://www.python.org/download/releases/2.7.2/
The programming language for this course. Please do not install Python 3: we are using 2.7 because major libraries like the PIL (image support), Django and Pyramid (web frameworks), and RPy (statistical support) have not yet been updated. (Note: Install the 32-bit version, not the 64/32 or 64-bit versions. PIL, which is required for PyGraphics, does not work well with 64-bit Python.) - Wing 101: http://wingware.com/downloads/wingide-101
The IDE (integrated development environment) used in lecture. An IDE lets you edit Python source code files, run your code, and debug it in one window. You may wish to use a different IDE -- IDLE, PyCharm, Wing Pro, NetBeans, or Eclipse -- but Wing provides everything we need in CSC108. - PyGraphics: http://packages.python.org/PyGraphics/install.html
The media module used in lecture for manipulating sounds and pictures.