Challenges, demos, and discussion.
This is a proposal for a Education Summit workshop for educators (Sunday, 50 mins). (This was accepted, but in the end we only ran the corresponding youth-day workshop.)
##What is your session about? Are you looking for cool, non-trivial project ideas for your micro:bit or Python class or club?
Are you looking for a way to have your micro:bit beginners contribute really meaningful pieces to a bigger whole, without the wiring getting more complex, without the code getting messier, and without risking the whole thing falling apart?
Or do you just like playing racing games with neopixel lights, shiny buttons, and bleepy-bloop sound effects?
In this workshop we will use radio messaging between micro:bits to add sound effects, music, and remote-controllers to an existing, exciting two-player NeoPixel light-racing game!
We’ll make and customise the controllers ourselves (a quick hands-on “make” with kitchen foil, cardboard, and croc-clips!), and we’ll code in MicroPython (it looks just like Python 3).
This activity has been so successful when we’ve run it with kids that really we want to share it with other educators!
As educators, we’ll complete the same activities the kids would. We’ll see that a divide-and-conquer approach using radio messaging between components allows for individuals to easily contribute simple pieces to the larger shared whole, at their own speed, without dependencies on each other, and without creating one giant, hard-to-understand, bug-ridden program. Easier coding? Check. Easier wiring? Check. More free pins on our micro:bit? Check!
Note 1: This workshop is best suited for educators who have at least a little experience in Python / MicroPython, or another text-based language. Micro:bit experience is NOT required.
Note 2: We won’t be programming the actual NeoPixels in this workshop, but we have made the relevant code and build instructions for that part publicly available for anyone to reuse and learn from.
We recommend the maximum number of participants for this workshop is 12. We could stretch to 14 if necessary.
A version of this workshop for young coders has also been submitted.
An early (MakeCode) version of this activity was run very successfully at the London Science Museum’s first CoderDojo by our group, and at Camden CLC’s after-school “Hack Club” (in this workshop form).
@-05mins: Welcome the arriving workshop participants, let them know they’re in the right place, and learn about their programming experience in python and in micro:bit (if any), and their teaching/mentoring experience. Start to learn their names!
[START]
@00mins: Invite people to play the game (in its core form - without sound and without remote controllers). Let everyone have a quick turn. YES, this is before any introductions have been made!
@03mins: Ask the audience to identify problems with the game, and areas for improvement. Two things inevitably come up: its lack of sound, and the fact that the crocodile clips can come loose when two players excitedly mash the microbit’s buttons.
@04mins: Ask the audience about sound effects in other racing games they know: what are the sounds during the starting lights of Mario Kart? What other sound effects we might try to add to the game? This develops a rough spec for the sound effect part of the workshop.
@05mins: Confirm with the audience that they agree it would be easier to play if you had remote controls like on a video game console. Ask how many buttons each controller would need. This develops a rough spec the remote controller “make” part of the workshop.
@06mins: Finally, welcome everyone to the workshop and introduce the presenters. Announce that they’ll experience the workshop activities just as the kids would: adding sound effects and remote controllers to the game and playing it at the end! Set expectations: it’s a short workshop so most people will just get one or the other done, of their choice, but not both.
@07mins: If we haven’t already, find out roughly everyone’s experience levels. Know your audience.
@08mins: everyone get a micro:bit and start coding through the following tasks:
@20mins: SPLIT the participants into two groups: sound effects and controller-makers. (It does not matter if one group is much larger than the other.)
THE SOUND EFFECT GROUP
sfx@21mins: Sound effect makers meet the music API:
sfx@30mins: start designing and coding YOUR sound effects.
Once you have coded sounds for the just the starting-light sequence, TEST YOUR WORK, and make sure you have a backup.
sfx@40mins: final touches
THE REMOTE-CONTROLLER ‘MAKE’ GROUP
rc@21mins: remote-controller group make simplest controller
rc@30mins: Make a better controller from kitchen-foil, cardboard, bluetack, and croc clips
rc@40mins:
Decorate and customise your controller with felt-pen, stickers, etc, so that it is unique. Tweet it!
ALL
@45mins: ALL REGROUP to play the game together!
@47mins: discussion
Reflection, discussion, and ideas for further work:
Propose a forum for further discussion.
@50mins: Congratulate everyone and thank them (just because they are educators doesn’t mean this was easy for them!) Request feedback. Say goodbye. (Give tiny handout with URL with a web-page with information for further work, links to support materials, and library documentation, and our simple online feedback form.)
@51mins: chase to next workshop
What are your equipment and other requirements? Computers with which to program the micro:bits. Ideally with Mu installed and tested.
USB leads and battery packs for the micro:bits.
The workspace shouldn’t be too noisy to hear our young coders.
This talk is suitable for teachers.