Glance over references (noting which ones you’ve read before)
Should be able to answer the Five C’s (see below)
Most folks only take one pass, so take care with your headings, abstract, intro, and conclusion
Grasp the paper’s content
Should take up to an hour
At the end of this pass, you should be able to summarize the main thrust – with supporting details – to someone else
Read with greater care, but ignore details
Take notes in the margins as you go along
Be critical when reviewing figures, diagrams, illustrations
Note which relevant references you haven’t read before
If you didn’t grok the paper after this pass, you might be tired; the paper might not have been written well; or you might need more background information to make the most of the paper’s contributions
Dive deep into the details
May take four to five hours for the beginner, an hour for an experienced reader
Making the same assumptions as the authors, attempt to recreate their work
At the end of it, you should be able to explain the details of the paper from memory
You should also have determined hidden assumptions, missing citations, and potential issues
Five C’s
Category
Context
Correctness
Contributions
Clarity
Doing a literature survey
(Maybe only one step: finding an existing survey when doing research using Google Scholar or CiteSeer)
Start searching Google Scholar or CiteSeer using some well-chosen keywords
Identify three to five recent papers on the subject at hand
Do one pass on each paper, then check their related sections
Determine the key researchers and papers by finding the most-cited ones across the papers’ related works
Go to those researchers’ websites and find to which conferences they’ve submitted papers recently
Those conferences’ websites will have links to the most recent top papers in the field
Make two passes through these papers
(optional) If these papers cite a paper you haven’t already collected, go get it, and repeat these steps.
Upcoming sessions
Dynamo: Amazon’s Highly Available Key-value Store
Communicating Sequential Processes
Why Programming is a good medium for expressing poorly understood and sloppily-formulated ideas