# Don't Wait: Write
## Your idea → write paper → do research
Writing papers is a primary mechanism for doing research (not just for reporting it)
Forces us to be clear, focused
Crystallises what we don't understand
Opens the way to dialogue with others: reality check, critique, and collaboration
## Identify your key idea
**Your goal:** to convey a useful and re-usable idea
The greatest ideas are (literally) worthless if you keep them to yourself
### Do not be intimidated
**Fallacy:** you need to have a fantastic idea before you can write a paper (everyone else seems to)
Write a paper, and give a talk, about any idea, no matter how weedy and insignificant it may seem to you
You want to infect the mind of your reader with your idea, like a virus
Papers are far more durable than programs (think Mozart)
Your paper should have just one "ping": one clear, sharp idea
You may not know exactly what the ping is when you start writing; but you must know when you finish
If you have lots of ideas, write lots of papers
Many papers contain good ideas, but do not distil what they are
Make certain that the reader is in no doubt what the idea is. Be 100% explicit:
- The main idea of this paper is…
- In this section we present the main contributions of the paper
## Tell a story
**Your narrative flow:**
Imagine you are explaining at a whiteboard:
- Here is a problem
- It's an interesting problem
- Its an unsolved problem
- Here is my idea
- My idea works (details, data)
- Here's how my idea compares to other peoples approaches
## Structure (conference paper)
- **Title** (1000 readers)
- **Abstract** (4 sentences, 100 readers)
- **Introduction** (1 page, 100 readers)
- **The problem** (1 page, 10 readers) → use an example to introduce the problem
**Good example:** "Consider this program, which has an interesting bug. <brief description>. We will show an automatic technique for identifying and removing such bugs"
- **My idea** (2 pages, 10 readers)
- **The details** (5 pages, 3 readers)
- **Related work** (1-2 pages, 10 readers)
- **Conclusions and further work** (0.5 pages)
## Nail your contributions to the mast
Describe the problem, state your contributions… and that is all
**ONE PAGE!**
Write the list of contributions first
The list of contributions drives the entire paper: the paper substantiates the claims you have made
Reader thinks "gosh, if they can really deliver this, thats be exiting; id better read on"
Do not leave the reader to guess what your contributions are!
Contributions should be refutable:
- We give the syntax and semantics of a language that supports concurrent processes (Section 3). Its innovative feature are…
- We prove that the type system is sound, and that type checking is decidable (Section 4)
- We have built a GUI toolkit in WizWoz, and used it to implement a text editor (Section 5). The result is half the length if the Java version.
## Evidence:
Your introduction makes claims
The body of the paper provides evidence to support each claim
Check each claim in the introduction, identify the evidence, and forward-reference it from the claim
Evidence can be: analysis and comparison, theorems, measurements, case studies
Use forward references from the narrative in the intro. The intro (including the contributions) should survey the whole paper, and therefore forward reference every important part.
## Related work: later [after detailed description of key idea]
**Problem 1:** the reader knows nothing about the problem yet; so your (highly compressed) description of various technical tradeoffs is absolutely incomprehensible
**Problem 2:** describing alternative approaches gets between the reader and your idea
**Fallacy:** to make my work look good, I have to make other peoples work look bad.
Warmly acknowledge people who have helped you
Be generous to the competition
"In this inspiring paper (Foo98) X shows… We develop his foundation in the following ways…"
Acknowledge weaknesses in your approach
Giving credit to others does not diminish the credit you get from your paper
## Put your readers first (examples) [make the text easy to follow]
**NO →** Sends readers to sleep, and/or makes them feel stupid
### Presenting the idea:
Explain it as if you were speaking to someone using a whiteboard
Conveying the intuition is primary, not secondary → introduce the problem, and your idea, using examples and only then present the general case → explain it as if you were speaking to someone using a whiteboard
Once your reader has the intuition, she can follow the details (but not vice versa)
Even if she skips the details, she still takes away something valuable
## Listen to your readers [friends, experts, reviewers]
### Getting help:
Experts are good
Non-experts are also very good
Each reader can only read your paper for the first time once! So use them carefully
Explain carefully what you want
Get your paper read by as many friendly guinea pigs as possible
### Listening reviewers:
Treat every review like gold dust
Be (truly) grateful for criticism as well as praise. This is really, really hard, But it's really important
Read every criticism as a positive suggestion for something you could explain more clearly
**DO NOT** respond badly
Instead: fix the paper so that X is apparent even to the stupidest reader
Thank them warmly. They have given up their time for you