Let’s take a deeper look at how we teach students about one of Python’s most venerable data structures: the list. For many learners, the list is the first data structure that they encounter and it can be tricky to understand at first.
Episode Outline:
- Start with clear goals for topic
- Why are we teaching this?
- Backwards by design process
- What do we want the kids to do?
- What should students know when we’re done?
- Are the objectives differentiated?
- Can students demonstrate more advanced understanding according to Bloom’s Taxonomy?
- Where do they go next?
- What do students need to know before we start?
- Introducing the List
- Mathes’ : cheat sheet https://t.co/KZdJkdPz7i?amp=1
- The problem of organizing too many bits of data
- Programmers use data structures to organize related data
- Vocabulary
- Data structure
- Ordered
- Mutable
- Sequence
- Examples and Demonstrations
- Real World Grocery List
- Brainstorming types of lists in the real world
- Python Grocery List
- Practical applications
- List sizes
- Small lists (choices, menus, limiting options)
- Medium Lists (class rosters, schedules, phone apps, etc)
- Large Lists (weather data, sensor measurements, etc)
- List limits (when not to use a list)
- Order doesn’t matter
- Searching by key (use dictionary)
- List shouldn’t change (use tuple)
- List indices are confusing at first
- Zero-indexed
- Negative index
- List methods
- Append & Insert
- Pop & Remove
- Sort & Sorted
- Tools for visualization and understanding
- Python Tutor
- Mu Debugger
- Synthesis Opportunities
- Using for loops with lists
- List slicing
- List of Lists
- Functions/methods
- Creativity & Fun
- Class Schedule
- Rock Paper Scissors