Back in August of 2018, I had the honor of attending PiCademy; a two-day course, given by the Raspberry Pi Foundation to train educators in teaching students about computing and electronics with the Raspberry Pi.
I was one of two people there who did not have the development or delivery of curriculum as their day job, and one of three who worked in tech. All the rest were teachers or school district employees. They came from all over the U.S. and Canada, the farthest-traveled student coming from upstate NY. Admission was limited and competitive.
One of the wonders of the Raspberry Pi is that it is a full-fledged computer. For around $50 (cost of the Pi, the microSD card, and the power supply), you can plug in a monitor, keyboard, and mouse and you’re good to go.
We were each given a Raspberry Pi and a microSD card and our workstations all had the keyboard, monitor, mouse, and power supply at them. We put in the card, plugged in the peripherals, plugged in the power, and within minutes we had the Raspbian OS up and running. Raspbian is a variant on Debian Linux (which also powers Ubuntu, Mint, and a number of other popular Linux distributions), so I had some familiarity with the basics.
To get us comfortable coding directly on our Pis, they had us run a few lines of Python through the Thonny editor. Easy, peasy, lemon-squeezy.
The rest of the day, we worked on “maker” projects. We constructed a circuit with a breadboard, resistor, and an LED, then controlled it through the GPIO pins on the Pi using Python. I had a basic understanding of circuits from taking a year of high school Electronics back when my Commodore 64 was cutting edge, but it was still new using a breadboard.
We connected a traffic light component (basically our LED project pre-wired on a PCB with 3 lights) and wrote code to control that.
We wrote code to take photos and movies with a camera component (connected through a ribbon cable). One of the goals for the facilitators was to photo-bomb every photo taken. They didn’t get every photo, but it was a valiant effort.
Then every table had 15 minutes to make a quick project with the components they’d used during the day (plus a selection of arts and crafts supplies). Much fun was had, much laughter was heard.
The day was concluded with awards and I won an award for sparkliest lights on my Sense Hat.
We began Day two with a quick recap of what we’d done before, and the facilitators (mostly teachers who had been past PiCademy students) talked to us about projects they had done with their students. One of the more entertaining presentations was from Chris Aviles, talking about how his students used Raspberry Pis to monitor soil moisture and other greenhouse conditions to grow basil as part of a Student Entrepreneurship class.
Then they introduced us to some of the great curriculum the Raspberry Pi Foundation provides for teaching Developer, Maker and other skills.
Then it was our turn, we were grouped into project teams around ideas we’d outlined on post-it notes. Having seen that the Pis already had node.js on them and knowing that the hosting site had a Sphero robot around, I proposed getting Cylon.js operating on the Pi and controlling a robot wirelessly with it.
Sadly, the Cylon install kept breaking during the custom compilation of the bluetooth drivers. While we could have debugged it if we had more time, we had to have a project ready in less than two hours, so we pivoted to a GUI quiz program using the guizero Python library.
The quiz asked questions, drew an X or a check on the 8×8 RGB LED display on a Sense Hat, and if you got 2 out of 3 correct, it drew a raspberry as your reward. One of our team members worked on building code to play sounds to go with the images, but got it working with only a couple of minutes left and there wasn’t time to incorporate it.
The code wasn’t pretty and I’m not a big fan of guizero, but it showed how some cool rapid prototyping could be done with kids, given a little more planning and expertise.
SUMMING UP, THOUGHTS FOR CODERDOJO CHAMPIONS
We didn’t do much with this knowledge at Seattle CoderDojo because I was out sick most of the rest of the year with chronic pain due to multiple hernias. But I’m definitely thinking about doing things this fall.
If you’re with a CoderDojo group where funds are limited, it feels more difficult to justify doing Raspberry Pi stuff, because of the costs of the equipment needed and the effort to store and maintain it. But there are ways to control costs and the amount of equipment.
First, invest in USB network dongles and short network cables instead of monitors, keyboards, and mice.
You can use a network cable to set up a hardwired connection between a kid’s laptop and Pi, then use a VNC client to remote into the Pi and bring the Raspbian GUI up on the laptop’s monitor. Upside, much lower costs. Downside, you’ll have to support getting the kids set up with VNC connections on varying versions of MacOS, Windows, ChromeOS, and Linux. Invest in testing different set-ups and having some institutional expertise in getting the Pis connected.
Only buy a few Pis
Unless you have a very low-income group of parents, a number will be willing or even eager to buy their child a Pi to bring to class. Put together a list of recommended items on Amazon or at AdaFruit, or even recommend a kit. Then you’ll only need to have a handful on hand for the kids who couldn’t bring one. Plan for kids to pair on Pis if you underestimate and have an “everyone shares” policy.
If you have a mix of high and low income students, possibly offer a “buy one – give one” deal to parents where they pay the cost of two kits, get one, and the Dojo keeps one.
Put the rest of your funds into breadboards, accessories, and hats.
Thanks for reading. Looking forward to running some Pi stuff in the fall.