13 Sep 2023
I owe a debt of gratitude to many people as the thoughts and code in these slides are the process of years-long development cycles and discussions with my team, friends, colleagues and peers. When someone has contributed to the content of the slides, I have credited their authorship.
Scientific references are in the footer. Opinions and figures are my own.
Official: This course gives an overview of the state-of-the-art in statistical markup, reproducible programming and scientific digital representation.
Realistic: Hanne and Gerko will give you peek into our lives as opinionated developers. We will cover:
Week | Date | Focus | Location |
---|---|---|---|
1 | 13 Sep | Introduction to Markup Languages; and LaTeX | BOL 1062 |
2 | 27 Sep | Markdown in (most) Flavors | BOL 1025 |
3 | 01 Nov | Version Control and Development Flow | SGG 128 |
4 | 08 Nov | Reproducible Research Repositories | BOL 1025 |
5 | 22 Nov | Developer Portfolio | BOL 1025 |
6 | 06 Dec | Packages, Code Robustness and Unit Testing | BOL 1025 |
Important
We won’t use Blackboard. All materials can be found at
All contributions to this course are to be delivered to this repository
github.com/gerkovink/markup2023
Please post your content-related questions as an issue in the same repository
Deadline for all is Jan 8 2024. Grades will be available Jan 12 2024
You must submit a portfolio that proves
that you should cover at least
Quarto
and one of
A more comprehensive portfolio can result in extra credit in the form of a higher grade.
A markup language is a system for annotating a document that provides structure and meaning to the content, allowing it to be processed and displayed in a consistent manner across different platforms and devices.
markdown
is a lightweigt markup language that can be edited using any text editor, while being quick and easy to compile. It is nowadays widely considered as the language of the internet as it bridges most great attributes of other markup languages.quarto
is aimed at delivering reproducible, consistent Pandoc markdown documents that unify the best of all other markup languages.Important
Be careful with your online carbon footprint
In the grand scheme of things, trivial activities like emailing, chatting and video conferencing may seem insignificant. Collectively it adds up to a much larger carbon footprint than needed.
Everything that you do online is either energy or costs energy. And cloud storage means burning carbon for eternity.
Graphical (Word) Processors
Markup languages
If you prefere lists:
If you prefer arguments:
TeX
and \(\LaTeX\)TeX: Birth of a Typesetting Revolution
TeX
, a typesetting system.LaTeX: Building on TeX’s Foundation
TeX
.TeX
formatting commands, making it more accessible to a broader audience.\section
and \tableofcontents
.TeX and \(\LaTeX\): A Symbiotic Relationship
TeX
typesetting engine, allowing users to create professional documents and presentations.TeX
and LaTeX
excel at typesetting with precise control over fonts, layout, and mathematical notation.LaTeX
’s native support for mathematical notation makes it the go-to choice for scientists, engineers, and mathematicians.LaTeX
.LaTeX
documents can be easily managed using version control systems like Git
(Wk 3).LaTeX Ecosystem: A vast collection of packages and templates is available on CTAN to cater to diverse document types.
Long-Term Stability: Documents created with TeX and LaTeX have a long shelf life.
TeX
is software, it ensures compatibility across different platforms and software versions.LaTeX
and the basics of LaTeX
for scientific writing. see this week’s labOverleaf is an online LaTeX
editor that allows users to create, edit, and collaborate on LaTeX
documents in real time.
It’s a cloud-based platform that eliminates the need for local LaTeX
installations and simplifies the collaborative writing process.
LaTeX
documents in the cloud, so you don’t need to configure or run LaTeX
locally.Internet Dependency: Overleaf requires a stable internet connection.
Limited Offline Access: Overleaf operates online, which means no internet, no access to the convenience of Overleaf.
Privacy Concerns: Sensitive or confidential documents may not be suitable for upload to Overleaf. You should always consider data privacy!.
Subscription Costs: basic Overleaf is free, but more advanced features and collaboration options are costly.
LaTeXdiff
LaTeXdiff is a tool (PERL
script) used to highlight and track changes between two versions of a LaTeX
document.
It’s particularly useful for collaborative writing and when reviewing or revising documents.
LaTeXdiff
WorksLaTeXdiff
operates by comparing two LaTeX files:
document-v1.tex
)document-v2.tex
)LaTeXdiff
identifies differences in the text, equations, figures, and more. LaTeXdiff
then generates a new LaTeX
file highlighting these differences, using color coding, strikethrough and other visual cues.
LaTeXdiff
in theory and practiceLaTeX
LaTeXdiff
Markdown + hand in the exercise in this week’s lab
Gerko Vink and Hanne Oberman - Markup Languages @ UU