My first academic paper was accepted and published in 1998. My most recent one was rejected by SPLASH just a week ago. I’m writing two papers right now and co-authoring about ten others. So far, my results are very poor: way more rejections than I expected. The key lesson I’ve learned so far: the reason most papers get rejected is not because they are essentially wrong. Instead, reviewers reject them because they have no enthusiasm for decrypting a poorly structured text, even though it may contain potentially interesting thoughts. In this blog post I suggest how to structure a research paper. Take it with a grain of salt though.
Read Writing for Computer Science by Justin Zobel.
Use LaTeX, either locally or in Overleaf.
Read my personal best practices for LaTeX.
Keep the same organizational structure in each paragraph.
Title
The title is the key message of your paper.
Use this method to invent it.
Authors
I suggest the following rule: The first author in the list is you. The last one is your boss. Key contributors stay in the middle, in alphabetic order of their last names. Everybody else is listed in the Acknowledgments section.
Abstract
An abstract is a one-paragraph version of the paper, with an emphasis on Introduction, Results, and Discussion.
Introduction
Answer these questions in this particular order:
- What is going on in your field of study?
- What is wrong?
- Why is this Problem important?
- Why is it not fixed yet by others?
Then, formulate your Research Question(s) or a Hypothesis.
Next, make a disputable Thesis Statement.
Then, enumerate the Contributions that your article makes to science. A Contribution is something tangible, which a reader can take from your study and use somehow in their own studies. A theorem, a method, a toolkit, a data-set, or an algorithm are good examples of a Contribution.
Finally, help your reader understand how the rest of the paper is structured and why.
Background
A reader may not know much about your field of study. This section may help them understand your problem domain and its terminology better. For example, if you write about a new programming language, this section may explain what a compiler is, and grammar, front-end, back-end, AST, and so on.
Educate your readers in order to make it more comfortable for them to read the rest of the paper.
Related Work
In the first paragraph, give an overview of all existing studies that you managed to find. Classify them somehow.
Then write one paragraph per study. Explain what the study was about and what are its key findings. Finish each paragraph with the flaws you found in the study. Make a claim that due to these flaws this study is not a solution to the Problem.
Finish the section with a paragraph claiming that, to the best of your knowledge, not a single existing study solves the Problem.
Method or Device
There are two types of research: you either observe the reality in order to discover its new laws (this is how Isaac Newton discovered his laws of motion), or extend the reality with a new device (this is how Thomas Edison invented the light bulb).
If you observe, algorithmically describe the Method.
If you extend, describe the Device and its usage scenarios.
Proof
Formally prove that your Device possesses certain qualities, predicted in the Hypothesis.
The section mostly consists of definitions, examples, lemmas, theorems, and proofs.
Experimental Results
Apply the Method, step by step, to the real data.
Present your findings using tables and graphs.
Post your input data, intermediate data, and all output data in a public GitHub repository. Make a reference to it.
Discussion
Informally interpret your results.
Explain how your results are different from Related Work.
Highlight limitations of the study. Discuss its threats to validity. Any method or any idea has its flaws. If you don’t admit them, your readers will think that you are either concealing the issues or not understanding your own domain well enough.
Highlight the significance of the study.
Discuss unanswered questions and suggest topics for future studies.
Conclusion
Spend one paragraph explaining how your research question was answered in this paper. Imagine the reader just reads the Introduction and then immediately this Conclusion. It should read fluently.
This paragraph is a short version of the Discussion.
Acknowledgments
Here, you say “many thanks to individuals and organizations that contributed to the research, including …” You list them all, in alphabetic order. You may add your bosses, colleagues, people who reviewed your paper, your parents, and even your dog.
If the research was done while you were an employee of ACME Inc., say that “the research was funded by ACME Inc.”
References
Use BibLaTeX to automate citations, and read this.
Use either APA or IEEE citation styles.
Appendices
Long tables, complex proofs, large figures are good candidates for placing into appendices. Keeping them in the main part of the paper may jeopardize its readability.