My Workflow in 2020

10 minute read

A table documenting how long you can work on making a routine task more efficient before you're spending more time than you save.
Is it worth the time? (CC BY-NC 2.5 by XKCD)

I’ve worked in academia now for a decade. I tend to test out different tools and ways of doing things. Here’s how I’m working in 2020.

This is written for two audiences: for my future self and other academics who are interested in knowing how other people have solved similar problems.


I have a MacBook Pro (Retina, 13-inch, Mid 2014) I work on. For a six year old laptop it works great. It even has some USB connectors and a HDMI port, because it’s from before Apple decided that people don’t actually want to connect their computers to anything. This is the first MacOS device I’ve used, but since I’ve used Linux for years the Unix similarities helped me get started. Importantly, it has a working terminal emulator, with all the things you would expect from one.

Other stuff I regularly use for work:

  • Kobo Aura H2O Edition 2
  • iPhone XR (I’m a games researcher, so I got an iPhone to play mobile games on)


I read a lot: journalism, essays, articles, books etc. Staying up-to-speed with everything that is going on in games, philosophy and digital culture takes a lot of time – usually more than I actually have.

There are three important tools I use to read stuff. If I see interesting articles online, I save them to Pocket. I don’t have any fancy ways of tagging or categorising these, since I can usually find older texts by using search. I’ve found I rarely return to older articles, so it hasn’t been important so far.

One reason I use Pocket is that I can automatically sync everything to my Kobo e-reader. That way I can read interesting articles on a nicer screen. I already stare most of my day at a glowing screen, so the e-ink is a nice change.

I also use the Kobo e-reader to read books, with varying success. You can buy DRM-free books from some publishers, but getting the books my university library provides onto the Kobo is quite a hassle. I’ve been thinking of simply cracking the DRM on the library books, but haven’t been that desperate yet – it’s not particularly hard, but rather annoying that I would need to do that for books I have legitimate access to. (If you can, publish your e-books without DRM. DRM does little to stop piracy, but makes it more difficult for honest people to read your books.)

Another challenge is that most academic e-books are still available only as PDFs, which is not a great format for e-readers – it has to be the right size for your device or you’re stuck zooming every time you turn a page. But I’ve managed to read a few academic books on my e-reader this year, both as PDF and EPUB files.

For reading articles, I use Zotero and my computer’s default PDF reader. I collect everything I want to read or might want to reference into my Zotero library. Currently, it has 2519 documents, after some considerable pruning. I’ve tried other reference management software, but Zotero seems superior: it works, is developed by a non-profit and is open-source. It has great interoperability and plugins, which is important for my writing workflow.

Reading PDFs on a laptop screen is not great. Previously I used a tablet for reading articles (it broke). It was slightly more comfortable, but still required staring at a glowing screen for hours on an end. Printing everything seems wasteful, so instead I recently pre-ordered the Remarkable 2 e-ink tablet. I hope it turns out to be a good solution.

One reason I want to read on a screen is that I make notes on the PDFs while reading and then export them by using the ZotFile plugin for Zotero. That way I have both the articles and my notes on them in one place. Zotero has full text search, so I can easily find specific texts based on vague recollections of what the text said about something or the notes I made.

When I find an article I should read, I add it to a To Read folder in Zotero (the browser plugin makes this really easy). It tends to accumulate more articles than I can read, so I regularly remove things. Even so, I’m currently reading articles added in early 2017, so I need to catch up on three years of reading. There are probably better ways, but I haven’t figured them out yet.

Zotero also supports RSS feeds, and surprisingly many publishers publish feeds for their journals. This is probably the easiest way to keep up with new publications. I currently follow nine journals for all their new articles. I don’t actually read most of those: when I see an article I should read, I add it to the To Read folder in Zotero. This is easy, but actually reading the articles is not, explaining the three year backlog.


I tend to write in two different ways. When I collaborate with other people, I try to use whatever tools they are familiar and comfortable with. My workflow tends to use more obscure tools, so I don’t expect other people to know them. More often than not, collaborations end up on Google Docs. I’m not a big fan of Docs, mostly because it’s run by Google and I prefer not being data mined for profit. But Docs is what most people seem to prefer, so that’s what I end up using.

Almost everything else I do in Vim (Neovim, to be more specific). It’s not a word processor; it’s a text editor that runs in your terminal emulator. That means that I write text with minimal styling. If you’ve ever used Notepad, you know what a text editor is. Vim is like that, but with about three decades of development to make it do everything you might want to. I’ve configured it to my liking and use plugins to make it more suitable for my purposes.

