This was originally posted on the MakeItZone Forum.
Finally we reach the purpose of all this preparation: some hands on sessions!
Wherever possible, I aim to make my materials scalable: length of session, range of abilities, range of ages. For this project, I aimed to make it work for a two hour session, through to about a two day session.
No matter the length of the session, we need to do some introductions. This can be as simple as your name and interests, through to an ice breaker. Something for everyone to get to know each other. From there, I like to do a "real world" discussion and exercise about programming. My favourite is to pretend to be a very dumb robot. The goal is to "write a program" for me to walk out a square. Each participant gets to yell out one instruction which I "execute" in the most literal, hammy, method possible. A call of "walk" will probably result in my choosing a random direction and walking in/over/through things until I reach an impenetrable barrier; usually a wall. This pretty naturally leads to some discussion about the required level of specificity they need to be thinking about for their program instructions, and that there's usually more than one way to write code that ends up with the same results- e.g. loops vs a long list of repeating instructions.
From there we move to the computers and MicroBits and work on the session challenge: creating a PuzzleBit that acts as one of the "keys" to unlock the Safe with the goodies.
I'll include my full lesson plan below.
So far, we've used this project twice, with great success in both cases!
Session One: Hornby Island Spark
The Hornby Spark is a new Makerspace serving the community of Hornby Island, off the East coast of Vancouver Island. My family had planned to vacation there for a week, and I got in touch with the executive team to see if we could put on a session. They agreed, and we arranged to do a two hour session, that Saturday:
We had no idea how many people would show up- Hornby is a very popular holiday destination for it's beaches, hiking, and cycling. We weren't sure if locals would have time, or visitors the interest.
I wasn't sure if we would have internet access, so was very glad to find out that there is an offline version of MakeCode. One thing I noticed, the offline version seems to do a better job of automatically detecting connected MicroBits and programming them. I also downloaded the source code for the MicroBit version of the PXT/MakeCode environment- just in case I had to run a local server. It's not that difficult, but the offline app version is much easier to deploy!
To our happy surprise we had 8 participants attend, ranging in age from approximately 5 to 55- both elementary aged kids and a holidaying high school shop teacher!
At the end of the two hours we had 5 puzzle bits! A couple of them were the same "puzzle", as there wasn't enough time for the participants to learn how to use much more than the buttons. But everyone got the idea and there was a lot of excitement watching the servo of the lockbox move 1/5th of the required rotation as each puzzle was solved! And of course everyone enjoyed the chocolate bars that they had unlocked!
We were happy to be able to leave the laser cut box and 5 MicroBits with the Spark for future sessions!
Again, my thanks to the Spark for letting me use their space!
Session Two: MakeItZone Summer Camp
I also did a five day summer camp introducing programming for physical devices. The participants were aged between 9 and 13, and got to explore MicroBits and Lego EV3.
For this week long session we spent about 2.5 days working with the MicroBits. With the extra time we got to investigate logic, variables, sensors, and basic electronics. The KitTronix inventor kits worked spectacularly for this! They made the process of prototyping with the MicroBits much easier than separate breadboards and jumpers to the MicroBit. I also used some of their example circuits and applications as launch points for the participants. The kids loved using the piezo, and making things move with the motor.
Interestingly, none of them decided to use the parts as part of their final puzzle. Instead they opted to create complicated sequences of A and B button presses. If you press the wrong one in the sequence it's reset back the beginning! From memory, the longest sequence was around 16 steps!
Again, we swapped PuzzleBits and all of us enjoyed watching the latch move a small fraction of the required rotation as each puzzle was solved! This time the treasure was a box of popsicles- which were greatly appreciated on a hot summer day!
Session 3: OceanSide Community Makerspace, Parksville
Oceanside Makerspace is another, relatively new, Makerspace, located in Parksville, Vancouver Island.
I had planned on sending them a kit of lockbox, servo, and 5 MicroBits before the end of the summer break, and have it be the first session using these materials mentored by someone else. Unfortunately other things have come up and caused this to be delayed. I'm still planning on sending them the remaining 5 MicroBits that we received as part of the summer of code challenge- hopefully in the next week or so.
I think we came up with a winning programme, that achieves the goal of being scalable. And the Kittronik Inventor's kits really do make it a lot easier to add basic electronics circuits to the MicroBits!
I'm also very glad that we were able to share the MicroBits that we received with our neighbouring Makerspaces! Thank you Element14!
PDF and iThoughts version are available at the github repo for this project.