Abstract¶
Explanations or analysis that start in a Jupyter Notebook are often required in other contexts - such as reports, presentations, papers, or tutorials. To create these other documents, Notebook content is duplicated using screenshots or copy/paste of text and images. Unfortunately, this copy/paste style of creating documents does not create links to the original notebook, and provides limited avenues for contribution from where that content is used downstream (e.g. improving explanations, fixing typos, etc.). Similarly, if an analysis or explanation is updated (e.g. a new figure), the reports or presentations that make use of that content must manually be made aware of those updates.
To link these downstream documents build-chains are required, which is often too onerous for presentations or reports, and requires context switching for any downstream contribution. For example, an “Edit on GitHub” button in documentation/books requires knowledge of Git, GitHub, and Markdown/RST, which remains a high bar for potential non-technical contributors.
In this presentation we introduce a tool, Curvenote, that allows you to sync content between Jupyter Notebooks and a web-based, collaborative document editor. This allows you to track cells and content between Jupyter Notebooks and edit that content directly in downstream documents - while maintaining attribution, version history, as well as making any updates available in the original notebook through a Jupyter Lab/Notebook extension.
Our goal with these tools is to encourage linking and reuse of content and the integration of interactive, explorable explanations that live in contexts beyond the Jupyter Notebook. In this presentation we will share some of our experience of creating educational materials and software tutorials (e.g. in SimPEG and GeoSci.xyz), where one of our goals is to encourage contribution from non-technical contributors and share the educational content between projects (e.g. through figure, equation and question banks, see a lightning talk here, and a previous JupyterCon talk). We will also describe how these developments interact with recent work in JupyterBook and MyST.
The poster will present the parallels between programming and writing (building upon a SciPy talk), and how concepts like “package managers” for content and standards for “interactive writing” could impact the communication of scientific ideas.
Jupyter Integration¶
Curvenote provides a plugin to Jupyter to allow syncing and versioning of notebooks and their individual cells (see Figure 1). These cells can be updated and synced between notebooks as well as evolve from a notebook into other linked forms of communication (e.g. reports, papers, presentations). The iooxa platform lets researchers create granular versions of their work and bring updates/comments back into their computational notebooks without disrupting other sharing practices (e.g. via GitHub, email, Dropbox). The current version allows integration of charts and dashboards into documents, while remaining interactive (e.g. see https://
The content of the figures below is from a collection of educational notebooks we helped develop for locating groundwater in Myanmar using geophysical methods, the project was in partnership with Geoscientists Without Borders.
![Chrome extension for Jupyter. Easily add version control and real-time commenting at both a cell and notebook level. Notebooks and cells can be reused, modified and extended in Curvenote.](https://cdn.curvenote.com/0190c7d6-6605-760b-a641-e61f60fda1a0/public/AVQ2dzLNloEd25Io8NbA-45933c4ed6c6df04c9e496cb66bd9f56.png)
Figure 1:Chrome extension for Jupyter. Easily add version control and real-time commenting at both a cell and notebook level. Notebooks and cells can be reused, modified and extended in Curvenote.
![Create dynamic documents using Curvenote and publish them to your profile. The outputs from a Jupyter Notebook can remain interactive as well as be linked to where they were produced. The Curvenote environment allows for rich, real-time document editing and collaboration all under version control.](https://cdn.curvenote.com/0190c7d6-6605-760b-a641-e61f60fda1a0/public/AVQ2dzLNloEd25Io8NbA-936baac17cae1e68abd55396510a1491.png)
Figure 2:Create dynamic documents using Curvenote and publish them to your profile. The outputs from a Jupyter Notebook can remain interactive as well as be linked to where they were produced. The Curvenote environment allows for rich, real-time document editing and collaboration all under version control.
Related Posts
Other resources from Curvenote tagged presentationopen-sourceconference
![Curvenote at SciPy2024](https://cdn.curvenote.com/0190c7d6-6605-760b-a641-e61f60fda1a0/public/scipy2024-proceeding-bf054540042734bda37a27ab44b09ab3.png)
Curvenote attended and sponsored SciPy2024, hosting the proceedings, presenting on MyST Markdown and sprinting towards new integrations in the wider scientific Python community.
![Embracing Reuse in Scientific Communication](https://cdn.curvenote.com/0190c7d6-6605-760b-a641-e61f60fda1a0/public/open-science-reuse-5e207e9026efeeaedbaefb2905a05b5d.png)
The ability to build upon existing knowledge is fundamental to the process of science. Yet, despite the rapid advancement of science, the methods for citing and referencing content have remained surprisingly static. Curvenote is introducing new tools in MyST Markdown to create rich references and embed open-access content.
![Publishing Computational Notebooks at AGU23](https://cdn.curvenote.com/0190c7d6-6605-760b-a641-e61f60fda1a0/public/publishing-computati-a8d09fb67fa4443d7a527f0e9debdb82.png)
Curvenote launches Notebooks Now! at the American Geophysical Union Annual Meeting in San Francisco, where 20,000+ scientists descended on Moscone Center for five days of wide open science.
![Research Software Engineering Conference 2022](https://cdn.curvenote.com/0190c7d6-6605-760b-a641-e61f60fda1a0/public/research-software-en-23b895bf7d9ae1e459d6f787f82ba819.png)
We are presenting a walkthrough of Curvenote’s publishing capabilities at RSECon 2022, in Newcastle.
![Metadata and Reproducibility](https://cdn.curvenote.com/0190c7d6-6605-760b-a641-e61f60fda1a0/public/international-data-w-eaa003631cc2664fd94fbf167098e2d5.png)
Enhancing FAIR Data Workflows through use of PIDs in Curvenote and beyond.
![Future of Research Communication & Collaboration](https://cdn.curvenote.com/0190c7d6-6605-760b-a641-e61f60fda1a0/public/future-of-research-c-856b94f0820c1089296666405e6ca058.png)
A presentation on the challenges with today’s tools for research communication & collaboration, and present a vision for the future.