Writing articles for De Programmatica Ipsum made me adopt a workflow to read and annotate research papers. Most of the material that I use to write articles for DPI are papers, nearly all in PDF format, some with OCR’d text, some without (particularly older ones).
For years, I gathered and managed my collection of research papers using Mendeley, but there were at least three factors that made me reconsider my decision: first, it belongs to Elsevier, a company whose track record with researchers is questionable (I’m being polite here); second, it’s a closed source system; and third, it actually sucks. Of course this is a subjective opinion, and I’m sure there’s people who like Mendeley, but I didn’t.
So I started looking around, and Zotero caught my attention around 2021. It’s 100% open source, cross-platform (my migration to Linux was complete, but knowing that I can use the app in other operating systems is a nice plus), supported LibreOffice and other word processors, it worked quite well, and there were a lot more reasons why I loved it.
My research workflow is very simple: I find an interesting paper on the Web, I download the PDF and then I drag-and-drop it on top of the Zotero library; this is something that you can automate with the Zotero Firefox extension, by the way. Most of the time Zotero is able (somehow) to figure out all the metadata of the paper, and automatically fills details such as title, abstract, authors, date of publication, and even its DOI number. If not, it’s not that complicated to do, and it keeps your papers neatly filed.
Zotero then allows you to group papers into collections, to assign tags to them, and of course, to read and annotate them in various ways: highlighting, drawing, adding post-it notes, etc. The built-in search mechanism is snappy and fast. Right-click and copy to your clipboard a bibliography citation using the Chicago, Harvard, or any other style you want, ready to use in an article.
Zotero 6 (released in 2022) had a night mode built-in, but it did not turn PDFs dark (good luck reading papers at night without a headache); in those days, this plugin did precisely that, but Zotero 7 (released in August of last year) came with such functionality built-in, so no need to install a plugin anymore1.
(Although I’m using Sioyek nowadays for my PDF reading purposes, and it’s so awesome it deserves an article of its own. I have configured it as an external PDF reader in Zotero, and it also comes bundled with a configurable dark mode. I also added the zotero-open-pdf plugin, so that I can right-click on an item and open it in the built-in PDF reader, if needed.)
Zotero 7, by the way, is a fantastic release, including a built-in EPUB reader However, regarding Zotero 7 plugins, I’ve tried using this OCR plugin on Fedora 41 without success, but it’s not the end of the world.
To give you an idea, I have more than a thousand papers in my collection now, and Zotero has become such a central piece in my research workflows that I decided to become a paying customer of theirs. I downloaded the iOS app to my iPhone, and now I’m often reading papers on the way to work. The synchronization works exactly as expected, and it even syncs annotations and highlighted sections of papers.
So, there you have it. Zotero is now my go-to app for research and paper management, and I use it every day. It’s a fundamental part of the preparation of future editions of De Programmatica Ipsum, and now I’m a happy customer of theirs.
By the way, installing Zotero plugins I discovered that one shouldn’t just click on the file after download; this is because Firefox plugins have the exact same file extension “
*.xpi”, and it will try to install it on Firefox. Instead, you should “Save As” the plugin, and then manually install it in Zotero (don’t forget to restart the app to activate the new plugins). ↩︎