🎯 MILESTONE 2 - Basic flashcard app

What You’ll Build: A functioning flashcard practice application with randomization

Core Concepts:

  • Data structures (lists, tuples, dictionaries)
  • for loops and iteration
  • Dictionary methods (.items(), .keys(), .values())
  • Random module (random.shuffle(), random.choice())
  • Functions and modules
  • String methods (.lower(), .strip())
  • The accumulator pattern
  • Loop control (break, continue)

Programming Patterns:

  • Collection processing (for loops)
  • Dictionary lookup pattern
  • Counted loop with break
  • Accumulator pattern
  • Randomization pattern

By the End: You’ll have a complete flashcard app that presents questions, checks answers, tracks scores, and randomizes card order for effective learning.