Armando's Paper Writing and Presentations Page
Hints for Giving a Good SURF, REU, etc. Talk
Outline:
- Know thy audience and watch thy jargon
- Keep the big picture in mind
- Tell me a story, don't read me an article
- Pace yourself
- What did you just say again?
- There will be questions...
Know thy audience and watch thy jargon
Know your audience! At typical REU/SURF presentations, the audience
consists of a wide variety of people from different disciplines. Roughly,
the structure of your talk should reflect the following goals: (a) hook everyone
(including those not in your area) on your topic/problem; (b) impress the
experts with your specific work; (c) wrap up and recapture the attention of the
non-experts. The fraction of your talk devoted to each of these depends on
the level of sophistication of your audience.
Framing the problem can be a challenge. Are there popular-press or
"real-world" examples you can appeal to in order to illustrate what you're
doing? Even examples from Star Trek can be useful, since a lot of
technology areas are rapidly approaching the abilities envisioned in that
venerable show. Graphics, photos, and short video clips are also
useful. Your project advisor can probably help you find something
appropriate.
Beware of jargon, which covers both terms and concepts. Some people
don't know what public-key cryptography is; others are specialists and just want
to know which cryptosystem you used. Some people aren't familiar with the
concept of separating a user interface from a device or application; plan
to explain it if needed.
Keep the big picture in mind
What is the high level view of what's going on? You need to
motivate the overall project to an audience who might be thoroughly unfamiliar
with it. In a SURF talk, it might take up to 1/3 of the talk to motivate
the problem and be sure everyone understands (at least at a high level) why it's
useful, interesting, etc. This is time well spent: if people don't
understand the ultimate goal, they probably won't pay attention to what you
did.
How is the big picture divided into subproblems, and where do you fit
in? Now that the big picture is clear, what are the specific
subproblem challenges? Which part of which subproblem are you working
on? Some of this will necessarily get into details that not everyone in
the audience can follow.
If your efforts succeed, what will you have demonstrated?
Another way to ask this is: what is the "research question" (or questions)
being addressed here? In other words, ten years from now, when the
hardware, software, etc. have all changed and the computers of the day make
today's computers look like Tinkertoys, what fundamental nugget of an
idea will still be considered relevant and applicable? This is often
very hard to identify, and it may be that your own piece of the project
contributes only a small part toward forming that Big Idea, but research is a
building that has to be built one painful brick at a time. (Ask any Ph.D.
student.)
Tell me a story, don't read me an article
Rehearse your talk enough that you don't need paper notes (or, at most,
minimal notes - two or three 3x5 index cards for the whole talk).
If you make eye contact, engage your audience, and tell them a story, they will
pay attention. Try not to read from notes; they can read a paper as well
as anyone. Having a speaker bring the material to life is what makes a
talk different and potentially a better avenue for communicating your work to a
lay audience.
Don't be afraid to use humor. If a funny picture, animation, joke, etc.
is appropriate, it keeps the audience interested. But don't fall into the
extremely annoying trap of using these gratuitously; it distracts the audience
and gives the impression that you are using these to cover a lack of competence
with the material.
Pace yourself
You won't have time to say everything you want. The higher level the
talk, the less detail you'll have time for. A time-tested rule of thumb
is: 2 minutes per slide. This sounds conservative, but it is very well
borne out on average. Therefore, exlcuding the title/outline and
conclusion slides, you should have half as many slides as you have minutes to
speak.
Find a couple of key "timepoints" in the talk ("By the time I get to this
slide, I should be n minutes into the talk"). Once again, rehearsal
is key to debugging this. Remember, if you run out of material early, you
are still prepared with a level of detail deeper than your talk, so you can use
the extra time to elaborate on a particular point of interest to you; but if you
are running short of time, you won't be able to communicate everything you want
to say, and your audience will not come away with a representative picture of
what you did or why they should care.
What did you just say again?
Especially if the middle part of your talk is aimed at technical experts, be
sure you recap towards the end what the overall problem was and what your
contribution was. Plan on 1-2 slides for this. People best remember
the beginning and the end, so make sure these are rock solid. (Ask anyone
who has written a Broadway musical if you don't believe this.) It may be
appropriate to include "future work" here - things left to be done (some of
which may have been discovered as a result of your work, which is always
good) and new issues that came up as a result of your work.
There will be questions...
People will ask about stuff not in your talk. The main
preparation/rehearsal, then, is to know your material at one level of detail
deeper than your slides. Usually you cannot predict the questions;
so, although you should make sure you can explain every point on your slides in
additional detail if necessary, do not expect that those are the only
questions you will get. People remember how well you handled your
questions, since it demonstrates real familiarity with your material (anyone can
rehearse and deliver a prepared talk on a topic they know little about).
Helpful Hints for Technical Paper Writing
Vision
vs. Implementation papers
Before
you write
Starting
checks
The
actual paper
About
Writing
Final
checks
Acknowledgments: Particularly influenced by Seth Hutchinson (MS thesis
advisor), Eric Brewer (PhD thesis advisor), John Mullin (high school
English--really!), and benefited from proofreadings by too many people to
mention by name.
Note: This is a page about writing technical papers, but many of the
techniques also seem applicable to both non-technical writing and giving
presentations.
Vision, Implementation, and Survey Papers
In a vision paper, you describe your grand scheme of the world and why it is
good. You need some data to back up your statements, but this is not a detailed
measurements paper. The goal of this paper is to convince the reader that your
scheme is interesting, different, better than other schemes that have addressed
similar problems, raises legitimate research questions, and is therefore worth
spending the time to pursue research on.
- If you're writing a vision paper, you have to be absolutely convinced of
your vision, or no one else will be. Make no statement that cannot be backed
up by citation, quantitative data, or at least a very good first-cut
experiment ("preliminary results suggest....")
The implementation paper, by contrast, gives detailed measurements of a
system that was perhaps described in a previous vision paper. The goal here is
to demonstrate what you learned from actually building the system: Did it
validate your research hypothesis? What came out differently than you expected,
and why? How much better, quantitatively, is your design than others'?
- If you're writing a measurement-and-results paper, first determine which
graphs will convey the results you think are important. Given those, the paper
will practically write itself.
Survey papers: TBD...
Before You Write...
- If possible, present your work in a short 5-10 minute talk to your
colleagues before starting to write. This helps identify strengths and
weaknesses and will give you an idea of what other people see as the important
contributions. Surprisingly often, they will spot a significant contribution
that you totally overlooked, or suggest a novel application of your ideas that
dramatically increases the relevance and impact of your paper.
- Don't cram. Recall the old saw about how nine pregnant women cannot
produce a baby in one month. You can't throw all your time into a paper
at the last minute and expect a good result: you will become saturated, lose
perspective because you are too close to the material, and ultimately be
spinning your wheels, changing stuff back and forth without a really good
feeling for why you're doing it. Exceptions to this occur, but they're
rare.
- Know when to say when. Even if you have written the paper with
plenty of time and had a lot of outside review, after a certain point you will
not be able to add much value without taking a break for a while (maybe a week
or two). When that point comes, further work on the paper is just
thrashing and not likely to improve it much, though it will leave you feeling
dissatisfied. Wait for the reviews from the PC before doing much more.
Starting Checks
- Write from an outline. Let me say that again, because it's really
important: write from an outline. I know no one who can reel off any coherent
technical writing more than one page long without some kind of top-down
strategy. At least sketch out the major sections of the paper, and what points
you want to make in each, from 10000 feet. If you write any complete sentences
during this phase, you're getting mired in detail already. Bullets are what
you want.
- Don't even try to write the title or abstract until after the whole rest
of the paper is written. Then, and only then, will you actually know what the
hell it is you want to say.
- Unless you're writing a PhD thesis, your paper will make only a small
number of discrete points--say 2 to 4. Each important point should appear 3
times: once in the abstract/introduction, once in the body of the paper (where
it is explained in detail), and once in the conclusions (where you derive some
implications of this point for the future of systems research, or
whatever). Bulleted conclusions can help. Remember that conference
referees are at least as busy as you and they have to read several of these.
Make sure they remember yours.
The Actual Paper: Writing
- start from the outline.
- Make the outline reflect the level of subsections: for each subsection,
write no more than two lines describing the purpose/goal of that
subsection. This text will NOT be part of the paper - it is only there
to remind you what you are trying to accomplish. It is ESSENTIAL that
you be able to capture the purpose of a subsection in one or two lines. If you
cannot do this, then you probably don't understand what the subsection is
really about, and when you try to write the text, it will be jumbled.
- Then, for each subsection, map out specific paragraphs: for each
paragraph, write one sentence that explains the topic or main goal of
just that paragraph. Again, this sentence probably will NOT make it
into the actual text. It's important to keep it to one sentence. (As
every style manual will tell you, including Strunk & White, virtually
every well-formed paragraph does indeed have one sentence that explains
the point of the paragraph, with the other sentences supporting or expanding
on the point of the topic sentence.) If you cannot fit the point of the
pargraph into 1 sentence, the paragraph is probably making >1 point, so
should be split into multiple paragraphs.
- Read through everything you have written and see if it has a logical flow,
ie if you believe it represents your work adequately.
- Give what you have written to a technical colleague completely
unfamiliar with your work (but able to understand the computer science
part), have them read it, then have them tell you (without looking at it) what
s/he thinks the main point and contributions are.
- If all goes well, now replace the topic sentences with complete
paragraphs.
This way of writing will not yield a shakespearean work of literature, but
it is consistent and will result in readable, logically organized prose by
construction.
The Actual Paper: Revising/Editing
- Your section organization will change. Sometimes it will be shuffled
dramatically. This is fine; it means you're understanding what presentation
order works best. If you don't go through at least three or four major
revisions (where you move around or chop entire sections), it's probably
lousy.
- After doing some edits on each draft, give it a full top-to-bottom reading
to evaluate its coherence and flow of ideas. Then, take a couple of hours and
do something else; once you get close enough to your paper, you start missing
the forest for the trees.
- Even early drafts are valuable for getting your colleagues' comments. Get
comments from people who you think may be skeptical of your approach. Get
comments from people who will really rip your writing style apart. Remember,
at least they are your friends; the conference referees probably are not.
- Cite, cite, cite! Ask your colleagues for suggestions and pointers. You
never want to be asked: "What about the work done by xxx, which obviously has
something in common with your own?" (or worse: "...which refutes your own?")
Give due credit to those whose efforts you build on, as well as pointing out
how your approach is different from (and better than) previous ones.
About Writing
It's often said, correctly I think, that most technical people don't write
well. This doesn't mean that they lack knowledge of grammar or spelling (though
this is sometimes the case), but that they don't know how to organize their
writing at the level of paragraphs.
- Don't artificially formalize your writing style. Technical writing must be
clear and concise. Overblown writing rarely fools anyone and it makes the
paper boring to read.
Bad: "Problem X is clearly a critical area
that impacts our research agenda and hypothesis. Our ideas about problem
X are embryonic and still evolving, and doubtless our ongoing work in this
area will quickly yield fruitful results."
Better: "We recognize
that problem X is central to our agenda, but we have only begun to investigate
it."
- If you haven't read Strunk and White's The Elements of
Style, read it now. If you have, read it again. If you can't organize
a paragraph, you won't have much luck organizing a chapter.
- Omit needless words. Don't be surprised if this turns out to be 30-40% of
the words you originally wrote. Your first effort rarely captures the most
vigorous or concise way to say something. Spend time tersifying.
- Run your paper by someone who is anal retentive about grammar to catch
common errors: misuse of which and that, non-words and
non-phrases such as for all intensive purposes or irregardless,
lack of parallel sentence structure...
Final Checks
Remember that this will be read by people who (a) have never heard of you and
the review is anonymous anyway, (b) have never heard of your project, (c) are
reading about 15-20 papers apiece, all in different subject areas. They will
spend the first 5 minutes deciding if your paper is actually good enough to be
worth a fully detailed read; they will then spedn an hour or so reading it in
detail, trying to figure out (a) what your contribution is, (b) if the
contribution is substantial enough to be worth publishing, (c) if the
contribution is "feasible" (ie it is implementable and therefore would be useful
to someone).
- Does the paper make clear precisely what your new
contributions are, and how they are different/better than existing approaches
to this or similar problems?
- Does the outline of the paper (sections, subsections, etc.) cohere
regardless of the granularity at which you view it? (The Outline mode of
MS Word is a valuable feature for this check. I also wrote a simple
Perl script that does this for LaTeX files.)
- Have you observed the following invariant: Before telling me what you did,
tell me why I should care.
- Have you made every important point three times--once in the
introduction/abstract, once in the body of the paper, and once in the
conclusions? (Bulleted conclusions are usually a good idea)
- Have you had it read by at least one person familiar with each of the
areas the paper impinges on? (Think of them as consultants in that area. There
is a risk that you will get some of the details wrong in talking about an area
that is tangential to the paper but that you're not very familiar with, and if
a reviewer happens to be versed in that area, it decreases your credibility.
Such references are easy to get right, so there is no excuse.)
- Have you searched carefully for any related work, and properly
acknowledged it? The availability of papers and search indices on the Web
makes it worse than ever to overlook significant related work.
- Are you able to capture the non-experts in the audience with the opening
of your paper, and impress the experts in the body of the paper?
- Can you read only the abstract and conclusions and be able to give someone
else a 30-second digest of what the paper claims it says?
John Ousterhout's Hints for Reviewing Papers
I preface these with some high-level questions of my own that I try to answer
quickly on a first pass. Note that the answer to each question tells you
something about the technical content of the paper, whereas the ease of
extracting the answer to each question tells you something about the quality
of the writing. For example, a paper may have a really great main contribution
that is so poorly expressed that it takes you a couple of passes just to figure
out what the paper is "really" about.
- Is this a vision/position/direction paper, or a measurement/implementation
paper?
- If I know the area well, can I mentally slot this paper somewhere in the
taxonomy? ("Differs from X as follows; has the following in common with Y;"
etc.) If the paper is radically brilliant, new, or iconoclastic work,
this question may not apply.
- Can I summarize the single most important contribution in one or two
sentences?
John Ousterhout delivered the following wisdom to his UC Berkeley CS 262
(advanced topics in operating systems) class in Fall 93, as the ISCA deadline
approached.
Issues
- Will this advance the state of the art?
- Did you learn anything new?
- Does it provide evidence which supports/contradicts hypotheses?
- Experimental validation?
- Will the paper generate discussion at the conference?
- How readable is the paper? (The draft can be modified, and if the ideas
are very important, you may accept it anyway.)
- Is the paper relevant to a broader community?
Goals of Review
- Guide the program committee in selection process
- Help authors (to revise paper for acceptance, to understand rejection, to
improve further research and future projects)
Structure
- 1/2 to 1 page of text (2 - 4 paragraphs)
Longer reviews are generally
given for better papers, shorter reviews for bad papers
- 1 paragraph executive summary
- what is the paper trying to do?
- what is potential contribution of paper?
- short summary of strengths and weaknesses (sentence or 2)
- accept/reject (hard, because you don't necessarily see the entire
sample)
- several paragraphs of details (listed in order of importance)
- technical flaws?
- structure of paper?
- are key ideas brought out?
- don't want to just describe system, also need motivation and
justification of approach
- presentation? (ex: undefined terms, confusing wording, unclear
sections...)
- justification -- can they say why ideas are important?
- comparison with other systems? For bigger conferences (SOSP, ISCA,
ASPLOS) need quantitative evidence of ideas
- grammar? (usually only point out consistent errors)
Short rules to triple-check your paper
- Pat Hanrahan says: "Future Work section must be earned". If you
haven't made us care about your contribution thus far, we won't care to read
Future Work either.
- THere's 3 kinds of statements in a systems paper: statements supported by
citations, statements supported by experiments, and opinions. Avoid
opinions.
- Good reviewers are overloaded. Remember, Butler Lampson is looking
for an excuse to stop reading your paper. Don't give him one.
fox@cs.stanford.edu