Open Research Tools and Technologies
Emacs and org-mode for reproducible research
Organize your research in plain text!
This presentation illustrates how the GNU Emacs text editor provides
an powerful integrated environment for reproducible research,
effectively bypassing the need for juggling different software in
order to write and execute code, manage data or write papers. GNU
Emacs as a long history, and is still widely used and supported by a
very active community of users and developers. A very popular feature
of GNU Emacs is Org-mode which, at its core, offers a markup language
similar to Markdown.
Following a brief introduction to Org-mode, this presentation
demonstrates its use for reproducible research: straightforward mixing
of prose and code, execution of code blocks as well as display of the
results. With Org-mode, GNU Emacs is turned into a computational
notebook which functionalities goes well beyond popular alternatives
such as Jupyter. Code blocks are not restricted to a particular
programming language and data can be passed between them: generate
data in C, analyse it in Python, visualise it with R, all in one
single executable document. Moreover, Org-mode documents are nothing
but plain text, making them inherently portable, sustainable, and
suited to version control - crucial qualities for academic research.
Moving on, I illustrate the export of Org-mode documents to richer
formats: PDF, ODT, HTML and many more - all from within GNU Emacs.
Lastly, I broaden the scope of this presentation and discuss the open
nature of GNU Emacs itself. Indeed, GNU Emacs is free (as in freedom)
software under a copyleft license. This ensures that GNU Emacs remains
sustainable, community-owned software: GNU Emacs will never be
"discontinued" or its features reduced inside a "community edition".
If GNU Emacs is widely used among GNU/Linux users, it is a rather
unusual component of nowadays researchers' toolbox. This presentation
is an opportunity for attendees to (re)discover GNU Emacs,
not so much as a code editor, but as a powerful tool for reproducible
research, from day-to-day data collection and analysis, all the way to
paper publication. Despite being over 30 years old, GNU Emacs comes
with with very modern ideas, highly relevant to today's discussions of
openness and reproducibility in scientific research. Beyond the tool
itself, this presentation is an opportunity to sparkle discussions on
the nature of research tooling. GNU Emacs has always been developed
and maintained in the open, and its license ensures that it will
always be. GNU Emacs maintenance and development is a collective,
not-for-profit effort of thousands of developers worldwide and anyone
wanting to make modifications to it is welcome to do so. This ensures
both reliability and sustainability, which are key characteristics for
any tool at the core of a reproducible research practice.