EECS 111: Fundamentals of Computer Programming I

Quarter Offered

Fall : 12:00-12:50 MWF ; Horswill
Winter : 11-11:50 MWF ; Sood
Spring : 2-3:20 TuTh ; Tov


This is an introductory course on the fundamentals of computer programming. I see this class as an opportunity for you, the student, to see what computer programming is all about and (more importantly) to see whether you want to spend the next few years doing more of it. This course will include weekly programming projects, readings, a midterm, and final examinations. Class participation is not optional.

  • This course is approved for Weinberg Area II (Formal Studies) distribution credit
  • This course is a required Core course in the CS curriculum in McCormick and Weinberg
  • Can be taken as EECS 395 during Fall 15'

NOTE: For spring 2016, EECS 111 will be using physics and mathematics as domains for our programs. The following prerequisites will be assumed (but not enforced):

 - Physics 125-1, 135-1, or equivalent proficiency with Newtonian mechanics

 - Math 230, 281-1, or equivalent proficiency with multivariable calculus

 - Math 250, 281-2, or equivalent proficiency with differential equations

If you are not comfortable with those subjects, we strongly advise taking EECS 111 in the fall or winter instead. If you are unsure about your preparation, please contact the instructor.

REQUIRED TEXTBOOK: Abelson, Sussman, and Sussman, Structure and Interpretation of Computer Programs, MIT Press, Second Edition (1996)

COURSE INSTRUCTOR: Ian Horswill (Fall), Sara Owsley Sood (Winter), TBA (Spring)




  • 45% About eight (weekly) homework assignments
  • 20% One midterm exam
  • 35% One final exam

Please Note: Fall EECS 395 Section (Honors) meets Friday's 4-5pm, in addition to Monday's, Wednesday's, & Friday's 12:00-12:50 (four days a week plus the discussion section). The honors section is an additional meeting on top of the normal 111 meetings).