An Easter gift – RPi beginner’s worksheet

I’ve been running a few workshops for Crossover Solutions and have created some Raspberry Pi Physical Computing resources that seem to go down well with both children and adults and so, as a little Easter gift to you all, I’ve decided to share the worksheets.

There are four in total – ‘Your First Circuit’ ‘Scratch’ ‘Python’  and ‘Next Steps’, all designed to be an introduction to physical computing. My experience has been that pupils will get three LEDs blinking in Python within an hour – I’m sure you could do it quicker, but it’s really important to discuss with the pupils what they’re doing at each stage and why so I tend to take my time to ensure that conversation happens, particularly since this can be used as a transition from Scratch to Python as well as an introduction to electronics.

As always, huge thanks to the Raspberry Pi Foundation for the inspiration to produce resources like this, as well as their never ending support.

Get in touch if you’d prefer an editable version and I will send it over to you, otherwise click on the link below for a pdf.Screen Shot 2017-04-16 at 11.22.24.png

link: Workshop – crossover

Creative Commons Licence
Crossover Workshop by Cat Lamin is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Trying out the Micro:bit

It’s taken me far too long, but I’ve finally got my hands on a Micro:bit! I often get asked about these little micro-controllers and whether they are useful to have in the classroom so I’m looking forward to testing them out. Thank you very much to Nic Hughes for the loan!

The first thing to say about the Micro:bit is that unlike a Raspberry Pi, it’s not a computer; it’s a micro-controller like an Arduino, which needs to be plugged into a computer to have code uploaded to it. In contrast, a Raspberry Pi is a computer which does not need to be connected to anything else to work. This means that the Micro:bit is slightly more limited than a Pi, but it’s still a cool device.

So, let’s take a look at the physical hardware. The Micro:bit has a number of exciting features, not least of which are a host of components, which are clearly labelled on the back of the device – in particular, a compass, accelerometer and BLE antenna. I really like how clearly everything is labelled on the back for the device, this can be a great teaching point – what do we think each of those things do? How can we integrate them into our code?

The front of the device has 25 red LEDs in a 5×5 array. There are also two programmable buttons, 3 hardware pins, a 3V pin and a ground pin which can be used for add ons like NeoPixels or a growing range of Micro:bit boards designed to fit onto the Micro:bit like HATs on a Raspberry Pi.

In order to use the Micro:bit, you’ll need to head to the Micro:bit website. I suspect that there is an offline version of the various code editors, but for now I’ll work on the assumption that I need to work online. I know you can download Mu (pronounced moo because the creators liked the idea of ‘teachers saying moo in class’), which is a micro-python code editor for the Micro:bit, but I’m not sure about the other code editors.

Given my primary background, I will focus on block-based coding for now, but I can always follow up with a look at micro-python in a few days.

I love that there seems to be a wealth of activities on the website, including a special ‘Mother’s Day Challenge’ (For Americans and other non-UK people, Mother’s day in the UK falls in the middle of lent, which is usually in March, rather than mid-May).

Screen Shot 2017-03-07 at 09.50.58.png

For now, I’m going to be looking at the ‘Let’s Code’ section of the website.

Screen Shot 2017-03-07 at 09.54.00.png

When I first looked at the site a few weeks ago, the JavaScript Blocks editor was still in Beta, but Nic was very firm that we should be using it over the previous blocks editor made by Microsoft. I’ve also seen a tweet today showing that python-blocks is in development, although still only in Alpha at the moment. I can’t wait to see what it looks like!

Screen Shot 2017-03-07 at 09.58.43.png

It’s worth taking a look at the projects page for some ideas about where to start with the Micro:bit and there are a few teachers coming up with schemes of work that use it (I suggest getting in touch with Spencer Organ who has written an entire scheme of work around Harry Potter).

Screen Shot 2017-03-07 at 10.00.44

Since I’ve had so much fun making animated pets on the Pi lately, I figured an obvious start point for me would be to do something similar on the Micro:bit. Interestingly, when I went into the code window, it had remembered the piece of work I did several weeks ago when Nic first showed me the Micro:bit, which saved me having to hunt around and figure out the code!

