Math and short-code authoring guide
Use this guide when adding or revising a module. The same notation should render in GitHub and on the curriculum’s GitHub Pages site.
Equations
Use GitHub-compatible TeX syntax. Write short expressions inline, such as $\mathrm{Fo}=\alpha t/L^2$. Put a long or referenced equation on separate lines with a blank line above and below:
Define every symbol at first use, including its unit where it carries a physical dimension. For the expression above, MAE has the same unit as the target $y$; n is a count; and $\hat{y}_i$ is the prediction associated with observation $i$. Do not use an equation image when editable TeX is possible.
The repository’s Markdown pages render $...$ and $$...$$ natively on GitHub. The head-custom.html configuration loads MathJax 3 for GitHub Pages and also accepts \(...\) and \[...\] from legacy pages. New material should use dollar delimiters consistently.
Short-code demonstrations
Use the short-code demonstrations as the model:
- Begin with an engineering quantity, its unit, and a bounded assumption.
- Show the smallest executable calculation that exposes one ML or AI concept.
- Print a metric or limiting-case check; do not present training loss or a successful run as validation.
- End with a modification and explanation prompt that changes an assumption, split, threshold, constraint, or operating condition.
Keep examples public-safe and illustrative unless they identify a traceable data source, license, and evidence class. Do not embed student work, restricted data, credentials, or answer keys.
Preview before publishing
For Markdown-link and readiness checks, run:
python tools/check_course_integrity.py
For the compact examples, run:
python -m unittest tests.test_short_code_demos -v
GitHub Pages rendering depends on the external MathJax content delivery service. If a browser blocks that service, the TeX source remains visible and editable, but rendered equations cannot be confirmed in that browser.