Code Breaker: Increase Creativity, Remix Assessment, and Develop a Class of Coder Ninjas! by Brian Aspinall shares his experiences and those of some colleagues in the process of teaching coding from kindergarten to high school. It deals with computational thinking which is a fundamental skill at the heart of engineering and mathematics. It includes coding and much more, and can even happen without technology. Make sure your school has a few copies.
Preface
- We live in an era of access as answers to knowledge-based questions can be quickly retrieved. As for coding, we have been teaching that in many forms since the 1960s. Like many, Brian is a self-taught coder. He offers ten reasons for teaching coding. They include building self-confidence, allowing students to create, self-expression, teaching storytelling, opportunities for risk-taking, reinforcing math principles, and teaching problem-solving. It is required for many future jobs, developing teamwork, and helping humanity.
1. The Clarity of Poop
- Brian tells of experiences as a computer club advisor where he saw students do some amazing things. The students tried, observed, tried again, failed, tried again, and at some point succeeded. This is what you don’t get in a lot of classrooms that focus on knowledge acquisition and worksheets.
- Like all chapters, this one has several QR codes that take you to pages of Brian’s blog. Here are the sites you get in this chapter.
- Hubbub! Coding a First Nations’ Game of Chance.
- Coding Probability Simulators with Python #CodeBreaker. Here you get a tutorial in the Python programming language.
- Ten Reasons Kids Should Learn to Code. Post the diagram and have your kids listen to the short [1:48] video.
2. A Wing and a Papert
- Here we get some learning theory. Assimilation happens when you incorporate new things into your current understanding. Accommodation happens when you learn new things and have to change what you currently understand. People learn best when they are involved in making or constructing things in the real world. To do this you need some control over your own learning. Learning should be concrete and computers are a good way to teach this. Computational thinking is a fundamental skill and it is at the heart of engineering and mathematics.
- Coding Rock, Paper, Scissors to Teach Probability
- Indigenous Trail: Trees and Coding a Micro:Bit Compass
- What Is Computational Thinking? Computational Thinking can take on a variety of forms.
DrDougGreen.com If you like the summary, buy the book