Education Pioneer at Raspberry Pi Foundation, Google Certified Teacher, Vice Chair of CAS #include, Creator of the Geek Gurl Diaries, Moodle Admin, CEOP Ambassador, Nerd, Tea expert, Londoner, and so much more.
I've had a large number of requests on twitter to give details of my experience running a Raspberry Pi workshop at my local library during half term. I hope this post will give you the audience everything you need to do something better!
Libraries
During the summer holidays I contacted my local libraries to see if they would be interested in running a Raspberry Pi workshop. Havering Libraries are fantastic at organising events for both young and old. Every month I attend my local library book club and this weekend a local library is running a craft event where I intend to buy some Christmas sticking fillers! I used the Havering Libraries facebook group to make contact initially and very quickly I was put in touch with the tech savvy member of the libraries who was really enthusiastic about the idea. This half term has been 'Geek Week' at Havering Libraries with a large number of events taking place. It seemed ideal to run a Raspberry Pi workshop as part of that, during half term. I am a secondary school computing teacher by trade, and such a profession allows me to be able to work with children as I have had all the checks to do so. I would thoroughly recommend if you have not had a CRB or DBS check through Stemnet.
Equipment
I have a set of roughly 10 Raspberry Pis, mainly due to the kind donation by RS Electronics a few months ago specifically for running workshops with children. I purchased 10 SD cards and added the latest version of Raspbian to them all. I borrowed 10 HDMI to DVI cables and a few headphone splitters from my school. Romford library has an IT suite with DVI monitors and they managed to get enough usb keyboards and mice, as well as some headphones together for the session.
Activity
Running a workshop in my mind is different to teaching a lesson. I believe that workshop sessions should really be student led. After all they really want to get hands on and have some fun. I also insist that attendees set up their Pis themselves. This enables them to discover how easy it is to do, and you can have discussions about inputs, outputs and talk about the Pi as a computer. All the young people I have ever done this with have always enjoyed this responsibility, whether inside the classroom or during a workshop. Once set up you can discuss the difference between command line interface and the GUI.
There are a number of activities that you can run workshops on:
Once setup I ran a sonic pi session. One of the great things about a sonic pi session is that it practically teaches itself to any age range or ability user. I showed them how to play a single note, a chord, how to add delays, how to iterate, before they went and discovered it for themselves. They spend an awful lot of time creating their music all by themselves. This allows you time to wander around and then give help to those who are stuck, or more challenges to those who are a little older or more experienced with code. I had two 15 year old lads in my session who had written some Python before. I was able to quickly demonstrate some sonic pi data structures or other different snippets of syntax to help them improve their code.
Could be some good ideas for workshops in here *shameless plug*:
Feedback
In all honesty I was not sure during the session if the children were enjoying themselves. Only at the end of the two hour session did I find out that it was a success, when many of the children came to ask me if I'd do another session. I tried to find out what they would like to do and minecraft pi and scratch seemed to be popular themes. The library manager and other colleagues were keen to have me sign up to run another workshop. The feedback from parents must have also been very good.
Finally
When I decide to do these types of workshops, I have no idea really what it will be like, other than that young people will do some coding. Each session is different, but one thing remains the same, everyone enjoys it and takes something away from the experience. If you want to run a workshop I say DO IT! You will not regret it. It's rewarding and fun.
This year I've not only been speaking at events, attending meetings on the new curriculum, working with the Raspberry Pi Foundation to create a scheme of work, creating videos for @GeekGurlDiaries, helping to run CAS #include, and my doing my day job - teaching, I've also written a book!
Adventures In Raspberry Pi is a tech book designed for teenagers new to Raspberry Pi, Linux, programming and electronics. It is a full colour guide to get youngsters started in a creative and fun way.
That was the idea anyway! I felt that may of the books and tutorials available for the Pi assumed some prior knowledge, and were hindering getting young people started or keeping them enthused. I hoped that my book would go back to basics and point young people and novices in the right direction.
It is due for release on 22nd November 2013, just in time for Christmas! You can get a copy from amazon both in the UK and US.
Adventures include:
Getting set up and started with hardware & software
It's very exciting to be able to say that 'Sonic-Pi' is now available to download, as is the scheme of work that uses the software created by Dr Sam Aaron at Cambridge University that teaches the concepts of computer science using music. As a text based computer programming exercise, sonic pi meets many the of the points on the new computing programme of study, and is a lot of fun.
Since January I have been working hard to try and bring computing via Raspberry Pis into my secondary school specifically for key stage 3 students. I chose Raspberry Pi to do this for a number of reasons:
Using Pis would bypass any issues with the school network and workstation configurations that would hinder computer program development.
Using a different device would broaden students understanding of what a computer is (hardware) and what you can do to it.
We would only require a class set of Pis and could use many SD cards for each group.
I was very fortunate to meet Alex Bradbury (@asbradbury) at PyConUK in September and he put me in touch with the foundation to develop a scheme of work for KS3 using Raspberry Pis. The focus of which was to teach programming concepts through using the Pi as a synthesizer. Sam Aaron (@samaaron) programs music and fully understands the power of creativity in getting concepts across to children. He developed the Sonic Pi (@sonic_pi) a way to program the Raspberry Pi to make very cool electronic music. Together we spent December, January and February testing our theories, teaching ideas, and Sam's software on two classes of Year 8 students of different abilities.
Sonic Pi in action
Before I was able to do this I have had to overcome a number of issues with getting the equipment necessary. Simply buying a number of Raspberry Pis, say 30 for one each in a class or 15 for one between two (the option I decided upon) is not enough. There are the hidden costs:
Monitors and Adapters
Firstly, all of our classroom monitors are VGA. This is true of many schools across the country. A large proportion of our school computers are also RM Ones so the monitor is part of the unit and not separate. I did not see buying at least 15 HDMI monitors being feasible.
Many suggested using HDMI to VGA adapters. There are known issues with using cheap HDMI to VGA adapters that can blow the diodes on the Pi. Some people have had success with adapters, but on the whole it is a bit of an unknown. There is a recommended adapter from Farnell but as you can see, it costs almost as much as a pi, which when you times by 30 that you may need for one or two classroom sets becomes a huge cost.
As part of our KS5 BTEC course, we instruct students how to build their own computers, and luckily there were approximately 8 DVI monitors that I could use. I decided to make a plee to the Raspberry Pi community via twitter and the forums for any old DVI monitor they may be throwing out. Someone in Essex responded and I managed to end up with 12 DVI monitors. I then sourced 12 HDMI to DVI adapters that we used in class. They always worked and I had no problems with this solution (other than finding monitors)
SD Cards, Images and Backing Up Work
Again, there are some issues with SD cards and Raspberry Pi's not being completely compatible for whatever technical reason leading to corrupting data. Large sets of SD cards can also be expensive. I opted for ScanDisk 4GB SD cards, which Sam would take back to Cambridge at the end of each lesson to develop the software further. His biggest nightmare being that he would have to re-image 15 cards one at a time nearly every week, and after a few months the cards started to drop off till we ended up with 12 working ones.
For me to roll this scheme of work out across a whole year group, with at least two ICT classes taking place at the same time 6x30 SD cards. I'd also need a way to back up students work from the cards. Sam had designed the software so that it would automatically save the students work on worksheets, and I numbered the cards so that I could assign them to pairs of students, but the work students produced is still on those cards, it would be nice if it could have been exported to a text file students could use for assessment on a standard PC, and for the music to be exported as a wav or mp3 to go with it.
Alex Bradbury has solutions for the problem of imaging multiple cards (as can be seen from his Raspberry Jamboree talk) and also the second issue of being able to back up students work via a 'magic usb' memory stick.
Cases
One of the joys of teaching using Raspberry Pis is to see students being fascinated by the naked board itself and discovering what each part is. However it is not feasible to have the Pis in this form when setting up and packing away in a 50 minute lesson. I used the Pimoroni PiBow cases and found them to be very robust, they are also nicely labelled for the students and they can still see the board. The only problem students found was plugging in the power supply as the connector would slip and not plug in nicely.
Of course they do not come cheap, and they have to be assembled. I think by now I can assemble a pibow in my sleep with the number that I have done since the start of this project.
Micro USB Power Supplies, USB Keyboards and Mice
Easy enough to source these cheaply, but they are another expense. Again some of the classroom equipment was quite old, so some peripherals had PS2 connections, and as we were using separate monitors it seemed more appropriate to use separate keyboards and mice.
Earphones and Audio Splitting Cables
As this scheme of work involved music, splitting the audio output for students to work in pairs was another equipment issue. First it was suggested we use little speakers, however the thought of 15 different noises playing out all at once instructed by 13 years olds filled me with a terrible sense of dread. Instead I asked students to bring in their own earphones or headphones. At first this worked fine but by week 4 they started to forget. In future I will buy some cheap sets of earphones. We also procured some audio splitting cables cheaply through ebay.
Network?
My project did not involve plugging the Pis into the network for many reasons. The first being the complexity of the already locked down school network. I am fortunate in that like many of you I work in a school with a fantastic support staff, who work tirelessly keeping out of date equipment up and running for a large number of users. The last thing this team needs is me asking to add a complete unknown to the network. Yes it would have been nice to find a way to perhaps use sounds from the internet, or have students be able to save their work into their Google Apps Drive, but overall it was not necessary. Perhaps something for the future?
Trailing Ethernet cables and locating ports in the classroom could also have been difficult, with wifi solutions for the pi being an added cost, and something else to configure/potentially go wrong?
Classroom Space, Health & Safety
The problem with using completely separate equipment to that already existing in an ICT classroom is of course space. I had tables set up in the center of the class, with two students per table. I had to run extension cables from power sockets (another expense), which then had to be covered for health and safety, which is not ideal. I'd rather use the Monitor, keyboard, mouse, plug sockets, power cables, and network port already existing in a classroom (as long as it is not a classroom filled with RM Ones) Then all that would be needed would be a Raspberry Pi and an SD Card.
Storage
At the start of every lesson, I moved the tables, put extensions cables in and covered them, and then put all the equipment out onto the desks. I did this a few times on my own when I was lucky to have a free period before or a break. Most of the time I had a team of sixth formers who helped. Without their help it would have been a very difficult task. Another reason to try and use equipment already in place. Students at the start of the lesson plugged in all their equipment and 5 minutes before the end of the lesson shut down their pis, unplugged everything and I collected all the parts into separate boxes which I then locked into a cupboard. I'm not sure how well this will work when multiple classes need access to the equipment at the same time. Sixth formers have to do their own work on occasion!
Finally the Raspberry Pi itself
Out of a batch of 15, one did not work straight from the box. I blame Rob Bishop because he gave them to me. Just kidding. The failure rate was obviously very low as I had no problems after that.
Further Funding
I was lucky in that the Raspberry Pi Foundation invested some funding into this project to get it started so that Sam and I could produce a scheme of work that could be used by other teachers across the country for free. But now I want to roll it out across an entire year group I need funding to do so and the piggy bank is bare.
Schools are facing cuts left right and center. We have equipment that is incredibly out of date, and work in buildings that were not designed for 21st century classrooms. I have just applied for a small grant of £500 for which I had to submit quite a long proposal. There is no guarantee I will get this and so will have to wait for next years budget and hope that after paying for the necessary text books for KS4 and 5 that there is some money left over for KS3.
I have an extremely supportive SLT who see the value in which I have tried to do. I've even been visited during this project by a school governor with a maths and computing background who saw the enjoyment the students had programming the Pi. But the truth is there is currently no funding. Something the government should consider when changing the program of study for ICT/Computing!
The Sonic Pi scheme of work is almost ready for teachers to try. Overall it has been a truly valuable experience and students enjoyed and achieved more than I expected them to. Yes deploying raspberry pis into school is somewhat difficult currently and there are issues that need to be addressed. I will still forge ahead with my plans though. If you are interested in my Pi story so far check out my talk at the Raspberry Jamboree:
Raspberry Jams are a gathering of Pi enthusiasts who share ideas on all things Raspberry Pi. The story goes that Alan O'Donohoe had the idea for Raspberry Jams in the bath! This weekend saw the biggest Raspberry Jam in the form of the first ever Raspberry Jamboree in Manchester to celebrate a year since the release of the Raspberry Pi.
For anyone who does not know Alan (and I cant think why you do not! @teknoteacher) I should probably explain that is ultimate ninja skill is in bringing people together. Last year, he very kindly invited me to this gathering that he was planning. I had no idea then just how big it would turn out, or that I'd be speaking at it!
I've come a long way since my first Raspberry Jam in June (which you can read about here) both in my work to get girls into tech and the maker culture surrounding it through my project Geek Gurl Diaries and getting Raspberry Pis into my school to teach programming concepts to KS3 using music. I therefore thought I'd actually having something relevant to say to teachers about Rasp pi and I think the talk went down a storm. Even Steve Furber was at the book of the room listening to me. (This isn't going to be the only name drop in this post!) I hope there may be a video soon that I can post here.
One of the highlights of the weekend for me, was meeting and spending time with people I speak to online about Raspberry Pi projects like Paul Hallett @phalt_ who talked about how you can crowd fund class sets of Pis, @Rob_Bishop, Andrew Robinson (PiFace) and Alex Bradbury @asbradbury who talked about how you can manage class sets of pis especially when it comes to imagining large numbers of SD cards.
I also made new friends in the form of my current favourite author Chris Roffey, who was talking to me for a good 15 minutes before I realised who he was. If you are new to Python I really recommend his Coding Club books.
It was a real pleasure to meet Paul Beech from Pimoroni who design and make the Pibow cases which in school have been really good. The Pis have been really robust in them and the students can still see all the components. They are incredibly easy to label with numbers for a class set too!
My continuing 'will I, won't I meet Maggie Philbin' saga continued too as the lady herself was in the same building as me, but we again failed to meet in person. I did get a nice tweet from her tho.
Many of the talks and discussions on the day did indeed center around education. I particularly enjoyed the panel discussion with Clive Beale (Raspberry Pi) and Christine Swan and I think more discussions like these should be happening at Jams everywhere.
Finally, the most engaging and interesting talk was given by teenage girl called Amy, about her enjoyment of computer science and her Raspberry Pi project based on Conway's Game of Life. She proved the point that girls can be switched on and get excited by computing. It is using an idea that will hook them, and letting their creativity shine by taking the project further.
Me, Amy and Ben Nuttall - Photo taken by Pete Lomas no less!
My advice, if you are a primary teacher worried about the new program of study or a computing teacher, get yourself to a Jam. It is where the magic happens. It is like hanging out with family.
I attended my first Python conference over the weekend of the 29th September. This is primarily a conference for programmers using the programming language Python, but this year the organisers have worked to include the teaching community as programming becomes more and more likely to appear on any plans for a new ICT curriculum in the UK.
I was not sure what to expect over the weekend, and as I took my seat and the mornings introduction began I realised that the geek to teacher ratio was worse than expected. I was constantly asked over the weekend if I thought that teacher groups knew about professional developer communities like the Python community? I guess not.
My first session was an introduction to Python for newbies. This was my first ever programming lesson, and as a teacher I constantly questioned how I would teach this to my students? Would I teach concepts and basic coding steps and then ask students to implement them in made up circumstances or would I flip this model and give students code through a project so they can understand its application before working out what the code is doing to understand how to program. (I'm not sure if I'm closer to a solution to this conundrum.) Python seems extremely easy to learn as a programming language. I come from a more scripting background so it is still difficult for me to completely understand it but I feel empowered to at least have a go. The best part of this session was that the organisers had placed experienced developers around the room to help us students when we got stuck. This was genius. I was lucky enough to have been sat with someone who explained problems to me in such a way that helped me to understand. This triggered an idea - why not ask the coders to produce screencasts, voice threads or videos for simple concept explanations or activities to aid learning. they could be uploaded *somewhere* and we teachers could use them to create lessons.
Later that evening there was a discussion between the chairman of the Python Software Foundation, Van Lindberg, the staff of PyConUK, and for some strange reason I was there too. We discussed the future of Python in education globally. I enjoyed this discussion as I think we are all working towards the same goal. I really think the python community has an opportunity here to have Python as the language taught predominantly in schools in the UK. The raspberry pi is going to make this the number one language and if there is a way to teach something in scratch and then mirror it in python to show kids the advantages and disadvantages of both it will be an even better education tool.
On the second day I worked with Nicholas Tollervey @ntoll to deliver an 'Education Sprint'. After talking with many of the teachers on the first day it became clear that both parties needed to be brought together to tackle the problems faced by educators. The simplest way to do this was to start with statements or questions. We had the following:
What do the developers need to know from the teachers?
What do developers think students should learn?
What do developers think teachers need to know to be able to teach programming?
What ideas for projects that can turned into schemes of work can you think of?
Willing to help teachers?
After giving the attendee's time to write answers for each we started a very interesting discussion on each topic. By the end of the discussion we chose 5 project ideas and split into groups. One teacher per group of developers to guide the discussion to create a scheme of work or series of lessons. I think this was a really great process, I think it showed that both groups could collaborate well to come up with something fantastic, and I personally think that's what education is all about. Good things happen when you bring experts and educators together. All the projects have been put onto GitHub which can be found on Nicholas' blog.
I kept returning to the idea of having an online space where teachers, developers and students could access what they need from each other. I'm not really sure how to describe what I'm envisioning:
As the three target groups want different things it might be an idea to split the site into 3 categories: If you are a teacher click here, if you are a student click here, if you are a python guru genius developer wishing to help the first two groups because you are lovely click here.
Geeks can upload videos/screenshares/audio/voicethreads, or activities, or problems. They could locate schools via a search nearby asking for support, or advertise code dojos.
Teachers can use geek content to create lessons, we can share lesson plans, activities and schemes of work. Or search for geeks in the area willing to help out at different levels (1st, 2nd, 3rd line etc)
Students can find help to questions from geeks, or find other students to help them, find events to attend for them.
It's something I would like to work on, but I think I just have too much going on right now, especially if we are expecting an ofsted inspection at any moment. Perhaps some nice developer will help me out. *hint hint major hint*
At the end of the day I gave a lightening talk about trying to get the Python developer community to get involved by creating content that could be blended or flipped by teachers into lesson plans. It's difficult to get across what you are trying to under a time pressure. I tried to use my example of teaching to explain the need for a Python EDU portal but not sure I really did it very well. (you can judge by watching this video from 1.50.53 onwards) I'm trying to promote a way of doing things in teaching, not myself. The feedback from the community is that they wanted an inclusive community/group/mailing list/forum for teachers and geeks. Github is too geeky for teachers and CAS is too teachery for geeks (not my words).
The beauty of reaching out to this community of programmers is that they work on a open source principle that mirrors my own teaching. The python community listened to what I had to say and in many ways have responded. This has culminated in the creation of a google group called Python EDU for geeks and educators. I hope in some way teachers will see this as an opportunity to do something great. But currently, with this strange education climate this all could be a waste of time :/
P.S. Maybe the site should include a geek to teacher speak and vice versa translator for the lols.