Contribute Media
A thank you to everyone who makes this possible: Read More

Python + Org-mode for fluent output generation of scientific research

Description

Generating outputs (plots, tables, and texts) is an essential part of scientific research. Usually they are generated with scripts (either .py or.ipynb`), and a natural way of maintaining these scripts is using either a long script file or multiple short files.

When one has to update these outputs, the usual workflow is: 1) find the file(s) and code block(s) inside the file that contains the code for output generation, 2) re-learn what you did so you can edit the code, and 3) run the code to generate new outputs.

Each of these steps has a cognitive overhead (non-fluency), which hampers your productivity, especially if it has been a while since you looked at them. Using IPython Notebook facilitates some of the procedures but it does not solve everything.

In this talk, I introduce org-mode and some of its functionalities for all three steps. org-mode is ideal for managing these tasks because it can minimize the non-fluency. It has a convenient and flexible markup syntax for hierarchical documents. It uses tree-like headlines, which make it very easy to organize code and text. It provides a convenient way to collapse or expand headline blocks and navigate through them. In addition, one can execute a code block or export the results (or the source code itself) conveniently inside org-mode. Theoretically, one can have the entire contents and code for a paper and a presentation inside one org file. I show examples of how one can leverage these functionalities to maintain outputs.

Details

Improve this page