In this course, students learn to apply computational thinking and key concepts to programming in Python. Topics include variables, data structures, loops, conditionals, logical flow, and object-oriented programming. Students reflect upon the application of programming strategies for a range of purposes (web development, data visualization, and game development) and produce a fully-functioning game with scoring. Students will collaborate online to troubleshoot shared problems and are encouraged to work synchronously on weekly exercises for mutual aid.
Course Learning Outcomes
- Apply computational thinking to Python programming exercises
- Create programs that demonstrate a working knowledge of coding best practices
- Analyze the ways programming conventions reflect modes of production and the need to communicate clearly with other programmers
- Reflect on the “Zen of Python” as a set of programming values and community-driven ethics
- Develop intellectual resilience in the process of researching and debugging programming challenges.