CS 134 :: Williams College

Lecture Schedule & Readings

The table below gives the topic we plan to discuss in each lecture and the readings associated with each topic. In general, readings should be completed before their associated lecture.

We will add readings and revise the schedule of topics as the semester progresses, so please check this page regularly.

     Date     Topic Readings
[1] 02.02.07 Being Digital
[2] 05.02.07 Encoding in Binary
[3] 07.02.07 Providing a GUI Interface
[4] 09.02.07 Network Communication in Java
[5] 12.02.07 Huffman Codes for Text
[6] 14.02.07 Conditional Execution
[7] 19.02.07 Transmitting Binary Signals
[8] 21.02.07 Processing Strings in Java
[9] 23.02.07 Iteration
  • Looping, from Introduction to Java and Software Design by Nell B. Dale, Chip Weems, and Mark R. Headington (We have "annotated" this reading with a few notes to guide you around aspects of Java it presents that we will not use in our course.)
[10] 26.02.07 Transmission Delays and Framing
[11] 28.02.07 Java Class Definitions
[12] 02.03.07 Java Class Definitions
[13] 05.03.07 Ethernet Operation
  • §1 through §5 of Ethernet: distributed packet switching for local computer networks by Robert M. Metcalfe and David R. Boggs, Communications of the ACM, Volume 19, Issue 7, pp. 395 - 404 (July 1976).
    A copy of this paper can be found at the back of the Understanding Digital Communications section of the course packet, or you can obtain a copy by clicking on the "Full Text" link on the page that appears when you click on the link above.
  • §2.1 and 2.2 of Chapter 2, Ethernet Frame Structure from the TechFest Ethernet Technical Summary
  • §3.1 of Chapter 3, Ethernet Media Access Control from the TechFest Ethernet Technical Summary
[14] 07.03.07 Recursive Class Definitions No readings
[15] 09.03.07 Recursive Class Definitions No readings
[16] 12.03.07 Ethernet Analysis
[17] 14.03.07 Ethernet Analysis
[18] 15.03.07 Midterm Exam at 8PM
[19] 02.04.07 Switched Networks
[20] 04.04.07 Arrays & Image Manipulation
[21] 06.04.07 Arrays & Image Manipulation
[22] 09.04.07 Internetworking
[23] 11.04.07 Arrays & Image Compression
[24] 13.04.07 Arrays & Image Compression
[25] 16.04.07 IP Addressing, Forwarding, and Configuration
[26] 18.04.07 Routing Algorithms
[27] 20.04.07 HTTP, HTML & Server Programming
[28] 23.04.07 HTTP, HTML & Server Programming
[29] 25.04.07 Transport Protocols & TCP
[30] 27.04.07 TCP Retransmission & Connections
[31] 30.04.07 Understanding Squint and Swing
[32] 02.05.07 Error Detecting Codes
[33] 04.05.07 Error Detecting Codes
[34] 07.05.07 Problem Reductions and Intractability
[35] 09.05.07 Network Address Translation
[36] 11.05.07 Network Address Translation
     17.05.07 Final Exam Sample final exam ( with solutions )