CS 496 Introduction to Graduate Studies — Fall 2019

News and InformationOverviewCalendarAssignmentsMaterials


Remember to check this regularly!



Fabián E. Bustamante
Seely Mudd #3905
+1 847 491-2745


Byungjin Jun
Seely Mudd #3416


Lectures: Mondays and Wednesdays 9:00-10AM
Seeley Mudd 3514

Professor Office Hours: By appointment

TA Office Hours: By appointment


An introduction to graduate studies in computer science at Northwestern.


Being a first-year Ph.D. student in CS/CE at Northwestern. Other Ph.D. students interested in the course, please contact the instructor.


 In compliance with Section 504 of the 1973 Rehabilitation Act and the Americans with Disabilities Act, Northwestern University is committed to providing equal access to all programming. Students with disabilities seeking accommodations are encouraged to contact the office of Services for Students with Disabilities (SSD) at +1 847 467-5530 or ssd@northwestern.edu. SSD is located in the basement of Scott Hall. Additionally, I am available to discuss disability-related needs during office hours or by appointment.

The course is an introduction to graduate studies in Computer Science at Northwestern organized for the incoming Ph.D. students. The class, held during the Fall quarter, meets twice a week for 50’ with the goal of preparing you to perform great research, regardless of area, and providing an overview of research areas in CS@NU through short presentations by CS faculty. It also offers an opportunity for CS students and faculty to get to know each other and learn the science, culture, values, and people that make CS@NU unique.

Some of the skills the course will teach you include:

  • How to read a research paper
  • How to review a research paper
  • How to write a research paper
  • How to generate ideas
  • How to give a good talk
  • How to be a great TA

This course draws heavily from Nick Feamster and Alex Gray’s CS701 course at Georgia Tech. Nick and Alex have since left Georgia Tech, but the course is still running and the guys also setup a nice blog you may want to check out.


There are a number of communication channels set up for this class:

  • We will use the course web site to post announcements related to the course. You should check this regularly for schedule changes, clarifications and corrections to assignments, and other course-related announcements.
  • We will use Piazza for class discussion. The system is highly catered to getting you help fast and efficiently from classmates, the TA, and myself. Rather than emailing questions to the teaching staff, I encourage you to post your questions on our Piazza for DS
  • There is always email for questions that would be inappropriate to post on the newsgroup/discussion-board. When using email to contact the staff please start your subject line with “cs496: helpful-comment” to ensure a prompt response.


The course is organized as a series of lecture, assignments and a small project. Lectures will be both skill-focused and research presentation.


I use a criterion-referenced method to assign your grade; in other words, your grade will be based on how well you do relative to predetermined performance levels, instead of in comparison with the rest of the class. Thus, if a test has 100 possible points, anyone with a score of 90 or greater will get an A (90-93: A-), those with scores of 80 or greater will get a B, those with scores of 70 or greater will get a C, and so on. Notice that this means that if everyone works hard and gets >93, everyone gets an A.

Total scores (between 0 and 100) will be determined, roughly, as follows:

  • Mini-assignments 15%
  • Assignments 30%
  • Project 35%
  • Class participation 20%


Late policy:

Unless otherwise indicated, homework assignments and projects are due by midnight on their due date. If you hand in an assignment late, we will take off 10% for each day (or portion thereof) it is late. Assignments that are three or more days latereceive no credit.

Cheating vs. Collaboration:

Collaboration is a really good thing and we encourage it. On the other hand, cheating is considered a very serious offense. When in doubt, remember that it’s OK to meet with colleagues, study for exams together, and discuss assignments with them. However, what you turn in must be your own (or for group projects, your group’s own) work. Copying code, solution sets, etc. from other people or any other sources is strictly prohibited.

The following is our intended calendar with topics, slides (as they become available) and reference material.

