Resources for COMP492

Class 1: January 22

Discussion of syllabus. Course highlights.

Cloud computing lab (see the assignments web page).

Class 2: January 29

Project work day.

Class 3: February 5

Design pattern lab (see the assignments web page).

Class 4: February 12

  1. Nick's discussion on open-source software. Required reading is:
  2. Qi's discussion on privacy. Required readings for this discussion are posted on Qi's senior seminar web page.

Class 5: February 19

  1. Danfei's discussion on Ethics of Military Robots. Required readings for this discussion are posted on Danfei's senior seminar web page.
  2. Lally's discussion on computer reliability. Required readings for this discussion are posted on Lally's senior seminar web page.

Class 6: February 26

No class.

Class 7: March 5

  1. Chris Pianko's discussion on antitrust cases in the technology industry. Required readings for this discussion are posted on Chris's senior seminar web page.
  2. Blake's discussion on quantum computing. Required readings are:

Class 8: March 19

  1. Christopher Melusky's discussion on cloud computing. Required readings for this discussion are posted on Chris's senior seminar web page.
  2. Instructor's discussion: trust and computer systems. The required reading is the classic paper by Ken Thompson, entitled Reflections on trusting trust. This paper was actually the lecture given by Ken Thompson when he accepted the Turing Award. It was also published in the Communications of the ACM, August 1984, Volume 27, number 8, pages 761--763. A copy of this copyrighted article is available on Moodle. A full copy of the program presented by Thompson in Figure 1 of the paper is also available: thompson-program.c.

Class 9: March 26

Project work day.

At the start of class, please take the midsemester survey.

Class 10: April 2

This class will be divided into two separate discussions. The first discussion is on electronic and online voting; the second discussion is on automation, globalization, and the digital divide.

Required reading: Quinn, sections 6.5, 9.1, 9.2, 9.4, and 9.5.

Class 11: April 9

Project work day.

Class 12: Monday, April 15

Present posters at Dickinson Science Symposium, 4:30pm. Note this takes place on a Monday. There is no class in our regular Tuesday timeslot this week.

Class 13: April 23

In this class, we discuss two classic papers, both of which are available on Moodle. The papers are:

  1. Dijkstra, Edsger W., [Letter to the editor] Go to statement considered harmful. Communications of the ACM, Volume 11, Issue 3, March 1968, pages 147-148.
  2. R. Karp, Reducibility among combinatorial problems, in R. Miller and J. Thatcher (eds), Complexity of Computer Computations, Plenum Press, 1972, pp85-104.
You are required to read all of the Dijkstra, but only sections 1 and 4 of the Karp (and within section 4, don't read the whole proof of the main theorem: instead, pick just one of the 21 20 reductions in the proof, and be prepared to explain that one reduction to the rest of the class).

Class 14: April 30

Project work day and exit interviews.

Wednesday, May 8

Computer Science Senior Symposium, 2:00pm.