Novinky možností zpracování textových a interaktivních dokumentů

Během setkání KEE s doktorandy 15. ledna jsem se snažil v prezentaci upozornit na posun v možnostech využívání IT v akademickém prostředí pro kreativní práci a zejména tvorbu dokumentů a prezentací jednotně a systematicky.

Jako dodatek k podrobné informaci o této možnosti v druhé části tohoto textu upozorňuji na technologickou provázanost s nástroji pro tvorbu interaktivních dokumentů.

Prezentace 15. ledna a systém Markdown

Ačkoli respektuji jako nejkvalitnější a nejobecnější systém pro tvorbu dokumentů jazyk a prostředí značkovacího jazyka TeX (potažmo LaTeX), v poslední době se naskytla velice lákavá zjednodušující možnost jak tvořit téměř stejně dokonalé výstupy jen s minimální náročností odpovídající jen minimálním potřebným schopnostem psát elektronickou poštu (je to poněkud s nadsázkou, ale tak zní motto autorů systému). Tohoto nástroje (značkovacího jazyka dokumentů) dnes široce využívají tvůrci software pro tvorbu dokumentace (zvláště u projektů uložených na serveru GitHub).

Téměř zázračný princip se jmenuje Markdown. Má (bohužel) již mnoho dialektů, ale základ je stejný. Jako aktuálně široce používaná verse s dostatečným spektrem schopností se mi ukázala verse definovaná pro konverzní nástroj PanDoc.

Tento text i vzpomínaná prezentace byly vytvořeny právě v tomto nástroji. Jeho nespornou výhodou je bohatá paleta výstupních formátů. Jako příklady z mnoha dalších možností (viz obrázek v prezentaci) je možno ukázat prezentaci v následujících formátech:

Pro zprovoznění možnosti psát dokumenty v tomto formátu není potřeba mnoho:

Interaktivní poznámkové dokumenty

V posledních letech se pro publikování postupů, metodik, návodů, nebo jejich zpracování výpočtem včetně přístupu k databázím, těší velké oblibě interaktivní notebooky. Kromě základního prapůvodního prototypu vytvořeného nad rozšířenou příkazovou konzolí jazyka Python pod názvem Jupyter notebook jsou to jak projekty na něj navazující, tak další založené na jiném principu či platformě, například:

Výhodou otevřeného standardu Jupyter notebooku je možnost využít mnoha volných online služeb, podpora univerzálního jazyka Python nebo i dalších (například GNU Octave, jako určité alternativy MATLABu zdarma).

Souvislost s výše popsanou metodou tvorby dokumentů spočívá v tom, že textové části notebooku Jupyter jsou přirozeně respektující právě formát zápisu Markdown. Tím dochází ke konsolidaci tvorby obecných textů a interaktivních dokumentů.

Pro účely ukázky možností takových dokumentů jsem připravil relativně jednoduchý (ale zobecnitelný) příklad řešení elektrického obvodu. Ne-interaktivní forma tohoto notebooku je pouze informativní.

Pro plnohodnotné využití je nezbytný běh notebooku na veřejném serveru. V prostředí ZČU se jeví jako velice vhodné využít vnitřního systému Google aplikací alias gapps.zcu.cz do kterého je přístup pro všechny zaměstnance i studenty volný s využitím Orion hesla a s dostatečným výkonnostním i diskovým zázemím. Toto řešení má výhodu v jednoznačném udělení páv pro zobrazení, stahování či úpravy notebooků.

Plnohodnotná verse příkladu je přístupná zde: Zcela-interaktivní forma.

Za povšimnutí stojí jak možnost měnit zadání v textu, tak interaktivně a popřípadě upravovat celou metodu výpočtu bez toho, aby vzorový dokument byl poškozen. Stačí si vytvořit vlastní pracovní kopii notebooku. Pro první inicializaci a provedení kódu všech buněk je nutné zvolit v menu Runtime volbu Run all nebo použít klávesovou zkratku CTRL+F9.