The transformer was being trained sequentially on reversal then copying,
which caused it to "forget" reversal before the mixed task. Now we
reinitialize the model before challenge 3 so it learns both tasks
together with proper prefix conditioning.
- Skip "sync to profile" prompt when not in interactive terminal
(was hanging in CI waiting for input that never comes)
- Increase milestone timeout from 180s to 300s for heavy milestones
(CNN and Transformer training can take 2-3 minutes on CI)
Bug Fix:
- Export failures now return early in module complete, preventing
progress from being updated when export fails. This fixes the issue
where students could start Module 02 even though tensor.py was
never exported.
New --user-journey test:
- Simulates exact student flow: module start --no-jupyter → module complete
- Runs milestones at natural unlock checkpoints (not all at end)
- Milestone checkpoints: after modules 03, 08, 09, 13, 19
- Explicit step-by-step output for easy CI debugging
New --no-jupyter flag:
- Added to 'tito module start' for CI/testing
- Creates notebook but skips opening Jupyter
Ref: https://github.com/harvard-edge/cs249r_book/discussions/1147
- Name the problem: "algorithm-systems divide"
- Name the approach: "implementation-based systems pedagogy"
- Add concrete systems examples (O(N^2), Adam 3x memory)
- Include MLPerf-style benchmarking in milestones
- Strengthen citable terminology throughout
Improvements based on PR #1105 by @rnjema:
- Add get_platform() function for OS detection
- Use $PYTHON_CMD -m pip for more reliable pip invocation
- Show Windows-specific guidance during installation
- Add text=auto to .gitattributes for cross-platform line endings
Closes#1078
Co-authored-by: rnjema <rnjema@users.noreply.github.com>
- Convolution: Position(1,1) result 8→7, final output corrected
- Pooling: Fix element lists and average values for bottom windows
- Matrix multiplication: Fix docstring results 13→16, 37→49
- Neural network layer: Fix matmul results in forward pass example
Fixesharvard-edge/cs249r_book#1144
- Remove @ngbolin from book/.all-contributorsrc (incorrectly added)
- Keep @ngbolin in tinytorch/.all-contributorsrc with 'doc' type
- Regenerate README tables
- Add configuration block at top for easy customization
- Fix project detection to check trigger line first (not just issue context)
- Improve LLM prompt with explicit JSON schema and examples
- Add project aliases support (e.g., 'tito' -> 'tinytorch')
- Fix @ngbolin contribution type (test -> doc)
Position (1,1) with region [[6,7],[0,1]] and kernel [[1,0],[0,1]]
correctly computes to 6×1 + 7×0 + 0×0 + 1×1 = 7, not 8.
Fixesharvard-edge/cs249r_book#1144
- Switch from fontspec/TeX Gyre to standard fonts (mathpazo, helvet, courier)
- Replace emoji package with no-op (title is just "TinyTorch")
- Switch from biblatex/biber to natbib/bibtex
- Works with both lualatex (local) and pdflatex (arXiv)
- Acknowledge CS249r students whose feedback shaped the curriculum
- Acknowledge global mlsysbook.ai community
- Expand GenAI statement to cover framework development
- Frame AI assistance as enabling democratization (single author, 20 modules)
- Remove em-dashes throughout for cleaner prose
Reverts arXiv-specific changes to work with compile_paper.sh:
- Restored fontspec with TeX Gyre fonts
- Restored emoji package
- Restored biblatex with biber backend
- Works with lualatex as expected by compile script
- Replace fontspec/custom fonts with standard LaTeX fonts (mathpazo, helvet, courier)
- Remove emoji package, define empty command for \emoji
- Switch from biblatex/biber to natbib/bibtex for better arXiv support
- Change \printbibliography to \bibliography{references}
- Remove "Tensors to Systems" from subtitle for cleaner title
- Fix @article entries that should be @inproceedings (kannan2022astrasim,
micikevicius2018mixed, strubell2019energy, vaswani2017attention)
- Remove duplicate booktitle field from williams2009roofline
- Standardize year fields across entries
- New title: "TinyTorch: Building Machine Learning Systems from First
Principles: Tensors to Systems"
- Add strategic mentions of AI engineering as an emerging discipline
- Update competency matrix caption to reference AI engineer competencies
- Update conclusion to position TinyTorch as training AI engineers
- Add SEI AI Engineering workshop report reference
- Remove fabricated claim about quantum ML and robotics community forks
that don't actually exist
- Remove "quantum ML" from conclusion's list of future fork variants
- Change "validated through pilot implementations" to "designed for
diverse institutional contexts" since validation is planned future work
- Replace MNIST/ImageNet full dataset calculation with the actual Module 1 exercise
- New text: "Students calculate memory footprints, discovering that a single batch of 32 ImageNet images requires 19 MB, while the full dataset exceeds 670 GB."
- Aligns paper claims with the codebase (01_tensor.py Q1)