Files
gh-bradleyboehmke-brads-mar…/skills/pedagogy/teaching-principles.md
2025-11-29 18:01:52 +08:00

4.1 KiB

Data Science Teaching Principles

General pedagogical principles for teaching data science, machine learning, AI, and MLOps.

Core Teaching Philosophy

1. Hands-On Learning

Data science is learned by doing, not just reading:

  • Provide working code examples
  • Encourage experimentation and iteration
  • Use real or realistic datasets
  • Build confidence through successful execution
  • Learn from errors and debugging

2. Visual Learning

Leverage visualizations to build intuition:

  • Plot data before analyzing
  • Visualize model behavior
  • Show distributions and patterns
  • Use interactive plots when possible
  • Make abstract concepts concrete through visuals

3. Incremental Complexity

Build understanding step by step:

  • Start with simple, concrete examples
  • Introduce one concept at a time
  • Build on previously learned material
  • Avoid overwhelming with too many details upfront
  • Progress from intuition to theory

4. Theory Meets Practice

Balance conceptual understanding with application:

  • Explain why, not just how
  • Connect math to code implementation
  • Show real-world applications
  • Validate theoretical concepts through code
  • Make abstract concepts tangible

5. Active Learning

Engage students in the learning process:

  • Include practice problems
  • Design checkpoints for self-assessment
  • Encourage exploration and "what if" questions
  • Provide opportunities for discovery
  • Foster experimentation

Content Structure Guidelines

For Chapters

  1. Start with motivation - Why does this topic matter?
  2. Provide intuition - Concrete examples before formalism
  3. Introduce concepts incrementally - One idea at a time
  4. Show, don't just tell - Working examples with code
  5. Practice and validate - Exercises to reinforce learning
  6. Summarize and connect - Key takeaways and next steps

For Assessments

  1. Test understanding, not memorization - Focus on concepts
  2. Include application problems - Not just recall
  3. Mix question types - Theory, code, interpretation
  4. Provide partial credit opportunities - Show reasoning
  5. Include real-world scenarios - Make it relevant

For Notebooks

  1. Clear learning objectives - What will students learn?
  2. Executable from top to bottom - No hidden dependencies
  3. Mix explanation and code - Interleave markdown and code cells
  4. Include validation - Help students check their work
  5. Encourage exploration - Provide extension opportunities

For Slides

  1. One main idea per slide - Don't overwhelm
  2. Visual over text - Use diagrams and examples
  3. Live coding when possible - Show the process
  4. Build complexity gradually - Layer concepts
  5. Include discussion prompts - Engage the audience

Level Differentiation

Undergraduate Students

  • Assume less mathematical background
  • Start with concrete before abstract
  • Provide more scaffolding and structure
  • Focus on intuition and practical application
  • Use relatable, accessible examples
  • Emphasize building confidence

Graduate Students

  • Can handle more mathematical rigor
  • Expect understanding of prerequisites
  • Include theoretical foundations
  • Balance theory with implementation
  • Use research and industry examples
  • Encourage independence and depth

Tool and Library Guidance

Choosing the Right Tool

  • Beginners: Start with high-level libraries (pandas, sklearn)
  • Intermediate: Introduce lower-level concepts (numpy operations)
  • Advanced: Implement from scratch to understand internals

Code Quality

  • Write clean, readable code
  • Include comments explaining non-obvious parts
  • Follow conventions (PEP 8 for Python)
  • Show both "quick and dirty" and "production-quality" approaches when relevant
  • Emphasize reproducibility

Common Pitfalls to Avoid

  1. Math before intuition - Build understanding first
  2. Too much at once - Break down complex topics
  3. Passive learning - Always include active elements
  4. Disconnected theory - Link concepts to practice
  5. Ignoring prerequisites - Know your audience
  6. One-size-fits-all - Adapt to student level
  7. No real-world context - Show why it matters