Skip to Main Content

Computational Publishing

Overview and Examples of Computational Publishing

Digital Publishing Librarian

Profile Photo
Adam Mazel
he / him / his
Office 264C (Second Floor East Tower)
Herman B Wells Library

What is Computational Publishing?

Computational Publishing (CP) is often-free software that makes data-science documents--those that blend rich text and live code--publishable on the web and interactive. CP enables those documents to be run, modified, and added to by readers without readers needing to install anything and without altering the original document. It does so by providing readers with both an instance of the document and the computing environment necessary to run the code, so readers anywhere, regardless of their software, can access and interact with data-science documents also as writers. 

This makes CP particularly apt for creating:

  • interactive scholarship: for example, CP allows scholars to publish data analyses into which readers can input different queries to pursue further insight, as exemplified by the Journal of Digital History
  • reproducible research: similarly, CP enables readers to have the same software as the writer, so readers can test the writer's code under the same conditions, also exemplified by the above and explained further in this chapter
  • educational materials: lastly, CP makes data-driven educational resources, such as textbooks that contain code-based assignments or activities, sharable and interactive: these can be distributed by faculty to students, who can carry out the assignment and then return it to their teachers for grading and commentary, which in turn can be returned to the students. 

Interactive Guide to + Example of Computational Publishing

As the best way to understand computational publishing is to experience it, this guide provides an interactive guide that at once explains and exemplifies CP. 

The interactive guide is a Jupyter Notebook that contains both text formatted with Markdown and code written in the Python programming language--its small, entry-level code section is for you to interact with (modify, run, etc.) to experience a little of what CP enables. The guide is made interactive by Binder. (These software are described in the interactive guide.)

To access the interactive CP guide, click the following badge MyBinder badge , which is the standard icon for launching Binder-based CP. This badge will open the CP guide's Binder launch page. The “spinner” in the middle of the page signifies the processing going on in the Binder backend that will launch the guide. Please be patient (it can take more than a few minutes) as the guide launches. If the loading takes longer than desired or if there is an error, you can access the guide in non-interactive mode by scrolling to the Preview window and clicking on mazel_CP_guide.ipynb.

When the interactive guide launches, it will open a JupyterLab interface containing an interactive Jupyter Notebook CP guide. To open the interactive CP guide, click the file mazel_CP_guide.ipynb in the leftmost column.

You can then read and interact with the now-opened guide. To modify a section, double click on it (most apt is the code section). To execute your changes (or to exit the modification interface), click the Play (triangular) icon in the icon menu at the top. 

Your changes will not be saved and will not modify the original guide.