Add build scripts and GitHub Actions workflow to support PDF generation:
- build_pdf.sh: LaTeX-based PDF build for professional quality
- build_pdf_simple.sh: HTML-to-PDF build without LaTeX requirement
- Makefile: convenient shortcuts for common build tasks
- GitHub Actions workflow: automated PDF builds on demand
Supports multiple output formats:
- HTML website (default, via jupyter-book)
- PDF via HTML-to-PDF (pyppeteer, no LaTeX needed)
- PDF via LaTeX (professional typography, requires LaTeX)
Usage:
make html - Build HTML website
make pdf-simple - Build PDF without LaTeX
make pdf - Build PDF with LaTeX
- tinytorch/benchmarking/: Benchmark class for Module 19
- tinytorch/competition/: Submission utilities for Module 20
- tinytorch/data/: Data loading utilities
- tinytorch/utils/data/: Additional data helpers
Exported from modules 19-20 and module 08
- Update module path from 15_profiling to 14_profiling
- Add quick_profile helper for quick bottleneck discovery
- Add analyze_weight_distribution for pruning analysis
- Export new helper functions in __all__
Comprehensive summary of all changes made:
- Module reorganization complete
- Chapter updates complete
- All commits made in logical pieces
- Ready for testing and review
Cleanup of renamed files:
- Deleted old module source files (14_kvcaching, 15_profiling, 16_acceleration, etc.)
- Deleted old chapter markdown files
- These have been replaced by reorganized versions in previous commits
- Shows O(n²) latency growth in transformer generation
- Demonstrates problem before teaching solution
- Prepares module for reorganization to Module 15
- Add quick_profile() for simplified profiling interface
- Add analyze_weight_distribution() for compression module
- Both functions will be used by modules 15-18
Changed tier name from 'Intelligence' to 'Architecture' for clarity:
- Updated TOC: 🏛️ Architecture Tier (08-14)
- Updated all tier badges in modules 08-14
- Changed emoji from 🧠 to 🏛️ (building/columns)
Rationale:
- 'Intelligence' was vague and didn't describe content
- 'Architecture' accurately describes what students learn
- Professional terminology used in ML industry
- Clearer pedagogical narrative: different neural architectures
(data infrastructure, CNNs for vision, Transformers for language)
Content remains unchanged, only naming improved.
CLI improvements for better UX:
- Renamed 'tito community submit' to 'tito community share'
- Removed tito/commands/submit.py (moved to module workflow)
- Updated tito/main.py with cleaner command structure
- Removed module workflow commands (start/complete/resume)
- Updated __init__.py exports for CommunityCommand
- Updated _modidx.py with new module exports
Result: Cleaner CLI focused on essential daily workflows and
clear distinction between casual sharing vs formal competition.
Complete capstone competition implementation:
- Two division tracks: Closed (optimize) and Open (innovate)
- Baseline CNN model for CIFAR-10
- Validation and submission generation system
- Integration with Module 19 normalized scoring
- Honor code and GitHub repo submission workflow
- Worked examples and student templates
Module 20 is now a pedagogically sound capstone that applies
all Optimization Tier techniques in a fair competition format.
Enhancements to benchmarking module:
- Added calculate_normalized_scores() for fair hardware comparison
- Implemented speedup, compression ratio, accuracy delta metrics
- Added MLPerf principles section to educational content
- Updated module to support competition fairness
These changes enable Module 20 competition to work across different hardware.
Changes:
- Module 09: 'Spatial' → 'Spatial (CNNs)' in TOC for clarity
- Module 20: 'TinyMLPerf' → 'MLPerfEdu' to avoid confusion
* TinyMLPerf is a real benchmark for edge devices
* MLPerfEdu clearly indicates educational competition
* More accurate descriptor for this capstone
- Fixed 'Performance Tier' → 'Optimization Tier' in Module 20 objectives
Better naming makes the course structure clearer for students.
Changed tier badge text for modules 15-19 to match TOC naming:
- Was: **⚡ PERFORMANCE TIER**
- Now: **⚡ OPTIMIZATION TIER**
Ensures consistency between TOC and chapter badges.
All Foundation Tier modules (01-07) now use consistent formatting:
- Standard tier badge: **🏗️ FOUNDATION TIER** | Difficulty | Time
- Removed HTML divs and Module Info sections
- Clean Overview sections
- Consistent structure across all modules
Fixed Module 04 (Losses) which had wrong content (was about Networks)
KV Caching (Module 14) is about how transformers work efficiently,
not pure performance optimization. Moving it to Intelligence Tier.
Changes:
- Updated TOC: Intelligence Tier now 08-14 (was 08-13)
- Updated TOC: Optimization Tier now 15-19 (was 14-19)
- Changed Module 14 badge from PERFORMANCE to INTELLIGENCE
Cleaned up temporary files created during website standardization work:
- FINAL_STATUS.md, WEBSITE_USER_FEEDBACK.md, WORK_COMPLETE_README.md
- book/CONTENT_IMPROVEMENTS.md
- Tier overview placeholder files (content integrated into TOC structure)
These were working documents and are no longer needed.
Foundation Tier modules updated to final standardized version:
- Consistent YAML frontmatter with all metadata
- FOUNDATION tier badges throughout
- Professional tone with minimal emojis
- Complete learning objectives and systems thinking questions
- Real-world connections to production systems
TOC structure improvements:
- Clean 3-tier organization (Foundation, Intelligence, Performance)
- Proper tier captions and ordering
- All 20 modules properly integrated
- Capstone section clearly marked
- Add complete YAML frontmatter with metadata
- Add CAPSTONE badge with 5-star (Ninja) difficulty
- Standardize to exactly 5 learning objectives
- Implement competition structure with Closed/Open divisions
- Add comprehensive submission guidelines and validation
- Include normalized metrics for fair hardware comparison
- Add honor code and GitHub repo requirements
- Provide example optimizations at different skill levels
- Add Systems Thinking Questions on optimization priorities
- Connect to real MLPerf and industry applications
- Professional tone throughout
- Mark completion of all 20 modules!