According to MIT EECS's roadmaps for freshman, 6.009 Programming is one of the three foundation subjects1 for Computer Science and Engineering. It is said to be a pure programming class, though various algorithms are touched upon throughtout the course both in lectures and recitations. Since it is listed as a co-requiste with 6.006, prior knowledge in algorithms is not assumed. However, this is not a introductory class in computer programming.2 To get most out of this material, the learner should either have taken an introductory course in Python or had experience in other languages.
As of now(2022/3/26), the material is available at here. (Search 6.009 on Google instead). Since this is not published under MIT OCW Project, not all contents on the website are
publicly accessible. Lecture videos, for example, are only accessible to MIT students. Also, materials for a specific semaster will be removed/updated
after that semaster ends. In order to make this educational material useful even after this current semaster ends, I have downloaded and included those pages I deem necessary to follow through the lab
sessions.
Other pages the learner may find useful are listed as follows:
To be completed...
- Lab 1 Image processing
- Lab 2 Snekoban
- Lab 3 frugal maps (Half-way, deferred)
- Lab 4 minesweeper (ON)
- Lab 5 downloader
- Lab 6 SAT solver
- Lab 7 symbolic algebra
- Lab 8 LISP I
- Lab 9 LISP II
- Lab 10 snek is you
Footnotes
-
The other two are 6.004 Computation Structures and the famous 6.006 Algorithms. ↩
-
That will be 6.0001 and 6.0002, available on ocw.mit.edu. ↩