Fall 2012
Instructor:
Paul Laskowski
paul at ischool
Office Hours: Tues, Thurs 1-2, Rm 211

TA:
Kay Ashaolu
kay at ischool
Office Hours: Tues 3:30-4:30, CoLab

Meeting Time:
Tues, Thurs 2-3:30

Course Description: An introduction to computer programming using the Python language. This course will guide students through the elements that compose any programming language, including expressions, control of flow, data structures, and modularity via functions and/or objects. Covers traditional and contemporary programming paradigms including sequential, event-based, and object-oriented programming.

This course aims to prepare students for Info 206 and further courses with a programming component. The place-in exam on August 28 is designed to assess whether a student has enough knowledge of Python to take 206, or whether Info 90 would be a beneficial prerequisite. Please see Preparing for 206 (login required) for more information about the programming sequence and placement exams.

Note that this course is restricted to first-semester graduate students in the School of Information. Graduate students will receive course credit, but because this is a lower-division course, the credit may not be applied toward the master's or doctoral degree unit requirements.

Textbook: William F. Punch and Richard Enbody. The Practice of Computing Using Python, 2nd edition. Addison-Wesley, 2013.
Website: http://www.pearsonhighered.com/product?ISBN=01328055

Note: There is an e-book version of the text with a special price of $39.99 (as of July 3, 2012). Additional details are at: http://www.coursesmart.com/01328056

Collaboration Policy
Individual assignments: you can work together up to and including the development of pseudo-code and a file with all comment lines, but you must write the program itself on your own.
Group assignments: All members must contribute to writing the program

Grading
All assignments are due at 2pm on the due date.
Final grade will be based on assignments, quizzes, the final project, and class participation.