So here’s how the screen looks – it has a nice familiar feel to it since it’s based on Blockly and is therefore very much like Scratch. The blocks are nicely colour coded depending on what you want them to do. I’m particularly curious about the ‘radio’ and ‘music’ options – I think you can allow Micro:bits to talk to each other, but I could be wrong – definitely something I’d like to investigate further.

Screen Shot 2017-03-07 at 10.06.50.png

Here’s a closer look at the code I’ve written – the ‘pet’ was a little harder to draw on 25 pixels so it looks a bit weird.

Screen Shot 2017-03-07 at 10.06.44.png

One frustrating thing about the Micro:bit is that you need to download the code and then manually drag and drop it into the Micro:bit although I’m told on a PC you can set the download location directly to the Micro:bit, still it’s a bit of a faff.

Screen Shot 2017-03-07 at 10.07.14.png

A really cool feature of the Micro:bit website is that you can test your code on the website – in the video below you can see that you can test the ‘shake’ feature both by clicking on the shake button or by manually ‘wiggling’ the device. I think it’s really important that we remind children to check their code regularly as it can be really hard to find an error in your code if you’ve written loads and not checked it.

In the second video, you can see the code running on the actual Micro:bit.

There seem to be lots of input options to use instead of ‘on shake’ and I’d be interested in giving them a go, although I’m not sure what they mean. There are also other options to drag in. Take a look below:

Another nice little feature of the blocks editor is that you can view your code in JavaScript. I look forward to this being possible for Python too, which looks like it’s in development based on Nicholas’ tweet mentioned above.

There are a few ‘advanced’ options I’d be keen to explore, as well as the ability to add in packages for add ons which seems intriguing. Hopefully I’ll have a chance to explore some more features soon.

So, what do I actually think about the Micro:bit?

I’m actually more impressed than I thought I would be, I was expecting to be underwhelmed and instead I had great fun playing with the Micro:bit. The website is fairly easy to use and has some lovely features. I look forward to seeing it develop further. I know there are teachers crying out for schemes of work relating to Micro:bit so perhaps that’s something that needs developing further and in my brief hunt around the site I didn’t see any obvious explanation of some of those features in the code editor, but I admit I wasn’t looking too hard.

If I had my way, I’d like to see teachers using Micro:bit with a Raspberry Pi to really emphasise the technology and make clear how unique and exciting digital making can be – check out this resource on using the Micro:bit with Pi. However, if you forced me to choose between Micro:bit and Pi, Pi would win every time, it’s just more versatile and has more opportunity to develop your skills.

Micro:bit is a great place to start on a journey towards digital making and at £12.50 (or £15 if you want a battery pack with it), it’s fairly affordable, but it is simply a start point and you can achieve so much more with Arduino and Pi – for schools it is a good way to introduce text-based languages and I am particularly looking forward to the new block-Python that is being developed. In the long term, however, I know what I’d rather see being used.



Upcoming Talks and Events

I’m very excited to be taking part in some events coming up where I will speaking and running workshops etc.

First up is Coding Evening in Twickenham next week – the lovely Stokes and Moncreiff pub are hosting yet another Coding Evening for us on Thursday 19th May in their upstairs function room. The folks from Pi Top are hoping to pop over and we’ll have lots of cool ideas to help teach computing so come along to find out and get some inspiration for teaching computing whether you’re a complete novice or an experienced programmer!

Next up is the annual CAS conference in Birmingham on Saturday 18th June, I’m going to be running a workshop to show teachers how to use Scratch GPIO on the Raspberry Pi – the conference is looking to be a fantastic event with loads of exciting talks and workshops running.

On Sunday 26th June, along with Albert Hickey of Egham Jam, I’m helping to launch Wimbledon Raspberry Jam – we’re aiming to make the event as family friendly as possible, with talks about Primary Coding from me, Astro Pi from Richard Hayler and various others, including a very special talk from 10 year old Izzy, who is going to share why she finds coding so interesting and exciting. We’re also going to be running Minecraft workshops and Scratch workshops to show off some cool physical computing ideas.

On Saturday 23rd July (two days before my birthday), I’ll be travelling down to my home county of Cornwall to launch the first Truro Raspberry Jam at the Truro campus of Truro and Penwith College. We will also be hoping to run talks, workshops and show & tell tables – I’m really excited as the Cornish tech community are eager to share their excellent work. The Truro Jam is being launched in collaboration with Cornwall Tech Jam, Software Cornwall, Truro and Penwith College and various other groups!

