Tech Fest Dubai, Teaching With Raspberry Pi

This week I’ve been teaching/training in Dubai as a guest of Dubai English Speaking College. While I was there I led a series of Raspberry Pi workshops for teachers, children & families to discover the potential of the Raspberry Pi

On the first day I led a day long workshop for 20 computing teachers from around the Middle East to enable them to understand the potential of the the Raspberry Pi computer including where and how it might feature in their schools’ computing curriculum. I shared many of the strategies I’ve been using in my own classroom and at our Raspberry Jam events.


The following morning I led some assemblies for the whole school to help them to understand what the Raspberry Pi is, why they might want one and what they could do if they had one. Rather than simply speak at them for 25 minutes, I used a few different tricks to entertain them and spark their interest, including a live rendition of my ‘Hack Rap’ and a game of ‘Three Truths And One Lie’. After the assemblies  children took part in 1 hour Raspberry Pi workshops with me.

I then adapted these lessons for the Tech Fest which took place the following day on the Friday. This time the audience were a mixture of children, parents and teachers.


Although I was teaching/training at DESC for about 11 hours while I was there, my sessions followed a similar pattern. Here’s what I did…

Ignite interest

To ignite interest in the Raspberry Pi computer, we started each session with a live demonstration of something running on the Raspberry Pi when they entered the room. I had the Pi Edition of Minecraft running with some models that had been built with assistance from Martin O’Hanlon‘s and Craig Richardson‘s blogs. Those that had previous experience of Minecraft were captivated by what could be done on the Pi edition, while those who had never seen Minecraft were curious as to what it was.

Why Pi?

Then, rather than simply tell participants what a Raspberry Pi is, I thought it wiser to find out what they knew already and start from there. So I asked each participant to first think about what a Raspberry Pi is and why anyone might want one, then see if the person next to them had different answers. Then I selected a few people and asked them to use one word to summarise what they had discussed with their partners. After checking then that we had exhausted all knowledge and experience in the room, I attempted to fill in any gaps and correct any misconceptions they had.



The Raspberry Pi does not exactly work straight out of the box, so the purpose of Sabotage is to help participants understand what is required to get a Raspberry Pi up and working.

The first step was to establish from all present what (extra) ingredients they thought were necessary for the Raspberry Pi, eg. power, display, input devices, OS & storage. All these were then made available to them to get their Raspberry Pi computers working, once they had successfully managed to boot up their Raspberry Pi, the next activity was to hack a game in Scratch. However, the point of Sabotage is that someone had previously deliberately done something to prevent each Raspberry Pi from working, eg. removing the OS or removing the power connection from their device just enough to stop it from working. While many struggled to get their computer working straight away I made myself available to support them, with one exception – that was that I would only answer their Question With A Question (QWAQ). So, if they said, ‘Why is mine not working?“, I replied “What have you checked already?“, if they said that the power cable was connected to their Pi, I asked “Have you checked both ends of the power cable?“.

An interesting conclusion I formed from watching different groups experience Sabotage was that certain groups of individuals genuinely expected that the Raspberry Pi would work straight out of the box in much the same way that an iPad would. This was both a revealing and unnerving experience for those groups.

The best part about Sabotage is that you get to sabotage the device you have been using for the next group. There are a variety of different ways that Sabotage can be implemented.

Hacking Games with Scratch

One of the under-looked features of Scratch is that it comes with a library of completed examples that other users have already created. Rather than start ‘from scratch’, sometimes it’s equally valuable to start with a ready-made example and make changes and modifications that either improve or break it.

I showed a quick demonstration of the Marble Racer game, showing just how rubbish the game is in it’s current form ( apologies to the creator). I asked them to work in pairs to first play the game to discover it’s shortcomings, then hack the game to make it more enjoyable, entertaining, addictive etc.

Forking a Path

After everyone had got their devices booted up, and were hacking the Marble Racer game in Scratch (well everyone apart from the group that still can’t get their sabotaged Raspberry Pi to boot up) I asked everyone to stop and offered an alternative. The alternative channel being offered was some text-based programming with Python. I made it clear to all that this activity was completely optional. If they were already hooked into hacking Scratch games, I wanted them to enjoy the moment while it lasted.

Celebrity Chat Roulette  

The point of this activity is to give participants a rapid but productive introduction to programming using a text based programming language. I explained that we were going to resurrect Elvis from the dead and create a computer based version that we could have a conversation with, or substitute with any other person dead, living or imagined. I warned them that do this justice we really needed to spend a good number of hours developing this, but this exercise was just to give a taste.

I quickly scripted a few lines in IDLE on the Pi and asked all those who opted into this activity to follow as these would form the basic building blocks of our celebrity chat bot. The lines follow this format…

print("Hello. What is your name?")
name = input()
print("Well, it sure is nice to meet you",name)

After successfully testing that these worked, the onus was on them to work with their partner and gradually add more levels of complexity to their chat bot. They developed theirs by adding questions about favourite types of music, home town, food etc. Some went on to incorporate more advanced features like randomised responses and replies that seemed to be based on some logic.

And finally…

When I knew that there was a group following the current group I asked every pair to decide what they were going to do to sabotage their device to prevent the next group from having a smooth experience. I did insist on a fixed number of problems for everyone and a list of agreed problems we could create. A nice addition would have been for the saboteurs to write down on a sticky note what they had done ie. the answer.


It’s worth explaining that I didn’t rigidly stick to this script with every group as every group had differences between them and some groups led me off in different directions since their curiosity was aroused by different circumstances. If I’m completely truthful, there were some participants who came to the session after hearing all the buzz and excitement and were expecting to be wowed by some amazing piece of sleek, shiny technology to rival xbox 360s, iPads and Google Glass. These were the ones who remarked, “But it’s just a circuit board!“. However, in the main most participants (children, parents, teachers etc.) enjoyed being challenged throughout and loved the fast-paced approach of the session.

All credit to Lisa Finch and her colleagues at DESC for developing a fantastic programme of events during Tech Fest for teachers, families and children. They went out of their way to make my stay as comfortable as possible. It was an immensely rewarding and enjoyable opportunity and I look forward to more adventures like these.



Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s