Department of Computer Science
Middlebury College
CS 150 - Computing for the Sciences
Fall 2012
instructor: Dave Kauchak
e-mail: [first_initial][last_name]@middlebury.edu
office hours: MBH 635
M/W 2:45-3:45pm
T 2-3pm
Th 1-2pm
and by appointment
time:
A: MWF 11:15am-12:05
B: MWF 1:45-2:35pm
location:
A: MW - MBH 219, F - MBH 505
B: MWF - MBH 505
web page: http://www.cs.middlebury.edu/~dkauchak/classes/cs150/ (or go/cs150)
Lab tutor schedule
Computer lab help:
For computer issues in the lab (MBH 505) e-mail cshelp @ middlebury edu.
textbook:
- Required: Practical Programming: An Introduction to Computer Science Using Python. Jennifer Campbell, Paul Gries, Jason Montojo and Greg Wilson. The book is available at the bookstore, online or you can buy an electronic version from the publisher.
- Optional: How to Think Like a Computer Scientist: Learning with Python. Allen Downey, Jeff Elkner, and Chris Meyers. It is available online for free.
general information:
Computer Science 150 is an introduction to the field of computer science geared towards students interested in the sciences. By the end of this course you should have a good basic understanding of how to develop (design, code, and debug) medium-sized programs in Python and will have a working understanding of large data analysis and some of the tools used in scientific computation including Matlab and R.
We do not assume you have had any previous programming experience for this course.
If you're not sure if this class is appropriate for you, I'm happy to discuss it with you.
administrivia
digital submission
Announcements
Schedule
Note: This is a tentative schedule and is subject to change
Date | Topic | Reading | Problems | Other |
9/10 | admin, intro to CS and Python | Ch 1-1.2, 2-2.3 | | |
9/12 | variables, comments, functions | Ch 2.4-2.9 | set 1 - solutions | Lab prep 1 |
9/16 | Lab 1 | | | |
9/17 | functions, scope | Ch. 3 | set 2 - solutions | |
9/19 | turtle graphics, randomness | Ch. 4-4.1 | set 3 - solutions | Lab prep 2 |
9/21 | Lab 2 | | | |
9/24 | strings and objects | Ch 4.3 | set 4 - solutions | |
9/26 | more strings | Ch 6-6.1 | set 5 - solutions | Lab prep 3 |
9/28 | Lab 3 | | | |
10/1 | conditionals | Ch 6.2-6.4 | set 6 - solutions | |
10/3 | more conditionals, while | Ch 7.2-pg. 143 | set 7 - solutions | Lab prep 4 |
10/5 | Lab 4 | | | |
10/8 | lists | Ch 5-5.5 | set 8 - solutions | |
10/10 | lists, files | Ch 5.6-5.8, 5.10-pg. 102 | set 9 - solutions | Lab prep 5 |
10/12 | Lab 5 | | | Test project 1 |
10/15 | NO CLASS | Reading catch-up | | |
10/17 | objects, midterm review sample questions | - | set 10 - solutions | |
10/19 | Lab 6 -- work session | | | |
10/22 | object references | | set 11 - solutions | |
10/24 | sets | Ch 4.2, 9.1 | <--do reading | Lab prep 7 |
10/26 | Lab 7 | | | |
10/29 | dictionaries | Ch 9.2-9.4 | set 12 - solutions | |
11/31 | matplotlib | - | set 13 - solutions | Lab prep 8 |
11/2 | Lab 8 | | | |
11/5 | modules | Ch 12.1 | set 14 - solutions | |
11/7 | Terminal, files, URLs videos | Ch 8 | set 15 - solutions | Lab prep 9 |
11/9 | Lab 9 | | | |
11/12 | recursion | Ch 4.9, 4.11 from "Optional" book linked above | set 16 - solutions | |
11/14 | more recursion | - | set 17 - solutions | Lab prep 10 |
11/16 | Lab 10 | | | |
11/19 | R | Skim over R basics (original here) | set 18 - solutions | Test project 2 |
11/21 | NO CLASS | | | |
11/23 | NO CLASS | | | |
11/26 | matlab basics | | set 19 - solutions | |
11/28 | matlab programs | | Finish matlab basics through section 5 | Lab prep 11 |
11/30 | Lab 11 | | | |
12/3 | sorting | Ch 11.3-11.5 | set 20 - solutions | |
12/5 | representing numbers | Ch 10 | set 21 - solutions | |
12/7 | final exam topics sample questions | | | |
Midterm (both sections):
Thursday, October 18 7:30-9:30pm in MBH 220
Final exam:
A: Wednesday, December 12 7-10pm in MBH 219
B: Saturday, December 15 2-5pm in MBH 505
Resources