When I’m writing articles (or anything else) by myself, I write them using Vim in the Markdown markup language. When I need to send files in to other people, I use pandoc to convert from markdown to other formats – usually PDF or docx. This may sound complex, but the benefit is being able to write everything using the same program and because pandoc supports conversion to almost anything, I can easily get a file in whatever format I happen to need. I have a bunch of templates for pandoc that I use to get documents that look different, like article drafts, CVs etc.

This is also where Zotero shines: I have a plugin for Vim that allows me to easily add references without leaving my text editor. (If you’re making reference lists by hand in 2020 you must want to punish yourself.)

A picture of a terminal emulator, showing this post being edited on Vim
Writing this article in Vim

I still occasionally need to start Microsoft Word. It’s the format I get most files sent to me and it has good commenting tools, which is pretty much the only task I use it for.

There is one specialised program I use for writing notes: nvALT. I like tools that do one thing, and only one thing, but do it exceptionally well. NvALT is one of those. You press one key combination to bring it up, and start writing. Either a note with that text pops up, or you start a new note with that text. It’s lightning fast and stores everything as regular text files, so I can also easily edit them with Vim. You could fancier things with nvALT, but I just use it to quickly write down everything I might want to remember later.

I also use Scrivener for editing a book manuscript. It’s literally built for that specific purpose and is probably the best tool available. For typing down things, I prefer Vim, but writing a book is mostly about managing stuff like structure and cohesion, where Scrivener shines.

I got myself a physical notebook in 2017 and filled it out at the beginning of 2020. I have a new one and regularly write in it, but I haven’t found a particularly good use for it. Sometimes I use it more and sometimes I don’t use it at all for some time. It seems to be most useful for focused thinking, when I want to figure out how to present ideas. I can then turn those notes into a fuller outline when writing at my computer.


I still use email more than anything else to communicate with people. It’s easy to use, standardised and has great tools for all operating systems. That doesn’t mean that all tools are great. When I got this computer, I used Microsoft Outlook (our university email is provided by Microsoft). It annoyed me to no end, so I tried to find alternatives. The built-in Apple Mail was surprisingly good, so I used it for quite a while. Eventually I ran into something that irritated me, but couldn’t be changed (I already forgot what it was) and switched to mutt (or neomutt, to be exact). It’s not perfect, but at least when I run into something that annoys me, I can probably change it.

Like Vim, mutt is a terminal program. It doesn’t show images and you can’t even write emails with it. Instead, you hook it up to other programs better suited for those purposes. When I want to write an email, mutt opens Vim for me. Mutt can also be customised a lot: the configuration file is currently 126 lines long – and sources other files. I’ve spent hours configuring it to work like I want it to, and might spend hours more. But considering that I quit both Outlook and Apple Mail because I couldn’t get them to work like I wanted to, this is probably closer to how I want to read my email.

I use offlineimap to download my email and msmtp to send them. Lynx turns HTML emails into text and lbdb queries the address database for email addresses. Using offlineimap means that I have a local copy of all my emails, in case I need to check something while offline. That is not very likely, but I do regularly travel by train and the connection there tends to be spotty.

There’s also a bunch of other programs I have used for communicating with colleagues like, Discord, Slack and Microsoft Teams. They’re not terrible, but haven’t replaced email for me. Slack is probably the most useful, but only because it replicates most of the features that are taken for granted in email, like threaded discussions.

Thanks to remote work, I need to sit in remote meetings. Like everyone else, our university adopted Zoom as the goto solution for remote teaching and most meetings. Microsoft Teams also supports video calls, and we occasionally use that for calls between colleagues. There are also some people I talk to mostly on Skype. The good thing about having so many options is that if something fails, it’s often simpler to just move to some other tool rather than try to troubleshoot why one particular person doesn’t have sound on this one.

Backups & File sync

I try to think of my computers as temporary tools. Eventually they break down and I have to use a new one. Hardware can have flaws, so it might happen whenever. Luckily, my university supports Nextcloud, so I automatically sync all work files there. The only exception is some larger datasets, that I have manually duplicated, encrypted and moved to a university file server. Those data sets don’t change often, so I should need to do that again only if something goes wrong. Even in the case of a catastrophic system failure, I should be able to recover everything pretty quickly.

Nextcloud supports WebDAV connections, which means that I’ve also set up my Zotero to backup its database on the same Nextcloud instance. For some weird reason, you still need to register an account with the Zotero official servers, but after that you can change the synchronisation server to anything compatible.

I’ve ended up with these tools after testing all kinds of ways of working. I think there is only one thing in my workflow that is irreplaceable: Zotero. Managing large sets of articles is simply too much work without a searchable database. Knowing how often I otherwise change things, I might be using something completely different in a few years.