Upskilling
Communicating Research
Writing Papers
Paper writing is a key part of research. This page contains some tips and tricks for writing papers. Paper writing is a skill that you will develop over time. But, it needs deliberate practice.
Paper structure and Abstract: I gave a talk (recording here, slides here) on how to write a paper. I recommend watching it. Other materials from the talk are available here.
LaTeXify figures: We’d suggest using this latexification tool to make the matplotlib
figures publication-ready. It helps in the following aspects:
- It helps in setting the exact size of the figure relative to the column width or page width of the paper. After using this tool, manually setting the size within the
\begin{figure}
block is rarely needed. - We can set the font size relative to the text font size in the paper to ensure fonts are not too small or too big.
- It converts the fonts into latex fonts so that the fonts in the figures do not look different from the main text font.
Tip: You can find page width and column width with
\the\textwidth
and\the\columnwidth
commands, respectively.
Self-contained figures and tables (and captions)
Tables: We follow this excellent small guide to making nice tables by Markus Püschel.
Comments in LaTeX: We typically create a macro corresponding to different author initials (I use \nb
for example) and then use that to create comments in the text. This is useful for commenting on the text, or for leaving notes to yourself. For example, I might write \nb{I'm not sure about this sentence}
and then I can search for all instances of \nb
to find all of my comments.
\newcommand{\nb}[1]{{\color{red}\small \iftoggle{hide}{}{\textbf{Nipun's comment:} #1}}}
American v/s British English: There are a few differences in spelling between American and British English. For example, the word “colour” in British English is spelled “color” in American English. The word “optimise” in British English is spelled “optimize” in American English. There are also some differences in grammar. I recommend picking one and sticking to it. Most of our previous papers have used British English (but often this depends on the set of co-authors).
Grammarly and other AI tools: I recommend students use Grammarly (or a similar) tool to check their writing once they have done a complete pass of editing. I do not recommend relying a lot on ChatGPT-like tools for writing papers as they can often lead to “correct” sounding but “incorrect” sentences.
Poster
In some venues, the main presentation format is a poster. Posters are a great way to present your work in a visual format, and to have one-on-one conversations with people who are interested in your work.
One common mistake people make while making posters is to try to cram in too much information. Remember that the poster is to supplement you and not to replace you.
Please see below for two posters that we have made in the past.
Sample Poster 1
Sample Poster 2
Please find the presentation files corresponding to the first poster 1. Apple Keynote
LaTeX users can use the following templates on Overleaf to make their posters.
Technical Background
Git and GitHub: There are a ton of good resorces on Git and Github. I’m linking two such resources here:
Python Data Science Stack:
- We recommend students to study the Python for Data Science Handbook by Jake VanderPlas. It is a free online book that covers the basics of Python, NumPy, Pandas, Matplotlib, and Scikit-Learn. It is a great resource for beginners and intermediate students alike.
- We recommend students regularly hone their skills solving exercises such as 100 Numpy exercises. Given that much of our work is in Torch-like frameworks, the students would also benefit by attempting to solve the exercises using PyTorch.
Object-Oriented Programming in Python: RealPython has a nice tutorial on Object-Oriented Programming in Python. We recommend students to go through the tutorial. They also have a corresponding video page.
LaTeX: We typically use LaTeX for writing reports and papers. We recommend students to use Overleaf for students to get started. Overleaf has a nice 30 minute tutorial that covers the basics of LaTeX. We highly recommend students to go through the tutorial.
Creating a Website and Blog: We highly recommend students create a simple website and a blog. We have been happily using Quarto for our website and blog. You may see in action in Nipun’s website and corresponding GitHub repo here; and Nipun’s blog and corresponding Github repo here.
Both of these are built via Github actions. Feel free to reuse these for creating your own website and blog. We will be happy to help you get started.