“Documenting my academic writing workflow and how to improve it”, or, “How I learned to stop worrying and love text files”.
See also text editors, LaTeX, citation management, scientific computation workflow, plain text blogging, markdown.
Science writing blogs
This blog, and virtually all my notes, are in plain text files on my computer, published online as plain html files. It’s an informal open notebook.
I had to jump through some hoops to make this work, because I need mathematical markup support and basic citation management. Vanilla, non-academic plain text blogging is simpler. But even this academic stuff is not complicated.
Personally speaking, it helps keeps me rigorous and coherent, knowing that the public can see what I am doing, and which half-cocked opinions I am holding. It encourages people to contact me about my ideas.
Further, having a bunch of plain text files is the most simple, convenient and reliable way of taking notes. I’d do it this way even if it weren’t going to be online.
Other examples of online notebooks
I publish notes online using Pelican. I see plain text files; you see fancy online HTML. The HTML is automatically served by github pages, which is fast and free. The citations are handled through Zotero. This is a work in progress. This workflow is OK, but I’m experimenting.
Nafiul Islam gives some clever shortcuts on getting live preview using
For now I mostly edit the text using VS Code, and just GO. The process looks like this:
On software choice
There are lots of tools to do this. There are hundreds of static site generators for plain text blogging. Particular ones of note for academics are
- Blogdown might be the most popular move now, especially if you want to access the mind-share of other academics, such as the rbind community. See also the blogdown-book.
- pandoc-scholar extends pandoc with useful academic features.
- Daan Leijen’s Madoko, which includes some nifty publish-to-the-web features, native citation support, and fancy maths rendering.
- jupyter can render and export markdown as a flagship part of its policy of doing everything easily but nothing well.
- others. Pelican, Hakyll…
Basic plaintext workflow
- Kieran Healy’s The Plain Person’s Guide to Plain Text Social Science to plain-text academic writing.
- Scott Selisker, A Plain Text Workflow for Academic Writing with Atom
- Boaz Barak’s Theory Life-Hacks
- Shalizi’s Using R Markdown for Class Reports
Writing papers, especially collaboratively, is a whole other story; you need better media management and citations etc. You might want to try a scientific notebook such as jupyter, knitr etc, which will generate the requisite diagrams etc. rticles, in particular, takes the scientific computation tools and turns them to generating photo-ready journal submissions.
Minimally painful LaTeX collaboration
And you need to work with collaborators of different technical expertise levels, across various quirky LaTeX setups, here are some options.
ShareLaTeX is an open source online collaborative article editor. They also have a hosted version.
Work together on a single version
View collaborator edits
No complicated LaTeX installation
Restore to any older version
Access your work from anywhere in the world
Work offline and sync your files via Dropbox and GitHub
Overleaf is not open source, but somewhat prettier.
I haven’t used it for a while either.
Real-time collaboration in your browser We compile your project for you so you can see the results right away. There’s no software to install, so you can start writing and collaborating instantly.
Our real-time preview also makes it great for learning — you can see how your final project looks as you type.
papernow is more radical (and more ugly) again.
Create, edit and (optionally) display a journal article, entirely in GitHub.
In contrast to the more traditional process of submit > peer review > publish at PeerJ, or even the less formal preprints at PeerJ Preprints or arXiv, Paper Now is an experiment to see where the future may go with scholarly communication. Initially, it may be that co-authors collaborate either privately or publicly on GitHub and then proceed to submitting to PeerJ or other journals for formal peer-review or preprinting. Or perhaps this is where the traditional medium of publication begins to diverge. There is no end goal other than to see what the academic community wants, which is why this is completely open to fork, extend, and build upon.
Emailing word files between collaborators
You have gone beyond my ability to help you.