EECS 339: Introduction to Databases, Fall 2007

Instructor:Peter A. Dinda (Office Hours: Thursdays 2-4)
Teaching Assistant:Karl Deng (Office Hours: TBD)
Time:Fall 2007, MWF 10-10:50am
Location:Tech M166
Recitation Section:Thursdays 6pm (Weekly), Tech L158
Course number:EECS 339
Enrollment Limit:30

Consider taking (and recommending to your friends in EECS, other departments, and other schools) the following new courses taught by me.
  • Winter quarter: EECS 395/495: Human-centered Approaches to Computer Systems Problems
    Systems meets HCI
    Undergraduates welcome
  • Spring quarter: EECS 101: An Introduction to Computer Science for Everyone
    The big picture
    A required course in the CS major in McCormick and Weinberg (2007+)
    An Area III (Social and Behavioral Sciences) Distribution course in Weinberg
  • If you buy your books through, a Northwestern student-run web site, a portion of your purchase price will go to charity.


    Note that we will not use CMS/Blackboard for anything.
  • Newsgroup: We will be using the Google Group CS 339 - Northwestern University for simple, persistent, and searchable communication among everyone in the class. This is where you want to go to post questions about lecture, homework, and programming projects. You need to sign up to access the group, which you can do here:
    Subscribe to CS 339 - Northwestern University
    Visit this group
  • Mailing List: The course is associated with your netid and you can spam the course using SNAP. Please don't unless absolutely necessary.
  • General Handouts

  • Syllabus
  • Using Oracle in the TLAB and VLAB Environments
  • Perl in a Nutshell
  • TLAB: The Teaching Lab
    If you do not already have a TLAB Linux and Windows account, you should get one now. You will find the TLAB a convenient place to work, especially with partners.
    New: TLAB is now accessible with your Wildcard
  • EECS 339 Virtual Machine
    You will be given an account on a server virtual machine configured for use in this class. We will talk more about this in class and email.
  • VLAB: The Virtual Lab
    If you would like to do a project that requires you to build a custom server, you can ask us for a VLAB account to create your own virtual machine.
  • Using Unix Remotely Without The Excruciating Pain
  • Projects

  • Microblog (3 weeks) (pdf)
    Live Project Sites Announced Privately
  • Portfolio Manager (4 weeks) (pdf)
    This project is new for 2007, so expectations may change based on how things go
    Projects will be accessible here after they are handed in
  • Btrees (3 weeks) (pdf)
    This project has been updated due to the reduced time.
  • Homeworks

  • HW 1: Entity-Relationship data model (pdf; out: 10/15, in: 10/24)
  • HW 2: Relational data model (pdf; out: 10/24, in: 11/2)
  • HW 3: Relational algebra (pdf; out: 11/14, in: 11/30
  • Exams

  • Midterm (Thursday, 11/1, 6pm-8:30pm, Tech L158)
  • Final (Final exam slot, not cummulative)
  • Useful Videos/Slides

  • Introduction to Unix (Peter Dinda) (video, part 1, video, part 2) (use your netid to accesss)
  • PHP for Active Content (David Choffnes) (slides, video, (code (intro.php and serveImage)) (use your netid to accesss)
  • Java Servlets and Server Pages (Andrew Simpson) (slides, video) (use your netid to accesss)
  • Introduction to CVS (Peter Dinda) (slides, Real) (use your netid to accesss)
  • Peer-to-Peer Databases Lecture (Ashish Gupta, David Huber, Jay Bruins) (slides-1, slides-2, Real) (use your netid to accesss)
  • Helpful Things

  • Comer's Ubiquitous B-Tree Paper
  • E.F. Codd's seminal paper on the relational data model
  • Phillip Greenspun's SQL For Web Nerds Book, which we will make use of early in the class.
  • A Gentle Introduction to SQL, which has tutorials and examples of the slight differences in SQL from RDBMS to RDBMS.
  • Fabian Bustamante's List of C and Unix Resources, which may help you if you are unfamiliar with getting around on Unix.
  • Johan Vromans's Perl Reference Guide
  • O'Reilly's Free Sample Chapters from their Perl Books
  • GraphViz graph visualization framework
  • SQL Fairy SQL Schema Translator and Visualizer

  • Peter Dinda
    Last modified: Sun Nov 18 13:56:09 CST 2007