Date Topic
Wed 09/25 Introduction and overview [PDF]
Mon 09/30 Getting to know each other | Why a Ph.D.? [PDF]
Wed 10/02 Time management [PDF]
Mon 10/07 Research in CS@NU: Larry Birnbaum
Wed 10/09 Recognizing great ideas [PDF]
Mon 10/14 Research in CS@NU: Seda Ogrenci-Memik
Wed 10/16 Generating great ideas [PDF]
Mon 10/21 Research in CS@NU: Simone Campanoni
Wed 10/23 Prof. at IMC 2019
Mon 10/28 Research in CS@NU: Xiao Wang
Wed 10/30 On doing research [PDF]
Mon 11/04 Research in CS@NU: Brenna Argall
Wed 11/06 Writing a great research paper [PDF]
Mon 11/11 Research in CS@NU: Mike Horn
Wed 11/13 Surviving grad school (Panel)
Mon 11/18 Research in CS@NU: Nikos Hardavellas
Wed 11/20 Critiquing ideas [PDF]
Mon 11/25 Research in CS@NU: Josiah Hester
Wed 11/27 Giving a great research talk [PDF]
Mon 12/02 Research in CS@NU: Mike Rubenstein
Wed 12/04 You and your advisor
12/11 Finals Week



A set of small assignments ranging from writing about your goals in getting a Ph.D. to setting up a webpage.


Three assignments on reading, writing out and critiquing research ideas.

Project Proposal

The goal of the project is to get you started with research as soon as possible. Your must propose a research problem that you can finish (to the extent one “finishes” research) in your first year of grad school. As part of this class, you will have to:

  • Prepare a short presentation of your project proposal, including motivation, goals, approach and next steps.
  • Prepare an interim report, just to make sure things are moving.
  • Write a 4-page project proposal.

You can find additional details in the Canvas site. Due dates for all tasks will be made available there and in the following calendar.



We will be reading a few books and numerous short articles written by computer scientists on topics including: paper writing tips, effective oral presentation, techniques for refereeing papers, publishing your work, etc. Representative references include:

Why a Ph.D.?

  • “Ph.D. Dropout,” Anamaria Dutceac Segesten [link]
  • “Not for love or for money – why do a PhD?,” Anamaria Dutceac Segesten [link]
  • “Why Would You Want to Do a PhD?,” Richard [link]
  • “What Do Computer Science PhD Programs Teach?,” John Miller [link]

Time Management

  • Time Tactics of Very Successful People, B. Eugene Griessman, McGraw-Hill, 1994 – [At Amazon]
  • “Time Management Tactics for Academics,” Nick Feamster, 2013 – [blog]

Recognizing Great Ideas

  • “How to read a scientific paper”, Adam Ruben, Science, 1/20/2016 – Just for fun [link]
  • “How to (seriously) read a scientific paper,” Elisabeth Pain, Science, 3/21/2016 [link]
  • “How to read a paper”, S. Keshav, SIGCOMM CCR 37 (3), July 2007 – Specific for CS/Networking/Systems []link
  • “Reading a computer science research paper,” P. Fong, ACM SIGCSE Bulleting, 41 (2), June 2009 [link]
  • “Organizing Papers and References without Losing your Mind”, Jessica Y. Breland, PLOS Blog, 3/10/2017[link]

On writing

  • “How to write a great research paper”, S. Peyton Jones [link]
  • Writing for Computer Science, Third Edition, J. Zobel, Springer Publishing (2014) [link]
  • The Elements of Style (4th Edition), W. Strunk Jr., E. B. White, Pearson Publishing (2000) [link]
  • On LATEX [link]

On reviewing

  • “Thoughts on Reviewing,” Mark Allman, ACM SIGCOMM CCR, 38(2), 2008. [link]
  • “Writing reviews for systems conferences, Written for the SOSP 2007 Shadow PC,” T. Roscoe, [link]
  • “The Task of the Referee,” A.J. Smith, IEEE Computer, June 1990, pp. 65-71. [link]
  • “We are sorry to inform you …,” S. Santini, Computer, 38(12), Dec. 2005. [link]
    (A nice reminder for reviewers and authors of rejected papers)

On talks

  • “How to give a great research talk,” S. Peyton Jones, J. Launchbury, J. Hughes, SIGPLAN Notices 28(11), Nov 1993. [link]
  • “Oral Presentation Advice,” M. Hill, January 1997. [link]

On TAing and Mentoring

  • “Some Thoughts For Computer Science Teaching Assistants (and Faculty),” V. Barr, CACM, Jan. 2015. [link]
  • “Guidelines for Graduate Teaching Assistants and their Advisor,” The Graduate School, Northwestern U. [link]
  • Adviser, Teacher, Role Model, Friend On Being a Mentor to Students in Science and Engineering, National Science Academy, 1997 [link]