How do we give instructions to a computer? Isn't programming hard? Not really! Whether it's giving someone directions to a nearby store or writing out some dance moves we frequently exhibit aspects of computational thinking in our everyday lives!
This class teaches the first key concepts of programming -- sequences of instructions and basic counted repetition of instructions. For each concept, we'll start by helping you connect real-world experiences you are already familiar with to the programming concept you are about to learn. Next, through a cognitively scaffolded process we'll engage you in developing your fluency with problem solving with sequences and repeated instructions in a way that keeps frustration at a minimum.
Along the way you will learn about the common challenges or "bugs" students have with these concepts as well as ways to help them find and fix those concepts. You'll also be guided in running classroom discussions to help students develop deeper understanding of these concepts.
Finally, you'll learn about a recommended pedagogical practice, Pair Programming, and find out why research recommends teaching block-based programming first.
-Meet Dr. Simon and fellow learners in this class! Find out what you’ll be doing and learning.
Computational Thinking and Sequences
-Is computational thinking everywhere? Reflect on computational thinking in your life and brainstorm instructions for real world tasks. Discuss the process by which we become better computing teachers and create a block-based program in Snap by reordering a set of provided instructions.
-Get ready to do some programming puzzles! Create a Snap program and reflect on what aspects of the program students might struggle with. Work on challenge questions and reflect on how to discuss sequences in a classroom setting. Take a break from Snap and explore the code.org curriculums to create an assessment question!
-Invent a faster way to write instructions for your robotic friend! Get started solving programming puzzles that use repeats and reflect on what areas students might struggle with. Reinforce your knowledge as you complete a set of programs on google slides -- this time without using Snap to check your work!
-More programming with repeats - except with a bit of a challenge! Explore the free curriculum on code.org’s platform analyzing the feedback and hints they provide for their activities. Work closely in their artist environment and examine the difference between code.org block-based programming and your work in Snap.
Equity & Pedagogy
-Who is learning CS? How is CS being taught? Learn about the state of CS standards and teacher credentialing. Evaluate pedagogy techniques such as pair and buddy programing -- how effective are they in teaching CS?