Files
TinyTorch/assignments
Vijay Janapa Reddi 9b94b588d2 Perfect NBGrader Setup Complete - Python-First Workflow
🎯 NBGRADER STRUCTURE IMPLEMENTED:
- Added proper NBGrader cell metadata to modules/00_setup/setup_dev.py
- Solution cells: nbgrader={'solution': true, 'locked': false}
- Test cells: nbgrader={'grade': true, 'locked': true, 'points': X}
- Proper grade_id for each cell for tracking

🧹 CLEAN STUDENT ASSIGNMENTS:
- No hidden instructor solutions in student version
- Only TODO stubs with clear instructions and hints
- NBGrader automatically replaces with 'YOUR CODE HERE'
- Proper point allocation: hello_tinytorch (3pts), add_numbers (2pts), SystemInfo (5pts)

🔧 WORKING WORKFLOW VERIFIED:
1. Edit modules/XX/XX_dev.py (Python source)
2. tito nbgrader generate XX (Python → Jupyter with NBGrader metadata)
3. tito nbgrader release XX (Clean student version generated)
4. Students work on assignments/release/XX/XX.ipynb
5. tito nbgrader collect/autograde for grading

 TESTED COMPONENTS:
- Python file with proper Jupytext headers 
- NBGrader cell metadata generation 
- Student assignment generation 
- Clean TODO stubs without solutions 
- Release process working 

🎓 EDUCATIONAL STRUCTURE:
- Clear learning objectives and explanations
- Step-by-step TODO instructions with hints
- Immediate testing with auto-graded cells
- Progressive difficulty (functions → classes → optional challenges)
- Real-world context and examples

Perfect implementation of Python-first development with NBGrader compliance
2025-07-12 11:37:39 -04:00
..