[논문 리뷰] You Only Write Thrice: Creating Documents, Computational Notebooks and Presentations From a Single Source
이 논문은 버전 관리된 마크다운 파일을 사용하여 단일 소스에서 학술 문서, 계산 노트북, 프레젠테이션을 통합된 워크플로우로 생성하는 방법을 제안한다. Git 기반 시스템 내에서 Jupyter Book, Jupyter Notebooks, reveal.js를 활용함으로써, 끝에서 끝까지의 버전 관리와 검토 지원을 제공하는 재현 가능하고 상호작용적이며 투명한 학술 커뮤니케이션을 가능하게 한다.
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/.
연구 동기 및 목표
- 다양한 형식의 학술 산출물—논문, 프레젠테이션, 노트북, 포스터—이 별도로 관리되는 버전의 형식으로 분산되어 유지보수와 일치가 어려운 문제를 해결하기 위해.
- 다양한 형식 간에 내용을 작성하고 수정하는 부담을 줄이기 위해 모든 것을 단일 소스로 통합하기 위해.
- 버전 관리 및 이슈 기반 검토와 같은 소프트웨어 공학 관행을 도입함으로써 학술 출판의 투명성과 기록 추적성을 향상시키기 위해.
- Jupyter 생태계의 오픈소스 도구를 활용해 상호작용 가능하고 실행 가능한, 접근성이 높은 학술 산출물을 제공하기 위해.
- GitHub와 같은 플랫폼에 컨텐츠를 호스팅하고 통합된 검토 워크플로우를 제공함으로써 지속 가능하고 재사용 가능하며 공동체 중심의 학술 커뮤니케이션을 지원하기 위해.
제안 방법
- 모든 컨텐츠의 유일한 진리 기준으로 확장된 마크다운(마이스트 플레버)을 사용하기 위해.
- 동일한 소스에서 Jupyter Book 기반 문서를 생성하여 상호작용 가능하고 실행 가능한 웹 기반 수기 문서를 제작하기 위해.
- 동일한 소스에서 Jupyter 노트북을 생성하여 계산 재현성과 실시간 프로그래밍을 지원하기 위해.
- 동일한 소스에서 reveal.js 기반 슬라이드 셋을 생성하여 동적이고 상호작용 가능한 프레젠테이션을 제작하기 위해.
- 버전 관리 및 이슈 추적 기능을 갖춘 GitHub에 소스를 호스팅하여 학문적 검토 과정을 소스 코드처럼 투명하게 만들기 위해.
- Jupyter Book, Jupyter, reveal.js와 같은 오픈소스 도구를 활용해 접근성, 상호작용성, 기기 및 플랫폼 간 호환성을 보장하기 위해.
실험 결과
연구 질문
- RQ1단일 소스 문서를 사용하여 중복이나 일관성 문제 없이 논문, 노트북, 프레젠테이션과 같은 여러 학술 출력 형식을 생성할 수 있는가?
- RQ2소프트웨어 공학에서 유래한 버전 관리 및 이슈 추적 기능을 학술 출판의 투명성과 추적 가능성 향상에 어떻게 적용할 수 있는가?
- RQ3상호작용 가능하고 실행 가능한 콘텐츠를 학술 산출물에 통합할 수 있는 정도는 어느 정도이며, 접근성과 장기적 지속 가능성은 유지될 수 있는가?
- RQ4전통적인 PDF 중심 워크플로우를 대체하여 동적이고 웹 네이티브 기반의 출판 모델로 전환할 때 발생하는 실질적 과제는 무엇인가?
- RQ5GitHub와 같은 공동체 중심 플랫폼이 코드 공유를 넘어서 학술 컨텐츠의 생성, 검토, 배포를 어떻게 지원할 수 있는가?
주요 결과
- 제안된 워크플로우는 오픈소스 도구를 활용해 단일 마크다운 소스 파일에서 세 가지의 서로 다른 학술 산출물—문서, 계산 노트북, 프레젠테이션—을 성공적으로 생성한다.
- Git 기반 버전 관리의 사용으로 수정 이력을 완전히 추적할 수 있으며, 소프트웨어 개발과 유사한 투명하고 검증 가능한 출판 라이프사이클을 지원한다.
- 실행 가능한 코드 블록과 동적 시각화와 같은 상호작용 콘텐츠가 생성된 출력물에서 네이티브로 지원되어 재현성과 참여도를 향상시킨다.
- 웹 표준 준수와 보조 기술(스크린 리더, 탐색 보조 도구 등)과의 통합을 통해 접근성이 유지된다.
- 정적 HTML, PDF, EPUB 내보내기를 통해 온라인 액세스와 오프라인 브라우징을 모두 지원하여 다양한 기기와 플랫폼에서 광범위한 접근성을 확보한다.
- 공개된 호스팅된 개념 증명 예시(https://so-cool.github.io/you-only-write-thrice/)를 통해 전체 파이프라인을 실시간으로 시연함으로써 이 접근법의 실현 가능성을 입증한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.