This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python programming language.
Let's start with the strategic goals of this course:
6.00SC can be summarized with these six major topics or objectives:
6.00 is designed to help you become skillful at making the computer do what you want it to do. Once you acquire this skill, your first instinct when confronted with many tasks will be to write a program to do the task for you. Said another way, we want to help you learn to apply computational modes of thought to frame problems, and to guide the process of deducing information in a computational manner.
This means that the primary knowledge you will take away from this course is the art of computational problem solving. Unlike many introductory level courses, having an ability to memorize facts will be of little help in 6.00. This course is about learning to solve problems, not learning facts. (This, by the way, is exactly why all exams are open book.)
You can install the 6.00 software on your personal computer if your operating system is GNU/Linux, Windows (7/XP), or MacOS X. In all cases, you will need Python version 2.5.4 (any 2.5.x or 2.6.x version of Python will work, but 3.0 versions are NOT compatible). Below are direct links to the most common Python installers:
Download and install: Windows Installer
Mac OS X:
Download and install: Mac OS X Installer
Warning: On the Python homepage, the latest version available for download is actually 3.0. Do not install this! This version is not backwards compatible with the code that you'll be writing in this course (for example, you have to type print("test") instead of print "test"). Instead, be sure to download the version listed above.