January 1, 2017 by wendy
Hello Ruby is a colourful and playful children’s book that illustrates fundamental concepts behind computers, coding, and computational thinking. It centres on a young girl named Ruby, who loves asking questions and has a lively imagination. One day, Ruby’s father leaves her five gems for her to find. She sets off on an adventure to find these gems, deciphering clues, drawing maps, and making new friends. As children and parents follow along on Ruby’s adventure, they learn helpful strategies for problem solving that apply not only to coding but also to every day situations.
Through Ruby’s adventure, children and parents are gradually introduced to computational thinking concepts. The book doesn’t cover any specific programming languages. It isn’t intended to teach children how to code. More importantly, it teaches children strategies that will help them solve problems. These strategies are not only useful for computer programmers but for everyone.
The big ideas and key concepts include understanding that big problems can be broken down into smaller ones, making plans and working with others can be helpful, and it’s important for instructions to be clear so that the end result is what everyone expects.
The best feature of this book is that each chapter comes with unplugged activities to give readers a chance to apply the concepts introduced in the chapter. The activities encourage children to use their imagination, and children and parents can experience the activities together. For example, after Chapter 2, children can design their own keyboards to learn how computers store information. After Chapter 5, children can further explore the concept of algorithms and loops by creating their own dance routines. And at the very end of the book, children can put it all together by making their own board games.
Each chapter in the book includes a Toolbox section that gives additional information for parents about the key concepts in the chapter. Parents can also find more activities on the website at helloruby.com. Overall, Hello Ruby is a fantastic resource for children and grown-ups to explore and learn about computational thinking and coding together.
December 29, 2015 by wendy
We’ve seen from the National Curriculum in England and their guide for primary teachers that computing consists of three main strands:
The guide for secondary teachers suggests that in key stage 3, children from ages 11 to 14 should shift their focus towards computer science, but that doesn’t necessarily mean more coding. Computer science is primarily about computational thinking:
Strategies for computational thinking can be demonstrated through unplugged activities without computers.
Truly understanding a problem means that you can model it in different ways. Ask your students to create representations of real-world, physical systems. For example, they could model the solar system, draw a map, or create storyboards that describe a process. Afterwards, ask them to consider how closely their models match real life and how their models can be used to make predictions.
An algorithm is a precise list of instructions that solve a problem. You can design an algorithm in many ways, such as writing the steps down in English or drawing a flowchart. Have your students design algorithms to solve a specific problem and have them compare their solutions in terms of complexity and efficiency. They should see that multiple algorithms may solve the same problem, and that there are trade-offs with each solution, that is, there is no one right answer.
Searching and sorting algorithms are well understood in computer science and reflect key aspects of computational thinking, such as pattern generalization and abstraction. Have your students execute linear search and binary search algorithms. For example, they could search for a specific card in a deck of cards or for a letter in a set of alphabet tiles, and then record each step using pencil and paper. To study sorting algorithms, ask your students to try different sorting algorithms on the same set of objects. In both cases, ask your students to compare the algorithms they tried in terms of complexity and efficiency.
Binary arithmetic is another way to illustrate algorithms. Have your students convert binary numbers to decimal numbers and vice versa. Through this exercise, students learn that numbers can be represented in different ways as well as terminology, such as bit, byte, and nibble. You can also demonstrate how computers use numbers to store information. For example, a number can describe the colour of a pixel in an image. Have your students create bitmap images using squares to represent pixels and numbers to represent colours like colouring by numbers.
Even though many concepts in key stage 3 can be taught through unplugged activities, students should still have hands-on experience with programming and various technologies. In our next post, we’ll discuss what students in key stage 3 should learn when they have access to a computer.
May 25, 2015 by wendy
Teaching coding away from the computer is a fun and easy way to introduce computer science concepts to children. It also supports new perspectives and understandings, and it encourages social interaction, which helps with their learning process.
Children learn how to think logically, how to sequence instructions, and how to recognize patterns and cause-and-effect relationships. These strategies are important for everyone!
Here are a few resources that teachers can incorporate into their classrooms and parents can use at home.
Code Monkey Island is a board game, in which players must guide their monkeys into the banana grove. It teaches children how to think strategically and how to adapt to different situations, and at the same time, it teaches computer science fundamentals including sequencing, loops, and conditionals. Visit codemonkeyplanet.com for details.
Code.org has a collection of free unplugged activities that teach computer science concepts, such as binary numbers, sequencing, and conditionals. Students learn by encoding their initials in binary, programming each other to stack cups, and designing and playing card games. Visit code.org/learn for more information.
CS Unplugged has numerous free activities that teach various concepts ranging from binary numbers to interface design. Their activities engage students through games and puzzles, and teachers and parents are encouraged to modify and share their own versions. Visit csunplugged.org/activities to check them out.
Robot Turtles is a board game in which players work together to move their turtles to their matching coloured jewels. Dan Shapiro, a software entrepreneur, invented the game so that he could play with his children and teach them basic programming concepts at the same time. Visit robotturtles.com to learn more.