Coding at Camp Cosmos

during July 2016, I embarked on a new adventure for me personally and for Las Cumbres Observatory: Camp Cosmos. 2 weeks of science activities for children between 7 and 12 years old.

I wanted to make a camp that the 10 year old version of me would be excited by and it seems having fun with science is something these kids embraced fully. As a kid I loved doing activity weeks (we didn’t call them camps in UK in 1980s) but there were never any science ones. Chapter Arts Centre was amazing at providing a variety of courses and loved all of them. I did clay modelling, puppet making, music (free style composition), drama, and some photography.

Sarah Eve Roberts and I worked for months to create an exciting camp programme and went out to California to run it. Some of the activities we had run before in schools in Wales, but most were brand new ideas we created for the camp.

I’ve talked about the rest of the camp on my official Las Cumbres Observatory news item, but I want to write in more detail about the coding aspect here.

Coding and Robotics

Code is very important to me and my life. I don’t code because it is something I need to do for my job. I code because I love solving problems. I enjoying coding. There, I said it.

Why coding?

As an early teen, I learned to programme a BBC micro in BASIC. This was one of the experiences which set me on my path to what I do today. I believe it is a great way to break down problems into smaller chunks and have instant feedback on how you tackled the problem.

I wanted the campers to have the same experience but recognised that not everyone would be happy writing pure, elegant, syntactically valid code. I also wanted them to not only learn to code, but also to use it to control something in the real world.

I knew this would be a challenge but it was such an important part of my growth as a young scientist, that I wanted it to be a part of Camp Cosmos. I wanted each kid to be unafraid to have a go at writing some code, to break a problem into manageable bits and solve them.

Robotics kits

I looked a lot of different coding kits. I knew that I had at most 3.5 hours for the workshop and I wanted the campers to achieve something they would remember by the end. It was not enough for them to finish and have made a couple of lights blink.

Here are a few I tried and why I rejected them:

Lego Mindstorms

Pros: - Very simple assembly - Excellent education materials available - Who doesn’t like Lego?

Cons: - Very expensive. I wanted these kits to be affordable, if the campers wanted to take it further - Coding language is overly complex and buggy

BBC microbit

Pros: - Very cheap. We could have afforded each camper to have one to take home - Packed with sensors - Excellent, web-based development environment

Cons: - Not actually a robot - Totally unavailable. Anywhere (at time of the camp).

Raspberry PI CamJam kit

Pros: - It is built on a Pi so you don’t need an extra computer - Inexpensive and highly reusable

Cons: - Python is really the only way to control this one. I considered it too much of a challenge to teach this age range enough in 3.5 hours to make this an enjoyable experience.

Scratch and MakeBlocks

I settled on the mBot kit from MakeBlock. The kids can code the mBot in the visual language Scratch and it is relatively inexpensive.

Camper making the mBot and coding with Scratch

As we were using Linux and the MakeBlock version of Scratch needs Adobe Air to run locally (not supported on Linux). I was a bit stumped. Until I found the excellent ScratchX website. An internet genius had ported most of the blocks needed for the MakeBlock robotics blocks, which really saved the day.

Complex concepts

Even though Scratch is a simplified, visual language, with many helper functions/blocks, it still contains complex coding concepts. As an adult you probably take for granted these 3 complex concepts:

Every kid at Camp Cosmos was familiar with the essence of each of these but applying them to quantities or actions was quite abstract for them initially.

Like with all complex concepts I got the kids to be involved in some demos to help explain them:

One kid was in an action in a LOOP. Each time they passed another kid, the logic gate they had a question to ask: can I walk straight on, or is the logic gate kid’s hand LESS THAN my height. IF it is THEN reverse direction, otherwise or ELSE continue walking in a loop.

We did a few more of these and the kids got the concept. Then a potential disaster, as we broke for lunch and the kids had a chance to forget everything from the morning. I was delighted that when we came back the youngest kid in the whole camp (he had just turned 8) explained this whole thing again using his own example!

Mechanical Assembly

I knew that I wanted to make the workshop not just about coding but about encouraging the campers to use their new found coding skills to control a physical thing.

Building the robot

The building came about half way through the workshop, after the kids had cut their teeth on the coding. I was totally unprepared for how important the physical robot was to the whole workshop. Kids that had not been engaged in earlier parts, became totally focussed as soon as they had something to build. Having these 2 sides to the workshop really helped give the kids the impetus to get to grips with some of harder parts.

Finally

Each week ended with a science fair which the campers showed what they had made during the week to LCO staff and afterwards to the campers’ parents.

Science Fair of week 1 Science Fair of week 2 with members of LCO staff

I am very proud that each and every camper learned to code, assemble the robot (which involved 2 different types of screwdriver), and make it follow commands. I realise I was pushing the kids quite hard during this session but every single one of them rose to the challenge. No-one was left behind. Many of the campers said it was their favourite part of the whole camp and I hope it is a skill they will continue to enjoy and practise.

Camp Cosmos really reinforced to me that anyone, no matter what their background or age, can do science.

Here are my slides. Please use them!

Camp Cosmos robotics workshop from Edward Gomez