Academic trade requires juggling multiple variants of the same content published in different formats: manuscripts, presentations, posters and computational notebooks. The need to track versions to accommodate for the write--review--rebut--revise life-cycle adds another layer of complexity. We propose to significantly reduce this burden by maintaining a single source document in a version-controlled environment (such as git), adding functionality to generate a collection of output formats popular in academia. To this end, we utilise various open-source tools from the Jupyter scientific computing ecosystem and operationalise selected software engineering concepts. We offer a proof-of-concept workflow that composes Jupyter Book (an online document), Jupyter Notebook (a computational narrative) and reveal.js slides from a single markdown source file. Hosted on GitHub, our approach supports change tracking and versioning, as well as a transparent review process based on the underlying code issue management infrastructure. An exhibit of our workflow can be previewed at https://so-cool.github.io/you-only-write-thrice/.
翻译:学术贸易需要将以不同格式出版的内容:手稿、演示文稿、招贴画和计算笔记本等多种不同内容的变体混在一起。需要跟踪各种版本,以适应写作-审查-审查-校正-校正-校正-生命周期,这又增加了一层复杂性。我们提议通过在版本控制环境中维持单一源文件(如Git)来大幅减轻这一负担,增加功能以生成学术界受欢迎的产出格式集。为此,我们利用了来自Jupyter科学计算生态系统和操作选定的软件工程概念的各种开放源工具。我们提供了一种校对-概念的流程,该流程将组成Jupyter Book(在线文件)、Jupyter Notebook(计算性叙述)和披露。j 以 GitHub为主的单一标记源文档幻灯片,我们的方法支持根据基本代码管理基础设施进行变更跟踪和版本,以及透明的审查过程。我们的工作流程展览可在https://so-cool.github.io/yoyou-ly-strite-thrice/上进行预览。