Pycon UK is moving venue this year and will be held in Cardiff City Hall from Thursday 15th to Monday 19th September and I’m hoping to be there helping out with the Education Track on Friday again. The previous two years have been incredibly good fun and great for networking and getting ideas for teaching Python in schools.

In early November, I will hopefully be helping out at Mozfest and there are various other events coming up that I hope to be involved with too so keep an eye out for announcements on twitter about other events where you can find me talking and helping out.

There are also several upcoming events that I wish I could be a part of, but am unavailable due to various other commitments so I want to mention them and urge you all to go along if you can!

First up, Grace Owolade and her son Femi are hosting their third autism and tourettes friendly Raspberry Jam in South London on Saturday 14th May. Unfortunately I volunteered an afternoon of robot building to a charity auction and so am fulfilling my promise on Saturday so I can’t go, but I really hope to be able to support Grace and Femi more in the future as I think what they are doing is so important!

On Friday 17th June, the education team at Roehampton University is hosting a Festival of Computing with lots of great workshops and talks – it should be a great day! I was lucky enough to be invited to talk, but it’s on a school day so I can’t attend!

Finally, on 11th June, the amazing Carrie Anne Philbin is hosting a CAS #include Diversity & Inclusion in Computing Education Conference in Manchester. I really wish I could attend this event as I’m sure it will be super, but I’m fulfilling yet another aucition promise and taking some children for a picnic in the park. Make sure you go if you can!

So, lots to look forward to in the coming months! Very excited and hope to see some of you at some of the upcoming events.






Coding Evening Part 2

Just a quick post…

I’ve met with so many lovely people in the last few weeks and I’ve mentioned my coding evening to them so I thought it was worth writing a quick post to make the event page easy to find. I also want the opportunity to explain a little about how I want the evening to run.

So, way back at the end of January, I hosted my first coding evening, with the goal of getting teachers, Code Club volunteers and Raspberry Pi enthusiasts into one room just to see how everyone is getting on.

It turned out to be a lovely evening with lots of great chat about ideas for teaching the new computing curriculum and lots of enthusiasm to repeat the event.

For next Friday I’ve once again booked the lovely function room of the Stokes and Moncreiff pub in Twickenham. I hope to have three Raspberry Pis set up for people to try out or demonstrate on. I also plan to bring loads of resources and print outs from Code Club, Code Kingdoms etc. There’s an added bonus of the pub downstairs serving beer, wine, spirits (and soft drinks) as well as pleasant food which they will deliver to the function room. There will be Code Club volunteers, technicians, Raspberry Pi fans and an iPad specialist on hand to answer your questions. It would be lovely if people are willing to stand up and talk for two minutes on a subject of their chosing, but I’m certainly not going to enforce this.

So, if you’re still interested in coming, click the link below, sign up (it’s free) and we’ll see you there for a burger, beer and a great conversation about the computing curriculum:

Picademy – Why Apply?

As you may have noticed, I’m a bit of a Raspberry Pi fangirl, which came from attending Picademy last July. I did what many primary schools did – heard about Raspberry Pi and bought some Maplin kits which then sat on the shelf because I didn’t really know what I was doing. I had a look on the internet, but I just wasn’t really confident enough to give them a go – I did manage to set them up once or twice and desperately tried to use LXTerminal to make a jelly baby scream, but I really didn’t know what I was doing. One day, while checking twitter I happened to see a post about Picademy and started doing some research – at that point they had hosted one Picademy and were advertising for two more in June and July – luckily for me the July course coincided with the end of term and so I made a video and sent off my application; once my place was confirmed, my school agreed to pay for my expenses and I was all set for two days in Cambridge.

The first thing I really loved about Picademy were the emails that started flying back and forth beforehand. Within an hour of being offered a place, Christine, a teacher in Bradford, had agreed with me via twitter to try to get everyone staying in the same hotel. Within a few days about 80% of us were booked into the same Travelodge on the outskirts of Cambridge and we were getting excited about meeting each other.

I was the second person to arrive and I headed down to meet Tom Sale in the hotel bar for a quick meal. As we sat there more and more people arrived, some people recognising each other, others of us being strangers to everyone – people were offering to collect other members of our group at the train station, we were starting twitter hashtags around our jokes and, much to Carrie Anne‘s dismay, the beers were flowing freely. It was a fantastic bonding experience and as the evening drew to a close, we booked our taxis to PiTowers for the morning.

