07-10, 15:50–16:20 (US/Pacific), Room 318
The Issaquah Robotics Society (IRS) has been teaching Python and data analysis to high school students since 2016. Our presentation will summarize what we’ve learned from nine years of combining Python, competitive robotics, and high school students with no prior programming experience. We’ll focus on the importance of keeping it fun, learning the tools, and how to provide useful feedback without making learning Python feel like just another class. We’ll also explain how Python helps us win robotics competitions.
The Issaquah Robotics Society (IRS) has been teaching Python and data analysis to high school students since 2016. We use custom-built Python applications at our tournaments to analyze robot performance and choose effective competition strategies. Our presentation will focus on the best practices that we’ve discovered during the past nine years and is for anyone who wants to help others learn Python. We believe that instructional techniques that work for high schoolers with no prior programming experience can work for everyone.
Background
Relative to classroom instruction, teaching Python via an extracurricular activity requires different instructional techniques. Providing constructive feedback is more challenging without grades or exams. More importantly, students who get frustrated are free to switch to other activities or drop robotics altogether. Ensuring that students are having fun is crucial.
Teaching Python by developing a data analysis application has advantages over traditional classroom instruction.
- Direct feedback from users.
- Provides experience with multiple aspects of application development, including version control, testing, and deployment.
- Delivery dates cannot slide. Applications must be ready by day one of our first competition. Students are forced to prioritize when deciding what features to implement.
- Demonstrates how data analysis can improve decision making.
Students rarely have trouble understanding programming concepts. Even students with no prior programming experience easily understand concepts such as loops, conditional statements, functions, and composite data structures. Learning to use tools like IDEs, Git, or virtual environments is usually a bigger source of frustration than learning Python itself. For our curriculum to be successful, we must carefully plan how we’ll introduce students to programming tools. We must strike a balance between two competing objectives:
- Avoid student frustration with tools when they are starting to learn Python.
- Effectively use tools for team-driven, time-limited application development.
Presentation Outline
Our presentation covers the following topics:
1. A brief introduction to our problem domain, FIRST* Robotics Competitions, and how data analysis with Python makes us more competitive.
2. What’s different about teaching high school students (and what’s not).
3. Best practices related to teaching Python and data analysis
- Making it fun
- Learning the tools
- Giving feedback without making learning Python feel like just another class
About the Presenters
The presentation will be provided by current IRS students and their analytics mentor (who moonlights as a data scientist at the Pacific Northwest National Laboratory). IRS students are experienced presenters who frequently provide presentations to robotics competition judges. The IRS has won numerous awards during its 22-year existence, including the 2024 Pacific Northwest FIRST Robotics championship.
The IRS participates in FIRST* Robotics Competitions and is based in Issaquah, WA. FIRST’s mission is to get students excited about science and technology and give them skills and confidence that will help them pursue STEM careers. We want our students to understand that programming is not just for software developers - that Python and data analysis are highly valuable skills for anyone who participates in STEM.
* FIRST: For InspiRation of Science and Technology