This is my toolchain when I start to write a paper. You can follow the guidelines below to improve your productivity.
- Overleaf Pro + Dropbox.
- The Overleaf Pro student subscription will be reimbursed by the research group. Please purchase it yourself and submit the receipt online.
- The Overleaf project name is
ProjectName-TargetVenueYear
. For example, Zhuge-SIGCOMM2022
. This helps you to sort out when you have multiple submissions later.
- If you do not have a name for the project, come up with one – just like the parent have the privilege to name their child.
- When you come up with a name that has non-Latin origins, remember to provide the pronunciation in the footnote as well. I had a work named “Zhuge” (should be pronounced like “drug”) and some people call it by “Z-Huge” since there is no official pronunciation in the paper.
- Link the Overleaf project with your Dropbox account. In this case, everything you write in Overleaf will be synced to your local Dropbox folder. Overleaf may fail so this is a good practice.
How to revise the paper
- Try to switch to a new line for each sentence. This will help you to (i) track the changes; and (ii) be easily aware of overlengthy sentences.
- Only the leading author can accept/reject the changes. Others should track the changes when they are revising the paper, unless with the consent of the leading author. In the last one hour before the submission due, everyone should stop touching the paper except the leading author.
- Use Comments and Track Changes in Overleaf as a To-Do list. Before the paper submission, remember to clear all the comments and accept all the changes.
- Use Grammarly extension from the browser (e.g., Chrome/Edge) to check the grammar. It is free and useful.
- Fix the errors and warnings from Overleaf as early as possible. Do not wait until the last minute.
How to organize the files
- I usually put everything into one TeX file. This is because you can easily move around the sections and paragraphs. In the past people split the TeX file into multiple files because there was no Overleaf. But feel free to keep your own style.
- There is a macro file that contains all the space-saving tricks. Only turn on those switches when really necessary.
\usepackage[small, compact]{titlesec}
\titlespacing*{\section}{0pt}{4pt}{3pt}
\titlespacing*{\subsection}{0pt}{3pt}{3pt}
\usepackage[subtle, lists=tight]{savetrees} % Reduce the space between words and letters.
\widowpenalty=0 % Do not penalize widow and orphan lines
\clubpenalty=0 % Allow the end of a paragraph to overflow to the next page
\brokenpenalty=0 % Allow the beginning of a paragraph to begin from the prev page
\def\UrlBreaks{\do\A\do\B\do\C\do\D\do\E\do\F\do\G\do\H\do\I\do\J
\do\K\do\L\do\M\do\N\do\O\do\P\do\Q\do\R\do\S\do\T\do\U\do\V
\do\W\do\X\do\Y\do\Z\do\[\do\\\do\]\do\^\do\_\do\`\do\a\do\b
\do\c\do\d\do\e\do\f\do\g\do\h\do\i\do\j\do\k\do\l\do\m\do\n
\do\o\do\p\do\q\do\r\do\s\do\t\do\u\do\v\do\w\do\x\do\y\do\z
\do\.\do\@\do\\\do\/\do\!\do\_\do\|\do\;\do\>\do\]\do\)\do\,
\do\?\do\'\do+\do\=\do\#}
\usepackage[justification=RaggedRight,labelfont=bf,font=small,textfont=normalfont,tableposition=below]{caption}
\setlength{\abovecaptionskip}{0.3em plus 0.2em minus 0.2em}
\setlength{\floatsep}{0.3em plus 0.2em minus 0.2em}
\setlength{\textfloatsep}{0.5em plus 0.2em minus 0.2em}
\setlength{\intextsep}{0.5em plus 0.2em minus 0.2em}
\setlength{\dbltextfloatsep}{0.5em plus 0.2em minus 0.2em}
\setlength{\dblfloatsep}{0.3em plus 0.2em minus 0.2em}
\setlength{\subfigcapskip}{-.5em}
\setlength{\subfigbottomskip}{0em}
\setlength{\textheight}{9in}
\setlength{\voffset}{-0.2in}
\setitemize{leftmargin=4mm}
\setenumerate{leftmargin=4mm}
\setlist{noitemsep,topsep=0pt,parsep=0pt,partopsep=0pt}
How to make plots
- The tool that I use is plotly. Make sure the plot can directly fit into the paper, especially the font size and plot size. The font size should be no smaller than the size of the subcaption. For example,
fig.update_layout(
margin=dict(l=0, r=0, t=0, b=0),
autosize=False,
width=240,
height=160,
)
- When the plot is ready, export it directly to the Dropbox folder that is linked to Overleaf. In this way, you do not need to upload the plot from the Web portal from time to time.
pdf_save_folder = "C:/Users/zilim/Dropbox/Apps/Overleaf/Zhuge-SIGCOMM2022/figures/"
fig.write_image("%s/%s.pdf" % (pdf_save_folder, "eva"))
How to make illustrations
- The tool you can use is Powerpoint. Put the source file (.pptx) into the Dropbox folder that is linked to Overleaf. In this way my collaborators can also edit the illustration.
- Export or print the certain slide to PDF in the same Dropbox folder as well – this will save your effort to upload the PDF to Overleaf as well.
- Again, the font size should be no smaller than the size of the subcaption.
How to write the paper without the Internet?
- Like, in the flight or in the train. You can use VSCode to revise it locally. If you want to take a look at the PDF, the LaTeX Workshop extension would be great to compile the paper locally. When the Internet is resumed, the update will be synced up.