New Computer Science Undergraduate Curriculum

I chaired the committee that developed the new CS undergraduate curriculum, which comes into effect in fall, 2007, for new students. You can read about the new curriculum in detail.

Here is the curriculum in a nutshell: Background, Core, Breadth, Depth, Project.

Seminars and Reading Groups

  • (new!)Graduate Research Seminar in Computer Science and Computer Engineering

  • (old) Joint CS/ECE Distinguished Lecture Series in Systems and Architecture

  • (old) Systems Reading Group

  • (old)Graduate Thesis Seminar

  • Current Courses

  • EECS 101: "CS 101": Introduction to Computer Science For Everyone (Spring 2007, Spring 2008, Spring 2009, Spring 2010, Spring 2011)
    This course is a non-programming introduction to the field of computer science suitable for freshmen and non-majors who would like to understand the scope of our dynamic field, its key intellectual questions, and its impact on the worlds of technology, business, politics, and law.
  • This course is a required Core course in the CS curriculum
  • This course satisfies the Weinberg Area III (Social and Behavioral Sciences) Distribution
  • EECS 395/495: Human-centered Approaches to Computer Systems Problems (Winter 2007)
    This course will examine how ideas from HCI and human-centered computing, which are almost always used in the context of applications, can be applied in the context of systems. If you'd like to learn more about this concept, please read this paper
  • This course can satisfy the Systems or Interfaces Depth Areas in the CS curriculum with a petition
  • EECS 339: Introduction to Databases (Fall 2003, Fall 2004, Fall 2005, Fall 2006, Fall 2007, Fall 2010)
  • This course is in the Systems Breadth Area in the CS curriculum
  • This course is in the Systems and Security Depth Areas in the CS curriculum
  • This course is on the project course list
  • EECS 213: Introduction to Computer Systems (Fall 2001, Fall 2002, Spring 2005, Fall 2008, Fall 2009)
  • This course is a required Core course in the CS curriculum.
  • EECS 340: Introduction to Networking (Fall 2000, Winter 2002, Winter 2003)
  • This course is in the Systems Breadth Area in the CS curriculum
  • This course is in the Systems and Security Depth Areas in the CS curriculum
  • This course is on the project course list
  • EECS 397: Introduction to Real-time Systems (with Robert Dick) (Winter 2005)
  • This course is in the Systems Breadth Area in the CS curriculum
  • This course is in the Systems Depth Area in the CS curriculum
  • This course is on the project course list
  • EECS 442: Dynamic Behavior of Applications, Hosts, and Networks (Winter 2001, Spring 2002, Spring 2003, Spring 2006)
  • This course is in the Systems Breadth Area in the CS curriculum
  • This course is in the Systems Depth Area in the CS curriculum
  • This course is on the project course list
  • EECS 441: Resource Virtualization (Winter 2004, Winter, 2006, Winter 2007, Winter 2009,Winter 2010, Winter 2011)
  • This course is in the Systems Breadth Area in the CS curriculum
  • This course is in the Systems Depth Area in the CS curriculum
  • This course is on the project course list
  • Short Course on Resource Virtualization and the Enterprise (Winter 2007, Spring 2010)
  • Future courses

  • Performance Analysis

  • Language- and Compiler-oriented Thinking

  • Assorted Videos

  • Introduction to Unix (Peter Dinda) (Real, Part 1, Real, Part 2)
  • Introduction to CVS (Peter Dinda) (Real)
  • Java Servlets and Server Pages (Andrew Simpson, from CS339) (Real)
  • PHP for Active Content (David Choffnes, from CS339) (Real)

  • Peter Dinda
    Last modified: Sun Jan 2 18:01:40 CST 2011