Picademy top tips and takeaways

I was incredibly lucky enough to get a place on Picademy in London this month. What is Picademy? It’s the best CPD I have ever had. They bring together teachers and educators for two days of shared learning about technology, based around, but not limited to, the Raspberry Pi computer. They run periodically all over the UK and in the US as well.

Over the two days you have talks, do some physical computing workshops and then get into groups on day two to design and make some sort of physical computing project.

I thought I’d brain-dump a few quick thoughts and things I will be taking away from the course. In no particular order…

  • If you teach Computer Science to young people, you seriously need to consider attending Picademy, even if you have no interest in (or experience of) the Raspberry Pi computer. Did I mention that this is the best CPD I have ever had? Better than courses my school has paid hundreds of pounds for. And Picademy is FREE.
  • Bring a small paper notebook. Desk space may be limited, I didn’t have room for my laptop and you may want to take notes. Bring a phone too for taking photos, videos, tweets – and possibly controlling robots!
  • Don’t worry about the project too much. I honestly think I could have joined ANY one of the projects the group worked on and I would have found the experience very rewarding. At the end of day 1 I thought I was going to do something controlling Sonic Pi from the environment, on day 2 I actually joined a group building a photo booth for a school disco. Some of the ideas from other groups evolved hugely during their makes and they were all inspirational in very different ways.
  • Collaborate! I really recommend working with others on your project. I’ve made quite a few Raspberry Pi projects before, but never in 2 hours with 2 other people I had only just met. Learning each other’s strengths and dividing up the work was an immensely valuable  experience, akin to what we expect children to do in group work in class.
  • No matter how experienced you are, the workshops put you in the position of a learner – an invaluable experience. Think you know how to light an LED using Python? Try building it in real time following a teacher giving you instructions on a screen and a short deadline, and experience the frustrations first hand of not getting every element working in the time allowed. This happens in lessons all the time, and yet it was an eye-opener to me to find myself not being able to complete some tasks.
  • Learning though play – I am inspired to do what we did in class: give a group some basic tools and then set them free to play and do what they will with it. In our group’s project were able to build on a few lines of code from day 1 and by the end of day 2 we had a photo booth that would let you choose different filters and tweet a photo with a timestamp and caption, all controlled from 2 buttons and some simple Python code we wrote from scratch.
  • Consider making a makerspace – move the desks if you can, make clusters, make it less formal. (My desks in my current school’s ICT room are bolted to the floor in rows, but I will find a way round this!)
  • If you only have 1 or 2 Raspberry Pis, but them on a network & get the children to explore Linux and the command line by SSH.
  • Do something small first, show it off to SLT, get funding for more kit saying ‘this is what we can do’.
  • Making teaching more like coding. This was one of many excellent points made by James Robinson – coders share code, and we all benefit. Why not do the same with teaching resources? Why do we guard them so jealously? Publish them, get feedback from people who’ve used them, iterate, improve, collaborate. We’ve all pinched ideas and resources from other teachers – now give something back!
  • Keep in touch with fellow Picademicians (!?), share, get help, help others – personally I think Twitter is by far the best tool for this. Join today if you’re not already on it and you join a huge community.
  • If you want to understand something, emulate it. This was a point made by Pete Lomas about his time at college when instead of doing readings from an electronics experiment, he wrote an emulator which yielded him perfect results – but more importantly, gave him a deeper understanding of how the thing worked. It reminded me of the time I struggled to understand the Monty Hall Problem – until I wrote a Python program to emulate it.
  • Happiness through sharing your knowledge. One small moment was the absolute highlight of my two days. We’d all finished, given our presentations about our projects, about to pack away and I wandered over to another group whose project I really admired (hello @misskteague!). They were stuck sending radio messages between microbits, and I knew I’d done something similar a few months ago and was able to find my write-up (see, writing stuff up is important!), they copied a few lines of Python code, it worked! High-fives and smiles all round and I (selfishly, but it’s a good kind of selfish) felt utterly filled with happiness.
  • It’s intense. I didn’t get a whole lot of sleep, and not just because of the thunderstorm on Sunday night. There was a thunderstorm going off in my mind for 2 days. The day after I lay down in the afternoon and slept deeply for an hour. Be prepared to have your mind blown!

Thank you so much to all my fellow course members for your kindness, generosity of ideas – and what great ideas you all have! Thank you to The Museum of London for being perfect hosts and taking us on a tour round the exhibits. And a huge thank you to the folk from the Raspberry Pi Foundation who made these two days so special: James Robinson (@LegoJames), Laura (@CodeBoom), Marc Scott (@Coding2Learn), Lauren Hyams – fellow Wittertainee! –  (@lauren_hyams), Dan Fisher (@fluffywyvern), Ben Nuttall – GPIO guru –  (@ben_nuttall), and last but not least, Pete Lomas (@PeteLomasPi) who presented us with our certificates and gave an inspirational talk about how technology shaped his life, from a boy who hated school to being one of the co-founders and inventors of the Raspberry Pi.

I leave Picademy inspired, happy and well fed in body and mind!

Foo Fighters Tribute Band’s new album

Posted in education, ICT, microbit, Raspberry Pi | Tagged , , | Leave a comment

Binary revision activity

I love making teaching resources in Scratch – even better getting pupils to make them too! Here’s a quiz I am going to use even as high as Year 9 to help them revise the binary number system: (requires Flash)

This fits in with the CS Unplugged cards I used to introduce them to binary numbers. Click the green flag and it generates a random 5-digit binary number. Add up the dots to get the decimal equivalent and it shows you the correct answer if you get it wrong. Click the green flag again to have another go. You can also hide the cards to make it more challenging.

I’ve made another project to revise converting base 10 to binary:

