# Teaching Kids The Fundamentals With Computer Science Unplugged

Educators often want to integrate technology into their classrooms in order to have their classes better match the world into which they are sending their students. Each year, new technologies are added to the classroom suite, from ipods for listening activities in an English class to touch-sensitive white boards. Students are expected to submit homework via online systems and comment on discussion forums. Research is done primarily online, with books increasingly being seen as supplemental. All of this technology integration is meant to prepare students to navigate our high tech world. However, doing so means that students are practicing to become consumers of technology rather than creators of it.

For students to learn how to create technology, rather than just use it, they need to know the fundamentals of computer science: how to encode information, what a computer language is, how to create an algorithm, how to use digital logic, how to encode an image, and how to detect errors.

Teaching computer science and software engineering is a tall order, especially if you don’t have enough computers to go around, or if you don’t have the knowledge of any computer languages. However, the foundation of computer science isn’t within the machine; it is within the human mind. Logic, binary numbers, algorithms, and graph theory are all branches of mathematics that can be done while unplugged.

Computer Science Unplugged offers parents and educators free curriculum, lessons, and materials that teach the core concepts of computer programming without the use of computers. The lessons are targeted at students k-2, and any topic has a variety of lessons, allowing a teacher or parent to choose one that suits the age of their children.

The lessons are active: students participate, play roles, and cooperate to solve problems. In the introduction to binary numbers, each child has a card showing a number of dots that is a power of two. They stand in order from greatest (16) to least (1). Binary numbers are created by having students flip their cards to show the number of dots, representing a one for that place value, or the blank back of the card, representing a zero. Students can then quickly see and experience what a binary number is, and can translate from base ten to base two using simple arithmetic. This introduction to binaries is more simple and elegant than one that involves the teacher sweating at the blackboard, while drawing little lines under numbers to represent place value, and it is more engaging for the students. Once students understand binary numbers, they move seamlessly into image encoding. Pixels are simply squares that represent binary numbers, lined up neatly on a screen, or, in these lessons, on a piece of large paper.

As a teacher, my goal is to be as lazy as possible. That means that I want the students to do the majority of the thinking, and I want to do little more than egg them on and occasionally clarify. These lessons, and all the others in the series, although teacher directed, are based on students doing the work of figuring out the concepts of computer science.

Computer Science Unplugged was started by Tim Bell, Mike Fellows, and Ian Witten, but now has contributors from around the world, and is promoted by Google and Microsoft, as well as a variety of professional associations for computer scientists and educators. If you want your kids to be successful creators in a high tech world, you can’t go wrong with a hands-on, teach-free grounding in the fundamental ideas of computer science that is endorsed by two of the behemoths of the industry.