How to Write a Great Research Paper
Introduction
Simon Peyton Jones gives a talk on how to write good research papers. He provides seven actionable suggestions that can make your papers better.
Starting to Write Early
- Start writing the paper early, even if you don't have a fully developed idea.
- Writing the paper forces you to refine your idea and can help crystallize your thoughts.
- Writing a paper is also a good way to open up dialogue with others about your research.
Content is King
- The content of the paper is more important than the writing style.
- Focus on making sure that the content of each section flows logically and coherently.
Titles and Abstracts
- The title should be clear, concise, and accurately reflect the content of the paper.
- The abstract should provide a brief summary of what the paper is about and why it's important.
Figures and Tables
- Figures and tables should be used sparingly but effectively to convey information.
- Each figure or table should have a clear caption that explains its purpose.
Related Work
- Discussing related work in your field shows that you are aware of what has been done before and how your work builds upon it.
Conclusions
-[]( t = 16 : 45 ) Conclusions should summarize key findings without repeating everything from earlier sections
[#]( t = 19 : 35 ) Q&A
Simon Peyton Jones answers questions from the audience about writing research papers.
Writing Style
- The writing style should be clear and concise, but not overly formal.
- Avoid using jargon or technical terms that may not be familiar to your readers.
Collaborating with Others
- Collaborating with others can help improve the quality of your research and make the writing process easier.
- When collaborating, it's important to establish clear roles and responsibilities for each person involved.
Dealing with Rejection
- Rejection is a normal part of the research process, and it's important to learn from feedback and keep trying.
- Don't take rejection personally, and use it as an opportunity to improve your work.
Publishing Papers
-[]( t = 31 : 15 ) Choose a venue that is appropriate for your work
-[]( t = 32 : 25 ) Be aware of submission deadlines
[#]( t = 34 : 05 ) Conclusion
Simon Peyton Jones summarizes his talk on how to write good research papers.
Key Takeaways
-[]( t = 36 : 10 ) Start writing early
-[]( t = 37 : 20 ) Focus on content over style
-[]( t = 38 :30 ) Use figures and tables effectively
-[]( t =39 :45 ) Discuss related work in your field
Sharing Half-Baked Ideas
The speaker discusses the importance of sharing ideas in computer science and how it differs from other fields. They emphasize the value of communicating with others to refine and develop ideas.
Sharing Ideas in Computer Science
- In computer science, people are less in competition with each other, making it easier to share ideas.
- It's important to share half-baked ideas and advertise them as such.
- Communication is key - be upfront about what you're doing and see if anyone else is interested.
Writing as a Tool for Idea Development
- Writing is not just an output medium; it's a way to develop ideas.
- Papers are like vehicles for conveying ideas from one person's head to another's.
- Papers are more durable than anything else in research output.
Communicating Ideas
- If you have a great idea but don't communicate it effectively, you're not benefiting humanity.
- Communicating your ideas helps you discover whether they're good or not.
- Articulate your ideas persuasively to get others excited about them.
Importance of Communicating Ideas
The speaker emphasizes the importance of communicating your ideas effectively so that they can benefit humanity. They discuss how communication helps refine and spread good ideas.
Benefits of Effective Communication
- Even if you have a great idea, if you don't communicate it well, you're not helping anyone.
- Communicating your ideas helps refine them by getting feedback from others.
- Good communication can help spread good ideas like wildfire.
Discovering Good Ideas
- Showing your half-baked or soft-baked ideas to others can help winnow out bad ones and refine good ones.
- Be open and speak early about your ideas so that others can help shape them.
Persuasive Communication
- Articulate your ideas in a persuasive way to get others excited about them.
- Effective communication is key to benefiting humanity with your ideas.
Writing a Paper: Getting Started
In this section, the speaker talks about how to get started with writing a paper and emphasizes the importance of not waiting for a "good" idea before starting.
Don't Wait for a Good Idea
- Many people feel that their ideas are insignificant compared to others in their field.
- Even if your idea seems weak or insignificant, write a paper about it anyway. You're not committing to publishing it at a top-tier conference, just to writing it.
- Sometimes an idea may turn out to be bigger and more interesting than expected once you start writing about it.
Articulate Your Idea Clearly
- By the time you finish writing your paper, you should be clear about what your idea is.
- Resist the temptation to include many ideas in one paper. Focus on being clear about one main idea per paper.
- When reading someone else's paper, try to identify the key idea or thought in the paper. Be explicit when articulating your own key ideas.
Conclusion
- Leave your reader with no doubt as to what your main idea is by explicitly stating it.
Writing a Good Paper
In this section, the speaker talks about how to write a good paper and the structure of a paper.
Structure of a Paper
- The speaker suggests that the mental model for writing a paper is to imagine standing at a whiteboard with a friend and conveying your idea.
- The storyline for writing a paper should include: stating the problem, explaining why it's interesting and unsolved, presenting your idea, providing evidence to support your idea, exploring details, and comparing your approach to others.
- A typical conference format paper includes: title, abstract, introduction (fitting on the first page), problem statement, proposed solution with evidence supporting it, related work comparison.
Literate Programming
- Papers that interweave code and exposition are called literate programs.
- Presenting all the code may overwhelm the idea in the paper. It's important to run all code before presenting it.
Audience Considerations
- Readership drops off sharply after page one of a paper. Authors need to consider their audience when writing papers.
Introductions
In this section, the speaker discusses how to write effective introductions for academic papers.
Importance of Introductions
- Introductions should introduce the problem and state your contributions.
- Use an example to introduce the problem and make it clear to readers what your paper is about.
Describing a Mountain vs. a Molehill
- Describe a small hill that you're going to conquer or at least make a decent assault on.
- Make the problem small enough that it's believable that you might solve it.
Contributions
- The contributions of your paper are like the specification of a program and should be explicitly stated in the introduction.
- Use bullet points to describe specific contributions as they are like claims in a proof engine.
Contributions
In this section, the speaker discusses how to effectively communicate the contributions of an academic paper.
Importance of Communicating Contributions
- Communicating contributions is important because it helps readers understand what your paper is about and why they should read it.
- The contributions are like the spec of a program, and readers want to know if you can deliver on those promises.
Specificity in Communication
- Be specific when communicating your contributions.
- Use bullet points to list out specific contributions as they are like claims in a proof engine.
Introduction and Importance of Stating Contributions
In this section, the speaker emphasizes the importance of stating contributions in a paper and how it should be done.
Stating Contributions
- It is important to state contributions that could be false.
- The difference between describing a formal system and proving its properties.
- A type system with ambitious aims needs to have its claims substantiated.
- Forward references to sections in the paper are helpful for reviewers.
Avoiding Unnecessary Information in Introductions
In this section, the speaker discusses how introductions should not contain unnecessary information that nobody reads.
Introductions
- Avoid having a paragraph that describes the structure of the paper.
- Instead, make claims and give forward references to where they will be substantiated.
- This helps reviewers find evidence for claims easily.
- Claims made in introductions are crucial as they determine whether readers continue reading or not.
Compressing Contributions on Page One
In this section, the speaker emphasizes that contributions on page one cannot spread too long and need to be compressed.
Page One Contributions
- The first page is precious and cannot be shrunk.
- Payload should not be put on page one.
- Claims made in introductions can help identify dead code.
Writing a Research Paper
In this section, the speaker discusses how to write a research paper and emphasizes the importance of the first page in conveying the key idea. The related work section is also discussed, and the speaker suggests putting it at the end of the paper.
Importance of First Page
- The first page is crucial in conveying the key idea to readers.
- Think of it as a driving force for your paper.
- Consider compressing information on this page to make it more effective.
Related Work Section
- Good scholarship requires an understanding of state-of-the-art research before attempting to solve a problem.
- However, placing related work at the beginning can be problematic because it creates an uneasy compromise between describing state-of-the-art research and explaining one's own idea.
- Suggests placing related work at the end of the paper instead.
Writing a Research Paper: Related Work Section
In this section, the speaker discusses how to write the related work section of a research paper. The focus is on giving credit where it's due and leading the reader to your idea by the most direct path.
Giving Credit Where It's Due
- Mention related work in as much detail as necessary to get to your idea.
- Express your heart if you feel good about a paper because it was inspiring to you.
- Don't just focus on areas where your work is better than someone else's. Acknowledge their contributions and give credit where it's due.
Leading the Reader to Your Idea
- Describe the problem and pathway to your idea using ideas from related work.
- Focus on leading your own reader by hand to your idea, not giving credit at that stage.
- Computer science is multi-dimensional, so don't just focus on areas where you're better than someone else.
Importance of Honesty and Good Scholarship
In this section, the speaker emphasizes the importance of being honest about one's weaknesses in a research paper. They suggest that it is helpful for readers if authors explain where they are not so good as well as where they excel.
Being Honest About Weaknesses
- It is important to be honest about one's weaknesses in a research paper.
- Explaining where you are not so good can be helpful for readers.
- Try to avoid related work sections that only list citations without providing any value judgment.
- Provide evidence that you actually know what's in the papers you cite.
Addressing Threats to Validity
- If your approach has limitations, acknowledge them in the threats to validity section.
- Focus on building on your strengths rather than trying to do everything.
- Forward reference to your related work or evaluation section when discussing limitations.
Writing the Body of the Paper
In this section, the speaker discusses how to write the body of a research paper. They emphasize thinking about your readers and avoiding recapping your journey through blind alleys and dead ends.
Thinking About Your Readers
- Think about your readers when writing the body of a research paper.
- Avoid recapping your journey through blind alleys and dead ends.
- Lead readers straight to the goodness rather than leading them into complicated pathways unnecessarily.
Exceptions
- There are exceptions when it may be necessary to stop and explain why a certain pathway doesn't work.
- Elaborate on these exceptions somewhere in the paper.
Presenting Your Idea in a Paper
In this section, the speaker discusses how to present an idea in a paper. They talk about the trade-off between reproducibility and length constraints, and how to strike a balance between providing enough detail for someone to deploy the idea while not overwhelming them with unnecessary information.
Balancing Reproducibility and Length Constraints
- The speaker notes that there is a trade-off between reproducibility of your paper and length constraints.
- They suggest that it's important to provide enough detail for someone to deploy the idea themselves, but not so much detail that it overwhelms them.
- The speaker suggests that you might say "here are some implementation details" or "there's a whole section about implementation later in the paper" to give readers an idea of where they can find more information.
Including Details Without Overwhelming Readers
- The speaker emphasizes that you want to get to the meat of your idea in your paper.
- They note that readers may not be interested in all of the details, but it's important to include enough detail for someone else to use your work.
- The speaker suggests using an appendix for additional material if necessary.
Simplifying Complex Ideas
- The speaker notes that sometimes simple ideas can seem too easy, so it's important to show readers why your approach is valuable.
- They suggest recasting complex problems into simpler ones as a way of illustrating why your approach is valuable.
- However, they caution against dragging readers through unnecessary complications.
Takeaways from Reading Papers
- The speaker notes that intuition and examples are key takeaways from reading papers.
- Even if you skip over some of the details, you should still be able to take away something valuable from reading a paper.
Starting with Examples
In this section, the speaker emphasizes the importance of starting with examples when presenting a talk or writing a paper. The use of examples helps to provide an intuitive understanding of the problem being solved.
Importance of Examples
- Start with an example to provide an intuitive idea of what's going on.
- Use multiple examples to extract a general case.
- Provide examples in papers and talks to illustrate the problem being solved.
Thinking About Your Readership
This section focuses on considering your audience when writing a paper. The speaker suggests using guinea pigs, or people who read your paper and give feedback, to refine your work.
Using Guinea Pigs for Feedback
- Use guinea pigs sparingly and one at a time.
- Non-expert guinea pigs can be helpful in making sense of early sections.
- Explain what you want from your guinea pigs and ask them when they ceased understanding.
- Refine your work based on feedback received from guinea pigs.
Importance of Writing Early
- Start writing early so that you have drafts available for feedback from guinea pigs.
Getting Feedback on Your Paper
In this section, the speaker discusses the importance of getting feedback on your paper and provides advice on how to get it.
Importance of Feedback
- The speaker emphasizes the importance of getting feedback on your paper.
- The more qualified the person giving feedback is, the better they can help you improve your paper.
- Almost everybody in computer science is open to conversations with absolutely anybody provided they've got something to talk about.
How to Get Feedback
- Don't just give your paper to someone and get written feedback. Instead, ask them to mark where they get lost and then discuss it with them.
- Send your paper to people you don't know well, such as those you met at a conference, and ask for their feedback.
- Introduce yourself to important people who give talks at conferences and form a relationship with them by asking questions about their talk or research.
Handling Adversarial Reviews
- Be grateful for critique even if it's hard to hear because someone has given you an hour of their time that they will never have again.
- Look at reviews constructively instead of negatively. Ask yourself how you can write the paper so that not even an unqualified reviewer could make that mistake.
Reviewing Papers in Computer Science
In this section, the speaker discusses the importance of reviewing papers in computer science and how to thank anonymous reviewers.
Importance of Reviewing Papers
- Reviewers are usually conscientious about reviewing papers.
- It is rare for a reviewer to not read a paper before reviewing it.
Thanking Anonymous Reviewers
- At the end of your paper, take two lines to thank anonymous reviewers and mention any guinea pigs who helped with the research.
- This is a cheap way to spread love and show appreciation for their work.
Seven Tips for Writing Better Papers
In this section, the speaker provides seven actionable tips that can help improve writing skills when creating academic papers.
Seven Tips for Writing Better Papers
- Write an abstract that summarizes your paper's main contributions.
- Use simple language and avoid jargon as much as possible.
- Use active voice instead of passive voice.
- Use concrete examples to illustrate your points.
- Organize your paper into sections with clear headings.
- Provide context by discussing related work in your field.
- Proofread your paper carefully before submitting it.
Final Thoughts
- These tips are actionable steps that can be taken to improve writing skills when creating academic papers.
- It may be necessary to fight with advisors about some of these tips, but they are worth implementing in order to create better papers.