The first day of Picademy we arrived and had to chose one of 4 tables – the tables were labelled with the names of 4 ‘master teachers’ from our group – much to our surprise, several of our new friends were already making a mark in the world of computing. I chose to sit with Matthew Parry, a robotics specialist working in a special school and our adventure began.

Most excitingly, we were starting Picademy on the day that Raspberry Pi B+ was launched and so everyone one of us had a brand new B+ in our goodie bags – we were the first people in the world to start using one – a huge honour!

IMG_4902     IMG_4905

After a brief intro from Carrie Anne Philbin, we were taken into another room to look at some Scratch GPIO and Minecraft coding in Python – both of which were new and interesting to me. After a lovely lunch we were then shown how to set up a PiCamera and then spent some time with Sonic Pi – Unfortunately for us, we were the only cohort to not have the experience of Sam Aaron showing us how to live code music, but I have since seen him perform and can honestly say that he is amazing!

IMG_0219 IMG_4907 IMG_4906

The lovely people at The Raspberry Pi Foundation took us out for a meal in Cambridge and then we headed to a nearby pub to start discussing our independent project ideas for the next day – there were some really cool ideas flying around like coding a Minecraft version of Portal or using plates and tin foil to make a dance mat and everyone was really excited for the next day to come around. Back in the hotel bar, more ideas were bouncing around the table, some ludicrous and some perfectly feasible.

When we sat down the next day, Matthew revealed to us his idea – while the other tables in the room split off into pairs or small groups, we stuck together and planned our Tweeting Babbage Bear.


The idea was to use the Raspberry Pi mascot Babbage Bear and make a twitter bot which photographed you and sent it to twitter; the only difficulty was getting permission to pull apart the beloved bear!

We split into teams with different task – Matthew and Hannah worked on the code for photographing, whilst Eve and I set about finding out how to tweet from the push of a button attached to the Pi with various other members of our team working on other ways to make Babbage interesting, from sounds to LED vests. All credit to Ben Nuttall of the Foundation who very patiently guided us through the set up, using GitHub and finding the right commands for Twitter API and apologies to everyone else for the massive scream of delight from Eve and myself when we finally got the code to work. We were so proud of our tweeting Babbage and particularly so when a few months later Ben turned the project into a resources on the Raspberry Pi Website.

After receiving our badges our adventure at PiTowers came to an end; however, that wasn’t the end of the story at all.

Since Picademy, not only have I kept in touch with my cohort, I’ve come in contact with members of the other cohorts via Google, Twitter and through meeting them in person at events. I’ve also made contacts with people wanting to join Picademy who want to ask my advice or just to find out about what it’s like. I’ve become part of the Pi community, making dozens of new friends, some of whom I’m finally met this weekend at the Pi Birthday party. I know that if I have a teaching or Pi problem, dozens of helpful people are simply a tweet away. Through my contacts I’ve ended up speaking at BETT and organising coding evenings and, most importantly, I’ve gained the confidence to affectively teach the children in my care as well as to share my ideas with my fellow teachers.

Picademy was one of the best experiences of my life and I would thoroughly recommend it to anyone else.

PS Here are some pics of the destruction of Babbage – not for the faint hearted!

IMG_4914 IMG_4915 IMG_4916 IMG_4917 IMG_4920 IMG_4921

PPS – this photo was captioned ‘Certifiable’ and was taken just after we became RCEs – I’m meeting these two lovely ladies for some cocktails in a few weeks so not only have I made amazing professional contacts, but I’ve also made a great bunch of friends!


A Mac Geek’s guide to VNC on the Pi

