A Rapid Workflow for Publishing CS Teaching Materials
Russell Gordon
Lakefield College School
Motivation
Avoid fiddling with GUI-based page layout, slides, and diagramming software.
Motivation
Satisfy 80/20 rule.
Motivation
Meet the needs of English language learners.
Benefits
Syntax-highlighted code blocks for most languages.
# Greet the world using a function in Python
def hello_world():
return "Hello, world!"
Benefits
Math notation using LaTeX: single-line.
Benefits
Math notation using LaTeX: multi-line.
Benefits
Inline math notation using LaTeX:
Videos take at least
units of time to author where is the length of the video in question.
Benefits
Mermaid: left-right flowchart.
Benefits
Mermaid: top-down flowchart.
Benefits
Mermaid: sequence diagram.
Benefits
Mermaid: class diagram.
Benefits
Mermaid: state diagram.
Benefits
Mermaid: entity-relationship diagram.
Benefits
Mermaid: user journey diagrams.
Benefits
Mermaid: Gantt charts.
Benefits
Mermaid: pie charts.
Benefits
Mermaid: git graph diagrams.
Benefits
Add images quickly by drag and drop.
Benefits
Use animations to convey key concepts without distraction.
Benefits
Focus on content, not presentation, by writing in Markdown.
Benefits
Your data is stored in plain text files – less potential for lock-in.
Benefits
Link quickly to existing content.
Benefits
Publish a searchable site.
Benefits
Free hosting (at Netlify or Vercel).
Drawbacks
Dependencies on:
- Obsidian
- Digital Garden plugin.
- GitHub
- Netlify or Vercel
Personal Conclusion
Benefits outweigh potential for software failure.
Better than manually writing HTML, using a word processor, or a proprietary content management system.