At Mac Outreach, we provide elementary and middle school students with a fun and safe environment to learn code. We incorporate mathematical concepts such as the cartesian coordinate system and trigonometry. We have seen students understand things that they have learned in class better by playing with the tools we have provided.

We will need 5 volunteers to play the role of binary digits, or bits, and help us count, which will lead to a surprising result.

Zeros and Ones are the basis for computation in computers, and the system of numbers is called binary.

We have found that the hands-on approach works without preparation.

After the trip, it would be useful to show how numbers can be represented in different bases, including decimal and binary, and show how long addition works the same way in different bases.

20 - 30 minutes

Having seen binary numbers, we will now use an iPad game to show that pictures are encoded using binary numbers. Each child will create a black-and-white image and share it wirelessly with the other iPads, after which they will try to use their knowledge of binary to decode the images. It is quite possible to decode the images by guessing, but it is faster when some tricks are discovered based on understanding how numbers are represented (i.e. digit values grow from right to left, so it is easier to try “turning on” bigits from left to right, since once the bigits to the left are known, turning on the next bigit will either put the number over or not). Even kids who think they are not good at math usually figure this out in the context of the game, but we try to help the small number who need a bit of extra encouragement.

All information we share or process digitally is encoded as binary numbers. Knowing the code, we can even decode small examples.

Binary means base 2. They do not need to know this, but if they know about different bases, this will put it in context. Knowing the powers of 2 (1,2,4,8,16,32,64,128) will help them.

For classrooms with iPads, we have another app which shows how colour pictures are encoded, and allows the images to be edited by changing the numbers corresponding to pixel values.

20 - 60 minutes.

They can learn how to do the
binary decoding in 20 min,
and if you have it on your
iPads, they can come back
to this whenever they have
10 minutes left over at the
end of a period.

Kids and supervisors will play the role of a dog’s stomach and a missing gold coin, as we try to figure out how to locate the coin using x-rays from multiple directions. If we are efficient, we can go on to decode the positions of bones and other tissues in the body. The computer in this case will be a whiteboard.

An algorithm is a precise list of instructions, and even kids can figure one out. Some problems involve so much data, we need computers to solve them, in this case giving us a powerful medical tool.

It would be helpful if the kids were reminded that light goes in straight lines and that there are kinds of light we cannot see, like x-rays. Doing SUDOKU problems in class will prime them for the type of logic they will need, and help them discover a workable algorithm themselves. We need to add the fractions 1,1/2,1/4,1/8,1/16, so it might be worth practicing these.

As a class or group activity, kids who previously did SUDOKU puzzles could try to write an algorithm (a step-bystep list of instructions) for solving a SUDOKU puzzle. Kids you need to keep busy for a couple of weeks could be asked to write an ELM program to solve SUDOKU puzzles.

20 min to 25 min per group of up to 16. Need a flip-chart, whiteboard or smart-board, and some separation from other children to prevent a feedback loop of talking over the other group.

Using a web-based programming language we will all create graphics and animations, starting with some common challenges, but going on to whatever they can imagine.

They will learn to write programs in a programming language, focussing on graphics, and animation for students who want a challenge.

They will have a lot of choice in creating computer graphics in this activity, but if they are familiar with (x,y) coordinates, and with graphs of simple functions, they will have the widest range of possibilities.

Because there is nothing to install, they can continue to work on animations on their own or in groups.

We would like to have 2 hours with each class. For scheduling, it would be convenient for me to send two instructors for the day, and have them each visit one class in the morning and one in the afternoon. In addition to the instructor, we should have a few undergrad volunteers who can float between classes to help fix errors, or formulate statements correctly.

Pairs or triples of students will use tap and drag operations to create an adventure game, and they will see the structure of the game as a graph, and that some aspects of the game (such as whether it is impossible) can be decoded by examining the graph. We will also take a first look at adding functionality using a text language (like Python used in the pyVenture activity).

A computer science graph is a set of points with a set of edges (lines) connecting them. It is probably the most important tool we have for representing information (such as the graph of Facebook friends!).

If you have studied a literary form (like haiku or the sonnet), they can write their adventure in this form, and you can suggest it as a challenge.

There are many other examples of graphs, and the class should be able to come up with some examples. For fun, they could, on the board, draw the graph of who often eats lunch with whom. They could also use the internet to figure out which airports in Canada (or the World!) are connected by direct flights.

50 min to 120 min. They need about 15 minutes to understand the basics, but few can finish a playable game in under 50 minutes. The good creative writers won’t want to stop, but some children will need goals, such as creating 6 places in their game, or 6 keys, or creating 2 dead-ends, etc.

The Information Revolution, also called the Digital Revolution and the Data Revolution is about the changes software is having on all aspects of our lives, from how we work, play and keep in touch with friends and families. We want to hear about what they see as the problems (e.g. cyberbullying, loss of privacy, undermining democracy) and opportunities (e.g. exciting new jobs and new ways to better share scarce food and other resources). We will present forecasts on the expected explosion of jobs in this area.

The kids will start to think about the types and pace of change, and how we have choices as society and individuals about how we react to this change.

To prime the kids for this event, it would be helpful if you discuss past revolutions, and how some, like the Industrial Revolution are caused by new inventions, and others, like the Renaissance, are about new ideas.

A post-trip writing assignment would reinforce the discussion, with topics such as: Does cyberbullying have a solution in new software features, new laws or better awareness of bullying? Could networked information be used to reduce food waste and solve hunger in Canada?

25 min to 30 min

**Interested? Contact us at mcmasteroutreach@gmail.com**