Do the following in order to get VNC working on your Pi, advertised over Bonjour.

  • Plug Pi in to network and power
  • ssh into your Pi after finding out its IP address by looking at your DHCP server’s leases or scanning for the Pi using nmap (

    $ sudo nmap -p22 --open

Nmap scan report for
Host is up (0.0039s latency).
Not shown: 98 closed ports
22/tcp   open  ssh
MAC Address: B8:27:EB:4C:3D:1C (Raspberry Pi Foundation)

$ ssh pi@
pi@pi ~ $ sudo raspi-config
  • Enable the Pi to boot to desktop rather than stop at the CLI
    Set hostname to something unique from the advanced menu option
  • define http proxy if required. Either edit .bashrc or use your preferred method.
  • Update stuff and install required packages
    sudo apt-get update
    sudo apt-get install avahi-daemon
    sudo apt-get install x11vnc
  • Copy the supplied avahi service file
    sudo cp /etc/avahi/services/udisks.service /etc/avahi/services/rfb.service
  • Edit the file and change udisks-ssh to rfb and 22 to 5900. Save.
    sudo service avahi-daemon restart
  • Set a vnc password using
    x11vnc -storepasswd
  • Insert the following into ~/.config/autostart/x11vnc.desktop
[Desktop Entry]
Exec=x11vnc -forever -usepw -display :0 -ultrafilexfer
  • Reboot Pi. Once booted the Pi should appear in your Mac’s network browser and you should have VNC access via Screen Sharing.
  • If necessary, edit /boot/config.txt to change screen resolution. I use the following settings:



Hour of Code – Frozen

In December there was a lot of press about Hour of Code; they managed to get Barack Obama to write some code (and David Cameron, but does anyone really care?). The site was also really lucky to strike a deal with Disney to be able to use Elsa and Anna from Frozen. As any primary school teacher knows, Frozen is a sure fire way to get the interest of nearly any KS2 girl!

So, what’s it all about and is it any use? I set my year 5 and 6 kids to have a go and work through the exercises, needless to say the girls enjoyed it more than the boys and were quite chuffed with their certificates (even the hardened Year 6 girls who like to pretend they’re too cool for Frozen), whereas my boys scrolled down the site and found the Angry Birds game and gave that a go.

I’m really impressed with the Frozen resource not least because it works on iPads as well as on a laptop.

Screen Shot 2015-02-20 at 15.13.56

The first thing you see when you go to the site is a video explaining why computer science is important – the first minute or so includes Bill Gates, Mark Zuckerburg and the guys who created Dropbox and Instagram as well as programmers from Google and Microsoft. We are also introduced to two models, one of whom is a complete beginner at coding and one who studied computer science as well as theatre at college – it is through the latter of these, Lyndsey that we learn about the the Frozen code – we will be guiding the characters through various ice skating tasks using Blockly (similar to Scratch), which is a block based language of code. The remainder of the video features Lyndsey explaining how Blockly words, although anyone familiar with Scratch should be able to pick it up quite quickly.

So how does it all look:

Each puzzle begins with a splash page explaining what to do

Screen Shot 2015-02-20 at 15.24.11
Then you are taken to the main coding window – like other block based languages, it’s just a drag and drop activity.

Screen Shot 2015-02-20 at 15.24.18

You will notice that the goal for this task is repeated in the bottom left of the window.

Screen Shot 2015-02-20 at 15.24.26

So here you can see my first line of code – its useful to note that the instruction video doesn’t mention the “when run” block that your code needs to be attached to – presumably this was added after the video was made.

You also get a nice little congratulations window at the end of each puzzle:

Screen Shot 2015-02-20 at 15.24.33

So puzzle two just adds a simple right hand turn – I asked a teacher to have a go at this task and she managed to completely forget to add a forward block after the turn, which is also a common mistake children make so be prepared for this!

Screen Shot 2015-02-20 at 15.24.40Screen Shot 2015-02-20 at 15.25.02Screen Shot 2015-02-20 at 15.25.11

There are aScreen Shot 2015-02-20 at 15.24.52 couple of other nice features as you work through – firstly, when you run your code your animated Elsa walks through what you’ve asked her to do, flinging snowflakes as she goes and this can be quite irritating after a while, so you can speed up the code using the hare and tortoise icon below the ‘run’ button.

Screen Shot 2015-02-20 at 15.25.16Secondly, after you’ve completed the level you can click on the ‘Show code’ button and it will show you what your code looks like in JavaScript, which is a feature that really appeals to the older children I teach.

After lesson 3, we’re introduced to Paola, who works for microsoft and explains loops to us ready for Anna’s task, which requires loops and a bit more thinking to figure out.

Screen Shot 2015-02-20 at 15.39.02

Anna’s first task simply involves putting our first loop in, but the second involves reading the instructions carefully! The code is pre-written and all the user needs to do is change a couple of variables.

Screen Shot 2015-02-20 at 15.39.39

Now we’re starting to get a bit trickier with our activities, but we’re still presented with the code first and asked to make alterations to the variables:

Screen Shot 2015-02-20 at 15.41.32Screen Shot 2015-02-20 at 15.41.46

Puzzle 8, unfortunately, expects our children to know how many Screen Shot 2015-02-20 at 15.44.58degrees are in a full turn and then use that to calculate that Elsa needs to turn 36 degrees each time to make a star pattern that has ten points, but I guess with trial and error the children could get it since there are only a few options on the drop down menu.

Then we’re asked to do it 90 times, but with a subtle hint as to what angle we need (the options are 4, 45, 60, 90, 180 and 360, so it is kind of obvious).

Screen Shot 2015-02-20 at 15.47.15 Screen Shot 2015-02-20 at 15.47.24

We’re also rather casually introduced to a change colour variable here, which is lovely, but a bit unexpected!

Screen Shot 2015-02-20 at 15.52.30I’m not going to lie, the maths teacher in me got a little overexcited when it saw the next activity was all about drawing parallelograms, until I got really frustrated by drawing rhombuses that had been labelled as paralleograms – I mean seriously, the amount of time I spend explaining that if a parallelogram has 4 sides of the same length then it’s a rhombus – I suppose it could have been worse, they could’ve called it a diamond. But in all seriousness, it’s great that the children are being encourage to think about shapes and angles in this much detail!

Interestingly, for all of the activities after they randomly dropped it in, the set colour block has been in your toolkit and there is a block space for you to drop it in should you desire, but it still hasn’t been explained – I’m assuming this is some kind of bonus for the able kids who will figure out what it does and feel pleased with themselves for self-extending.

After coding Anna to skate in a circle, we are given another video where Chris, an NBA star and coder uses basketball as a metaphor for functions – I’m not going to lie, it’s a lovely idea, but the concepts of functions are not an easy one to understand – I’m still a bit bewildered even after a year or more of trying! In the video, Jess (CEO of a company I’ve never heard of), shows uScreen Shot 2015-02-20 at 16.02.37s that we can call our earlier code to draw a square ‘square’ and define that as a function so that whenever we call ‘square’ that piece of code is run – this concept is very clearly shown by the diagram embedded in the video, but I still feel like it may be a bit too difficult for a child to understand.

Screen Shot 2015-02-20 at 16.04.37Fortunately, we don’t actually need to understand the concept of a function, we just need to understand that we can now simply drop the ‘create a circle’ function into the code and it does the circle drawing code for us!

Screen Shot 2015-02-20 at 16.05.10 You’ll notice that the ‘set color’ option is still being snuck into every activity.

The next few activities really needs us to start thinking:Screen Shot 2015-02-20 at 16.08.28Screen Shot 2015-02-20 at 16.11.25

The clues are there for what angles you need, but it’s not as explicit as it was in the beginning. Still, I’m making some pretty pictures, and I’ve become slightly obsessed with putting the random colour block in…

Screen Shot 2015-02-20 at 16.14.29So, finally, I’ve managed to get onto the final task and earn my certificate! The final activity is a freeform drawing page and I just left mine blank and still got a well done. Hooray for me! I even managed to publish my certificate to twitter.

 Screen Shot 2015-02-20 at 16.14.34  Screen Shot 2015-02-20 at 16.14.41 Screen Shot 2015-02-20 at 16.15.09

So, some conclusions – the Frozen activity at is a fantastic way to get kids interested in coding, especially girls. It gets tricky, but it’s not impossible with a little patience, especially as all of the tools are there and the drop down menus don’t give you too many options – even with trial and error you’d get it right in the end. I also liked that it gets adults more enthusiastic about code too – I showed this too my Year 3 teacher, who previously just didn’t get the point of coding and we ended up with several members of staff around the table getting invovled and asking questions – including “how is this coding?” which of course meant I had the opportunity to jump in and explain that block based coding teaches algorithmic thinking and just basically doing things in order. Year 3 are going to try this out next term because she enjoyed herself so much, although I am concerned that some of the angle work later on might be a bit too tough for them…

Overall this is a great activity and I can’t wait to try out some of the other resources on the site.