Files
TinyTorch/docs
Vijay Janapa Reddi 71607f70e8 Clean up and modernize documentation
- Remove outdated documentation files (cli-reorganization, command-cleanup-summary, module-metadata-system, testing-separation)
- Update all CLI commands to use current hierarchical structure (tito system/module/package)
- Align documentation with simplified metadata system
- Update student project guide with current module structure
- Modernize development guides and quick reference
- Remove references to removed features (py_to_notebook, complex metadata)
- Ensure all documentation reflects current system state

Documentation now focuses on:
- Current CLI structure and commands
- Simplified module development workflow
- Real data and production patterns
- Clean educational progression
2025-07-11 23:36:33 -04:00
..
2025-07-11 23:36:33 -04:00

📚 TinyTorch Documentation

Complete documentation for the TinyTorch ML Systems course.

🎯 Quick Navigation

For Students 👨‍🎓

For Developers 👨‍💻

For Instructors 👨‍🏫

📁 Documentation Structure

Development (development/)

For module developers and contributors

  • module-development-guide.md - Complete development methodology
  • quick-module-reference.md - Fast reference for commands and patterns
  • module-creation-checklist.md - Comprehensive step-by-step process
  • module-template.md - Reusable template snippets

Students (students/)

For course participants

  • project-guide.md - Course navigation and module progression

Pedagogy (pedagogy/)

For instructors and educational design

  • pedagogical-principles.md - Educational philosophy and learning theory
  • testing-architecture.md - Assessment strategy and testing patterns
  • vision.md - Course vision and goals

🚀 Quick Commands Reference

System Commands

tito system info              # System information and course navigation
tito system doctor            # Environment diagnosis
tito system jupyter           # Start Jupyter Lab

Module Development

tito module status            # Check all module status
tito module test --module X   # Test specific module
tito module notebooks --module X  # Convert Python to notebook

Package Management

tito package sync            # Export notebooks to package
tito package sync --module X # Export specific module
tito package reset           # Reset package to clean state

🎓 Educational Philosophy

TinyTorch follows a "Build → Use → Understand → Repeat" methodology where students:

  1. Build - Implement core ML components from scratch
  2. Use - Apply their implementations to real problems
  3. Understand - Reflect on design decisions and trade-offs
  4. Repeat - Apply learnings to increasingly complex systems

Key Principles

  • Real Data, Real Systems - Use production datasets and realistic constraints
  • Progressive Complexity - Build understanding step by step
  • Systems Thinking - Connect to production ML engineering practices
  • Immediate Feedback - Students see their code working quickly

🛠️ Development Workflow

For New Modules

  1. Plan - Choose real datasets, define learning objectives
  2. Implement - Write complete working version first
  3. Structure - Add educational content and TODO guidance
  4. Test - Comprehensive testing with real data
  5. Export - Convert to notebooks and export to package

For Students

  1. Setup - Complete environment setup in modules/setup/
  2. Develop - Work in modules/{name}/{name}_dev.py files
  3. Export - Use tito package sync to build package
  4. Test - Use tito module test to verify implementation
  5. Progress - Use tito module status to track completion

📊 Course Structure

TinyTorch is organized into progressive modules:

  • Setup - Development environment and workflow
  • Tensor - Core data structures and operations
  • Layers - Neural network building blocks
  • Networks - Complete model architectures
  • Training - Optimization and learning algorithms
  • Advanced - Production systems and MLOps

Each module builds on previous ones, creating a complete ML systems engineering curriculum.


💡 Pro Tip: Start with the Project Guide if you're a student, or the Development Guide if you're creating modules.