Writing Research PapersFor Computer Science
Steve BlackburnResearch School of Computer ScienceAustralian National University
2
Why write?
Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
3Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
The Moral Imperative
Why Write?
Who is paying you, anyway?
“Scientists have a moral obligation to make their findings known to other scientists, and to professionals […]”
Guidelines for Publication Ethics at the Karolinska Institute, 2002
“[…] the obligation to publish research results can be regarded both as moral and epistemic standards”
Matthias Adam, in Science and Social: Knowledge, Epistemic Demands and Social Values, University of Pittsburgh Press, 2009
“communicate this knowledge”
“As scientist and as thinkers, we share a moral imperative to communicate this knowledge, with each other, across disciplinary boundaries, and outside the academic and research spheres.”
Kate Neville in The Science Creative Quarterly, Issue 6, 2011
4Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Where to Publish
Why Write?
Communicate effectively
• Think seriously about the venue– Discus this early on in the project– Ideal venue will be sub-discipline-specific
• Maximize impact– Aim high– Don’t fear rejection
• Fear of failure retards creativity and impact
5
Effective WritingTop Down
Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
6Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Know Your Audience
• What does this audience care about?• What does this audience already know?
• Think about the venue• Think about the readership• Think about the reviewers
– Look at the program committee composition
(It is probably not your mother)
Effective Writing
7Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Know Your Message
• What have you done…– that is interesting (to your audience, not you!)
– that is novel– that advances the field?– that forms a single, coherent story?
• Important v necessary– Include all that is necessary, but the focus must
remain on the important– Details of methodology etc must be reported, but in a
way that does not dominate nor detract from the focus
Don’t start writing until you have a single, clear, coherent story
Effective Writing
8Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
The Title
• It is the first handle readers have– Succinct– Meaningful– If you’re lucky, memorable
Make it meaningful and engaging
Effective Writing
9Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
The Abstract
• This is the story of your work– Write v1.0 the day you start the project– Iterate
If you can’t capture your work in the modality of an abstract you probably don’t know what you’re doing and/or don’t have enough perspective.
Many people will only read your abstract...
Effective Writing
10Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
What’s In An Abstract?
With thanks to Kathryn McKinley, University of Texas at Austin & Microsoft Research
Effective Writing
ContributionResult
“This paper introduces a new context-sensitive and control-flow sensitive pointer alias analysis. We show that it is one hundred times faster than the prior state of the art.”
11With thanks to Kathryn McKinley, University of Texas at Austin & Microsoft Research
Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Effective Writing
Problem statementContribution
ResultMeaning
“Precise flow and context sensitive pointer analysis is currently limited to programs with 100,000 or fewer lines of code. Pointer analysis clients, such as verification and testing, are consequently limited to small programs because they need high precision.”
“Precise flow and context sensitive pointer analysis is currently limited to programs with 100,000 or fewer lines of code. Pointer analysis clients, such as verification and testing, are consequently limited to small programs because they need high precision. This paper introduces a new context-sensitive and control-flow sensitive pointer alias analysis.”
“Precise flow and context sensitive pointer analysis is currently limited to programs with 100,000 or fewer lines of code. Pointer analysis clients, such as verification and testing, are consequently limited to small programs because they need high precision. This paper introduces a new context-sensitive and control-flow sensitive pointer alias analysis. We show that it is one hundred times faster than prior algorithms and can analyze programs up to 1 million lines of code.”
“Precise flow and context sensitive pointer analysis is currently limited to programs with 100,000 or fewer lines of code. Pointer analysis clients, such as verification and testing, are consequently limited to small programs because they need high precision. This paper introduces a new context-sensitive and control-flow sensitive pointer alias analysis. We show that it is one hundred times faster than prior algorithms and can analyze programs up to 1 million lines of code. Future work should investigate its effects on the precision and scalability of client analysis.”
12Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Effective Writing
Problem statementContribution
ResultMeaning
“Precise flow and context sensitive pointer analysis is currently limited to programs with 100,000 or fewer lines of code. Pointer analysis clients, such as verification and testing, are consequently limited to small programs because they need high precision. This paper introduces a new context-sensitive and control-flow sensitive pointer alias analysis. Our key insight is that many pointers have the same aliases, and we show how to find and exploit this equivalence. We show that it is one hundred times faster than prior algorithms and can analyze programs up to 1 million lines of code. Future work should investigate its effects on the precision and scalability of client analysis.”
… and be precise
With thanks to Kathryn McKinley, University of Texas at Austin & Microsoft Research
13Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Improving an abstractInterview the writer
Effective Writing
With thanks to Kathryn McKinley, University of Texas at Austin & Microsoft Research
• Understand– Problem statement– Contribution– Result– Meaning
14Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
The Rest of the PaperWriters (even technical ones) are story tellers
Effective Writing
With thanks to Kathryn McKinley, University of Texas at Austin & Microsoft Research
• Tell a single coherent story• Link and organize ideas
– Recursively at each level of the document• Emphasis
– Ensure your story shines through– De-emphasize elements that are necessary
but not key to the story
15Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Recursive structureWe’re computer scientists, after all
Effective Writing
With thanks to Kathryn McKinley, University of Texas at Austin & Microsoft Research
papersection
paragraphsentence
• Containers (paper, section, paragraph)
– Structure• Introduction, discussion, (conclusion)
• Sentences– Structure
• Special rules for structuring sentences
• Linkage of ideas– Story has flow– Structure reflects flow
16Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
The Paper
Effective Writing
With thanks to Kathryn McKinley, University of Texas at Austin & Microsoft Research
introduction
• Containers (paper, section, paragraph)
– Structure• Introduction, discussion, (conclusion)
• Sentences– Structure
• Special rules for structuring sentences
• Linkage of ideas– Story has flow– Structure reflects flow
discussion
conclusion
17Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Sections
Effective Writing
With thanks to Kathryn McKinley, University of Texas at Austin & Microsoft Research
introduction
• Structure– Composed of paragraphs (or
subsections)
– Introduction, discussion, (conclusion)
• Section title– Should be consistent with key idea
reflected in first paragraph
discussion
conclusion
18Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Sentences
Effective Writing
With thanks to Kathryn McKinley, University of Texas at Austin & Microsoft Research
• Familiar ideas• Action• New ideas
subjectverb
object
19
MechanicsA Laundry List
Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
20Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Have a Template
• Use a template directory complete with defaults– Include the common LaTeX practices you use– Include boilerplate for grant acknowlegments– Include a bibliography
• Use a standard naming scheme– My lab uses keyword-venue-year
• rc-ismm-2012, yinyang-isca-2012, etc
Can be invaluable
Mechanics
21Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Version Control
• Why use version control?– Versioning (especially for thesis!)– Concurrent writing
• Use LaTeX and an SCM (svn, git, hg, etc)– Break document into multiple files– Put tables etc. into separate files
• Use the cloud– Google docs etc.– Write concurrently, leave comments, versions
Writing is a team sport
Mechanics
22Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Author Order
• Understand the convention• Ensure roles are clear• Discuss it explicitly
Not something to leave to the last minute
Mechanics
23Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Spelling, Grammar & Style
• Eliminate passive voice whenever possible– Passivity introduces ambiguity, the antithesis
of good science writing• Practice, practice, practice, practice
• Use available tools• Read• Invite critique
Writing errors distract the reviewer / reader
Mechanics
Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Spelling, Grammar & StyleCan be fun… …no, really.
Mechanics
24
25Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Captions
• Make figure + caption stand-alone– Capture the insight and
meaning in the caption if possible
– Capture only most vital methodology in caption
Many readers will only look at the pictures…
Mechanics
26Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Citations and Bibliography
• Take care to cite the appropriate work.– Gratuitous citations do not impress– Incorrect citations irritate– Missed citations infuriate
• Take care with bib entries– Include the DOI where possible– Check the citation. Is it correct?
Take special care when acknowledging prior work
Mechanics
27Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Feedback & Proofreading
• You will become blind to your failings– Loss of perspective– Failure to explain key predicates– Familiarity of own writing style– Blindness to typos, omissions
• Get friends to proofread– Be open to critique– Cultivate a culture of honesty and directness
Can be invaluable
Mechanics
28Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Rebuttal
• Identify key points, factor them out– Points for and points against– Ensure you address all major questions– Ensure you rebut all major concerns
• Be succinct• Be polite• Be direct
Use it wisely
Mechanics
29Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Credibility
• Is your work reproducible?– Does the paper contain enough information?
• Provide full proofs– Publish as an abstract or tech report
• Publish raw data– Put it on your web page
What’s the credibility of this work?
Mechanics
30Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Iterate
• Learning to write well takes time and practice• You cannot leave it to the last minute• I recommend a top-down approach
– Abstract– Structure– Iteratively fill in content
Start writing early & iterate
Mechanics
31Steve Blackburn | Writing Research Papers | PhD Workshop May 2012
Questions?
Mechanics