Click the green flag to make a random base 10 number, then click the 0s and 1s to flip them until you think you have made the right total. Press ‘check!’ to see if you are right. You can also turn the dot cards on or off depending on how challenging you want it to be.

Of course if the pupils are keen Scratchers they can remix these projects to work with longer numbers or add a scoring system…

Posted in education, ICT | Tagged , , , , , | Leave a comment

Original Macintosh Finder font

Demo of FindersKeepers font

I am a bit obsessed with Susan Kare’s original 1984 Macintosh bitmap fonts and design and made my own Truetype version of her great Chicago font using BitFontMaker.

I then got intrigued by the font used on the labels of items on the Mac desktop – I couldn’t quite figure out which font it was. It was really tiny – about 7 pixels high – and elegant and none of the other default fonts seemed to fit the bill. I eventually worked out that it is actually 9pt Geneva, but the way I worked it out was a bit odd.

I typed all the characters possible in the label on a folder in a 68k Mac emulator and then… I saw a sheep! It turns out I had found an Easter egg! It turns out that the capital letter Y with an umlaut produces completely different pictures at different point sizes:

geneva font easter egg

At 9pt you get a tiny sheep, then as you make the size bigger you get a little Mac, a bird, a bigger sheep and then a running hare or rabbit. I can only assume they were put there by Susan Kare and have been largely ignored ever since!

You can download my TrueType version of 9pt Geneva – which I’ve called FindersKeepers – here.

UPDATE

I’m thrilled to have had this tweet from Susan Kare herself!

Posted in lowendmac, nostalgia | Tagged , , , , , | 5 Comments

Two (3!) new old bitmap fonts

sample of fontsI’m a huge fan of Susan Kare’s work – she designed the beautiful fonts and icons on the original 1984 Macintosh computer, a real work of art. I am always telling my students about this. They probably think I am a little crazed, but I genuinely don’t think a computer GUI has ever been more elegant with so few pixels. Sometimes less really is more.
Screenshot of 1984 Macintosh desktop
Anyway, I got sidetracked today making some of my own versions of her original Mac system font Chicago – the first version I did was a loose interpretation which I call Windy City – it’s bigger and thicker than the real deal and is more like my own Bauhaus font.

I then made a pixel-by-pixel copy of the real Chicago. The letters and numbers are precisely faithful to the original, but the punctuation is largely guesswork. I managed to open some 68k Mac system fonts today – including the ransom-note style San Francisco – but I could not get the bitmap version of Chicago to open in anything. More recent TrueType versions are no good for this.
San Francisco font on OS X
You can download ChiKareGo here and Windy City here. They were both made with the totally awesome BitFontMaker2.

UPDATE

Demo of ChiKareGo font

I’ve now made an even better version of ChiKareGo called ChiKareGo2 – more faithful to the original Chicago font because I have been able to look at the symbols and extended characters in a 68k Mac emulator. I’ve also made the letter spacing 2 pixels instead of 1 to make it look more like the original Macintosh screen (although the original Mac seems to have used kerning! Sometimes it puts 1 pixel space between letters, sometimes 2.) I’ve also included some stripes, a dialogue box close square, 2 shades of shading and even an Apple logo – oddly this seems to be missing from the original Chicago font!

ChiKareGo font map 1

ChiKareGo font map 2

I’m now going crazy trying to work out what the font was on the labels of icons in the Finder – it doesn’t seem to be quite Monaco nor Geneva and I can’t find any reference to it anywhere… my next project is to recreate it…

68k Mac screenshot - Chicago font

Examples of ChiKareGo in use

Tide time display using a Pimoroni InkyPHAT e-ink display on a Raspberry Pi:

inkyPHAT tide times

Radio screen on an OLED display / Raspberry Pi:

internet radio

Retro Mac watch face for the BangleJS smart watch:

working MacWatch prototype

Posted in lowendmac, nostalgia | Tagged , , , , , | 12 Comments

The FaderPhone microbit musical instrument

Today I made a (sort of) electronic musical instrument with a BBC microbit and an old BBC radio studio fader.

It’s wired up like I did previously, only I used pin 1 in place of pin 0 – as pin 0 is used for connecting the speaker.

Here’s the Python code, all 8 lines of it – perhaps someone musical can give me better arpeggiator numbers!

from microbit import *
import music

while True:
    fader_reading = pin1.read_analog()
    display.scroll(str(fader_reading),wait=False)
    music.pitch(fader_reading, 100)
    music.pitch(fader_reading+100, 100)
    music.pitch(fader_reading+200, 100)

UPDATE

I’ve now wired up the green cue switch to change the tempo and tweaked the arpeggio notes a bit. The cue switch on the BBC DK4/19 mixing desk was insanely clever. This totally analogue desk let you assign any source to any channel using a rotary selector. The cue switch would then put the appropriate green cue light on if a microphone was selected, start a tape machine if a tape machine was selected, fire off a cart if a cart machine was selected, or signal an outside source (e.g. give a remote studio a red light and put their desk in transmission mode).

Anyway, I digress… I’ve also made the A and B buttons on the microbit stop and start the thing as it does get annoying very quickly.

The circuit now looks a bit like this:

Here’s the new Python code:

from microbit import *
import music
c = 131
e = 165
g = 196
duration = 150
started = False

while True:
    if button_a.was_pressed():
        started = True
    while started:
        if pin2.read_digital() == 1:
            duration = 100
        else:
            duration = 150
        fader_reading = pin1.read_analog()
        music.pitch(fader_reading, duration)
        music.pitch(fader_reading+c, duration)
        music.pitch(fader_reading+e, duration)
        music.pitch(fader_reading+g, duration)
        if button_b.was_pressed():
            started = False
Posted in Uncategorized | Tagged , , | Leave a comment