2017 in review

I was going to write a Facebook post or a brief tweet about all of the things I’ve been up to this year, but then I realised that professionally, 2017 has been one of the most exciting and varied years of my life – so much has happened that, looking back, I can’t believe it’s my life. Two years ago I was a respectable, happy primary school teacher and now, in the space of one year, I’ve been to Argentina, Brazil, Texas and Orlando for work as well as NYC for holiday and various parts of the UK and Brussels for an award nomination! What a rollercoaster.

TL;DR : I’ve had an AMAZING year

January

By January, I finally felt settled into my role at pi-top, I’d begun working on some pi-top events for a couple of charities BECSlink and IntoUniversity and having lots of fun with the ever-growing staff. I managed to squeeze in visiting the London Python Dojo at Sohonet where I finally met Drew Buddie IRL and the two of us chatted to all the attendees about the teaching of coding as well as getting a better understanding of how a Python Dojo works.

I attended BETT for the first time as an exhibitor, which was kind of exciting – I got to meet so many people IRL and, because everyone knew where to find me, I probably met more people than I would’ve had I just been visiting the show. I was expecting to be exhausted by the end of the week and, although I was pretty tired by Saturday, I was also still super-excited to see so many lovely people in attendance and I can’t wait for this year. I also attended the BETT awards with pi-top where we won the ‘start-up of the year award’ – I was really pleased with this as I had been involved in writing the application and so it was great fun getting all dressed-up with the company founders and getting up on stage to accept the award. pi-top are shortlisted for another two awards this year so fingers crossed we get to win again!!

ANT_9206.jpg

February

February saw my first Coding Evening of 2017 – we’ve managed to host one per half term since I started running them in 2014 and I’m still having lots of fun and meeting new people each time!

At pi-top, February also saw the first Champions weekend – I got to take most of the lovely people that I’d selected to be pi-topCHAMPIONS to Bletchley Park and the National Museum of Computing for a two-day bonding and training session. Not only did we get great feedback, we also had an amazing time. It proved to be a great weekend all around and I was reminded once again how lucky I am to have so many wonderful people in my life.

On a personal note, February saw me taking up running properly for the first time in my life – I’ve just checked and have managed to clock up just shy of 300km this year which is pretty impressive for someone who has always hated running!

16425775_10158096740215024_2809211062775560534_n

March

March began with the pi-birthday, what a fabulous event that was – from unicorn face paints, to pi-brewed beers, it was great fun. I managed a talk and panel at the event in spite of a nightmare cold and got to meet a host of wonderful people – from the young up and coming coders in the pi-youth community to some wonderful adults organising events and supporting children around the world (I’m looking at you Mr Provenzano). It was also great fun catching up with the Pimoroni pirates and long-time community members like Alex Eames again and we managed to squeeze in a giant meal at a local restaurant after one of the nights.March

March also saw another Coding Evening and I also got to visit one of the schools in the group I used to work for as a teacher to deliver a workshop as part of their STEM day. As part of my work for Crossover Solutions, I visited a school in Amesbury to run a Physical Computing workshop and had lots of fun!

April

I’m really lucky that I know so many wonderful people in the Raspberry Pi community and so I was really pleased to be invited to help out at PiWars 2017 in Cambridge – I was invited to help judge the event and so I headed up for a weekend of fun. I have to admit that PiWars was a HUGE highlight for me in 2017 – I always burble about how great the Raspberry pi community is, but this is the event that really shows this off. Lots of fans coming together to compete, but with no malice or anger, just lots of support and fun. Even the people who did badly left smiling and so I’m really exciting this year to have bullied some of my colleagues at pi-top to help me enter a team! I can’t wait to see how we get along!

April also saw me attending a lovely little event in Malvern called ATI and running pi-top workshops in schools in Eastbourne. Albert Hickey and I also managed to squeeze in a third Wimbledon Raspberry Jam which was a hugely successful event including talks by students, teachers and community members as well as workshops run by young people and involving LOTS of glitter.

I also started some work for Crossover Solutions teaching for half a day every other week in a local school in Wandsworth which has been great for keeping my finger on the pulse of CS teaching!

No surprises that it was another busy month.

May

In May, I built my Pimoroni Mood Lamp and really honed my soldering skills- turns out, I’m quite good at soldering!

May.jpg

I met with Alasdair Davies and Francisco Coutinho Gouveia at London Zoo so we could talk about the amazing coding and conservation activities they’re getting up to on the island of Principe – in the last few weeks, Alasdair has been receiving footage from the turtles that are currently ‘wearing’ Raspberry Pi cameras and it’s hypnotic stuff.

May saw me visit Cornwall again to do some work for the National STEM Centre as a roving Scratch roadshow as well as visiting Bank of America to help them run an amazing pi-top workshop for children of their staff!

June

June was a whirlwind month – I managed to fit in performing in an amateur performance of Blithe Spirit as Edith the maid, a Coding Evening at the Library Pot in Richmond AND a trip to San Antonio, Texas for ISTE (the US equivalent of BETT).

July

I’m still not sure how I survived July – I was meant to be going to Brazil for two weeks to run some coding workshops for teachers, but somehow, before I knew it, I was booked to spend the week before in Argentina for pi-top!! I got to attend the first Code Club festival in Horsham but had to leave at lunch time so I could head back to Heathrow for my flights to Buenos Aires.

July

I can’t get over how much of an amazing three weeks I had in South America and I’m very excited about heading back to São Paulo in two weeks for some more training with Maple Bear!

IMG_2067

I spent my birthday in Brazil so it was a great relief to finally come home and relax a bit in August.

August

On the first of August, pi-top moved offices from a very ‘start-up’ office in Bethnal Green, to a much more professional looking office in Old Street – it was a very exciting move for all of us and has been great fun! The only problem with the new office is that it’s much too close to too many lovely eating places!

At the beginning of August, Stuart, Kirk and I managed to build my Google AIY (or ‘Boxy’ as Kirk renamed it), which was great fun!

IMG_2129

On a personal note, in August, we managed to sneak away for a few days with my nieces (aged 7 and 4 at the time) and had a little escape to the country visiting both Longleat and Stourhead House and I directed a rehearsed reading of a play, which I’m now going to be directing in April in Kew!

At the end of August, I decided to see if any of my pi-top colleagues fancied playing a few board games after work and thus ‘board games nights’ were launched at pi-top with a games night occurring every couple of weeks (and occasionally twice in one week). I have to admit to being really pleased with how this has worked out as there seems to be at least 6 people each time and occasionally as many as 12 and, while there are a few ‘core’ gamers, the attendance has been quite varied, allowing a greater variety of people to hang out and spend time together – great team building!

September

Having missed the first pi-top social in July as I was in Brazil, I was pretty excited to organise a second one – karaoke night in the local pub… unfortunately, I’m not sure my colleagues would appreciate me sharing details of the event on social media, but let’s just say that it was a FABULOUS night and I hadn’t realised that I worked with such an amazingly ‘talented’ bunch of people 🙂

I’d love to pretend that September was a peaceful month, but with everything building up for October, there was nothing quiet about it – between a Code Club event at Monzo, beginning our PiWars project, organising a Coding Evening and attending the ArtsRichmond Swan Awards for drama and musicals, it was another crazy, but exciting month.

Also in September, I had an article published in issue three of Hello World magazine – thanks to my earlier meeting with Francisco, I had developed an interest in teaching coding to pupils who don’t speak English as their first language so, while I was in Brazil, I wrote a piece for the magazine and was really excited to see it published.

I finally put all of my running practice to the test in September by running my first 10km in Kew Gardens, finishing in just over one hour and 8 minutes.

October

At the beginning of October, I finally took a real holiday and Stuart and I headed off to NYC for a week – we got back just in time for pi-top to launch the new pi-top with Inventor’s Kit, which had kept me busy for most of September. It was an amazing achievement to have been involved in such a great product and I really feel proud to have been part of the team.

This month also saw me being featured in the MagPi magazine on their community profile – thank you for writing lovely things about me Alex, it was a real honour.

October also saw me ‘popping’ over to Orlando for a few days to attend an event called Project Lead the Way, but, more importantly, to spend some time with John Sperry, my US counterpart along with pi-top‘s new education guru, Graham Brown-Martin.

When I landed back in the UK, I had to immediately jump in my car and drive to Cardiff as I’d been invited by the RPF to help out at Picademy as part of PyconUK. PyconUK was a really wonderful event this year and I’d like to thank everyone who was so supportive of my talk about mental health – this was a bold new step for me and I really hope I get the opportunity to talk more about it in 2018.

Also at Pycon, I was presented with a John Pinner award for service to the Python community which was overwhelming and amazing and I was so honoured to be one of the first recipients (along with quite a few familiar faces including both Tim Golden and Josh Lowe!)

I got to catch up with some many amazing people at Pycon – you read my write up here.

November

I thought that November had brought an end to my travels, so it was surprising to learn that I’d been shortlisted for an Ada Award for European Digital Woman of the year, meaning I had to go to Brussels for an overnight stay. Although I didn’t win, it was an incredible honour to be shortlisted and to spend some time with some wonderful people, especially Danny and Helena, as well as one of my favourites, Iseult and her wonderful daughter Aoibheann – what a fab couple of days!

November saw another Coding Evening and a trip to the V3 Tech Awards, which pi-top were shortlisted for as well as a visit to Merton Council to talk about ways to support the local community and youth clubs with pi-top.

December

December has been a wonderful month with Christmas parties, event planning and meetings about some exciting stuff next year. Thankfully there were no trips abroad, just to visit family in Cornwall and Lincoln and I’ve finally been able to relax a little bit.

Next year is already looking exciting with trips to Brazil, Dubai and Chicago already in the diary – I’m directing a play with auditions in 10 days and a house-move may even be on the cards later in the year (fingers crossed – five years in a one bedroom flat is my limit when the pair of us have so much stuff).

I’m really looking forward to attending BETT with pi-top as we have some great things planned and I’m confident that 2018 is going to be another amazing year. I still can’t get over how much my life has changed in the last 18 months.

 

Advertisements

Computational Thinking in Brazil

I’ve been fairly quiet recently, but at least I have a decent excuse.

Way back in November, I was asked to help write a computational thinking scheme of work for some Canadian schools called Maple Bear – confusingly, I was told that the scheme would be deployed in Brazil, but I had great fun working with David Wall on 16 simple activities to promote computational thinking and computer science. David had seen me on Twitter and wanted to work with me and I really enjoyed writing the lesson plans with him.

Fast forward to May this year and David sent me another email to see if I’d be able to travel to Brazil for two weeks of training with Maple Bear. Every year the Brazilian teachers are invited to Central training in July and January (winter and summer break) to learn pedagogical skills for maths, English and science as well as school leadership training and they’d decided that this year they wanted to include computational thinking as one of their core training sessions. David had done a two-day session in the summer (January) with some specially selected participants, but they wanted to open it up to the rest of the teachers for their winter training which meant that I was invited to São Paulo to help out.

logo-mb.jpg

Maple Bear is a really interesting school group – they follow the Canadian curriculum, but don’t have any schools in Canada. From what I could see, they pride themselves on having some of the best and most well-trained staff that they can and the teachers’ passion for their students came across clearly in my sessions. I think that the schools operate as a franchise around the world, but with the majority of them being in Brazil, where they have a reputation for being some of the best schools in the country. To us Brits, it may seem peculiar, but the Portuguese speaking pupils are taught exclusively in English until they reach the age of 7 when some of the teachers deliver their lessons in English, while others deliver in Portuguese. I have to admit to being really impressed with their commitment to delivering top-quality education.

Anyway, my training was planned to be two, two-day sessions in week one at the central training in São Paulo and then two, two-day sessions in individual Maple Bear schools, one in the city of Belo Horizonte, just north of Rio and one way-up in the north-west of Brazil in João Pessoa, a tropical beach-town where winter is characterised by hot weather and torrential rain.

Needless to say, heading out to teach these teachers about Computational Thinking really got me thinking about what we mean by it. I thought about those four key-words that just trip of any CS teachers tongue – Decomposition, Abstraction, Pattern Recognition, Algorithm.

medium.png
Image credit: BBC Bitesize

We call these the cornerstones of computational thinking, but how do we put into words what they actually mean? It’s actually quite difficult to get your head around how to explain abstraction, even when you know what it means, so introducing it to people that are completely unfamiliar with the terms can be quite difficult. For me, I learn best by example and so I immediately thought of activities and examples that would describe these skills, for example, tidying your room is an overwhelming task, but folding your clothes is much less intimidating, or planning to revise for examples over the summer can see terrifying until you break it down into a revision timetable and plan carefully what topic to revise and when.

One of my favourite activities during the training was one I found on code.org – ask the group to add up the numbers 1 to 200 in their heads as quickly as possible, put pressure on them and make them feel stressed. Obviously no one is going to do it, especially if you only give them a few seconds to think about it. Now ask the attendees/students whether anyone actually tried it or whether people gave up – make it clear that it’s ok to have given up.

Now, explain that we are going to decompose the problem by breaking it down a bit. You need to write on the board:

1 + 2 + 3 + .... + 198 + 199 + 200

The next thing we want our users to do is to recognise any patterns in the sum we’ve written up – someone will eventually point out that either you can add 200 + 1 to make 201 repeatedly, or you can add 199 + 1 to make 200 repeatedly.

Now we use abstraction to calculate how many times we’ll need to repeat the sum – depending on whether you’re using 200 or 201, you either need to repeat it 100 times or repeat it 100 times and add 100 one at the end – either way you get 20100 and you’re able to write an algorithm for your sum.

20046576_10158967673480024_1061293103771818250_n

What you’ve done is apply computational thinking to a fairly complex sum in order to calculate it quickly and understand that actually, adding all of the numbers up to 200 is pretty easy.

In fact, on the final set of training in João Pessoa, I started thinking about how you could make the problem more complex and it occurred to me that you could apply the exact same method to adding all of the numbers up to 400, which would then give you the sum 401 x 200, or all of the numbers up to 600 (601 x 300). As you can see, my maths brain got really excited by the application of this puzzle.

For the first day of the training, I wanted to separate the ideas of computer science from computational thinking and so we focused on unplugged computing; I spent weeks searching through the excellent resources on CS Unplugged and Barefoot Computing as well as using the ideas we’d written into our scheme of work. I wanted to focus the training on the teachers having fun as I know that from my experience of Picademy, I was much more enthusiastic about applying what I’d learnt because I’d had time to try it out and play with it myself.

In the second half of the first day, I had planned on demonstrating how you can apply computational thinking to a music lesson by asking students to compose a piece of music and then write a pictorial algorithm for playing it back. As it happened, I’d seen some street performers in São Paulo that really impressed me by playing incredible sounds just using every day objects like bottles and pipes so and so I used this as inspiration for the teachers on the course and asked them to use items in the classroom to create pieces of music.

At each of the four sessions, I was continuously amazed with the musical talent of the teachers, but what I liked even more was how much fun they were clearly all having. It felt like a mask dropping down as the teachers realised that it was ok to relax and enjoy the activity.

At the end of the first day, I was really pleased to be able to talk about some of the people who inspire me and I ended up with three whole pages full of inspiring people from Carrie Anne Philbin to Cerys Lock! I also talked about great software and hardware like Code Club and Raspberry Pi. Check out my slides from the session here.

On the second day of training, the focus was more on software, I spent the morning introducing the teachers to Scratch and the afternoon looking at Active Lit and the amazing Sonic Pi – once again, I focused on keeping the training as fun and as interactive as possible and I love the fact that every single time I introduced Scratch, it was hard work trying to convince the teachers to go on their coffee break because they were having too much fun!! Interestingly, in all four of my sessions, only around 5 teachers in total had ever used Scratch so for most attendees, it was completely new.

I had such an amazing time meeting a diverse range of people in Brazil and I’m grateful to Maple Bear for inviting me over – I hope I get to go back as I was so impressed with how well all of the people on the training absorbed information and demonstrated eagerness to use what they learnt in their schools. I’d be really keen to hear about what lessons they have taught using unplugged suggestions or else introducing Scratch, Sonic Pi or Active Lit. I loved that each teacher seemed to take something different away with them, with some immediately planning unplugged activities, while others were thinking carefully about how to integrate Scratch into their lessons.

IMG_2067.JPG

One of the things that really stood out for me whilst doing this training is that most teachers naturally understand computational thinking, in fact, when you think about the day to day life of a teacher, we are using CT skills on a daily basis without even recognising it. This can be a bit of a trap because we may find ourselves thinkings “oh but I do that already” because the point is that we’re all good teachers because we use computational thinking without thinking. It is a skill that we have developed to become successful, but that doesn’t mean that our students know how to use it; it’s time that we made those implicit skills that make us good teachers explicit for our students’ benefit. We need to make it clear how to use decomposition to make a problem easier to solve or pattern recognition in order to spot how to predict outcomes. We need to make sure that children aren’t growing up with the resilience and toolkit needed to solve the most basic problems.

Our students are not mindless machines, they need to be guided and shown how to help themselves – we can no longer just learn by rote because, as we often quote (or misquote) Richard Riley, the former US director of Education “Education should prepare young people for jobs that do not yet exist, using technology that has not yet been invented, to solve problems of which we are not yet aware”.  How can we confidently prepare our learners for both jobs and technology that does not exist – it’s simple, we can’t, but what we can do is prepare them to be able to cope and to develop the critical thinking skills to manage when a situation is new or unfamiliar. As teachers, we must understand that we are no longer omnipotent and all knowing, there will be pupils, even in the primary school classroom, who know more than we do and that’s ok, because what we do know is how to guide and nurture those students to achieve and become the best that they can… and who knows, maybe one of those pupils will be the one who discovers a cure for cancer, or invents a flying car. Isn’t it nice to know that we were part of that journey?

Travelling to Brazil was an amazing experience and, as a country without any computer science curriculum, I felt honoured to be able to introduce a vision of computer science and computational thinking to around 75 teachers over the course of two weeks; I hope I get to back. Talking to all of the teachers that I met in Brazil really reminded me of why I’m doing all of this and why I love computer science as much as I do. I feel clearer in my own mind about what this journey means to me and what an impact we can make on teachers and students by simply talking about computer science and computational thinking. Thank you Maple Bear for giving me such a wonderful opportunity.

A busy few months

I know you guys love hearing about what I’m up to so here are a few fantastic events that I’ll be appearing it either running workshops or giving talks – it’d be great if you could come along and join in the fun!

Firstly, this weekend I’m taking the pi-top Champions to The National Museum of Computing and Bletchley Park museum for a weekend of training and fun – the most exciting thing about it is that on Sunday 19th the Champions will be running workshops in the National Museum of Computing, showing off exactly why we chose them – I’m so excited about this weekend and hope some of you can join and bring your kids along to what will be an incredible day of opportunities. Let us know you’re coming by signing up here!

tnmoc-logo_3

I’m really excited about the Champions day as I feel like we’re bringing together some of the best of the best when it comes to running workshops, training and all things Raspberry Pi – we’ve picked an amazing team of people for our Champions and I can’t wait to share further details with you all!

I’m looking forward to joining Nic Hughes at the London CAS conference on Saturday 25th February. Nic and I are working together with him leading a Crumble workshop and me leading a Physical Computing Raspberry Pi workshop. It’s always good fun working with Nic and we’re looking forward to inspiring some teachers to innovate their computer science classrooms.

Raspberry Pi is celebrating it’s 5th year at the Junction in Cambridge on 4th and 5th of March and I’ll be there both days and doing a talk on the importance of teaching children to code on Saturday 4th at 1.30. The birthday party is always a great fun community event and tickets can be bought here.

Throughout March and April, I’m running workshops through pi-top for a number of great charitable groups such as STEMSussex, BECSLink and London CLC which will be great fun and I’m hoping to be able to do something for International Women’s Day on 8th March.

</edit> I forgot to mention my own event – Coding Evening for Teachers, in Twickenham on Friday 24th March – tickets are here.</edit>

At the end of March, I’m VERY excited to be attending three incredible events – first up, the NAACE conference in Leicester (28th-29th March), where I’m running not one, but TWO break out sessions – one for pi-top and one talking about the amazing Active Lit as a tool for writing text adventures. Looking at the speaker list, I have a feeling this is going to be a very exciting event and it seems that the people at NAACE are really determined to make it a very successful couple of days.

Next up is PiWars in Cambridge – I’ve always been a big fan of Mike Horne and Tim Richardson, especially their really helpful CamJam EduKits for teaching physical computing with Raspberry Pi so I was incredibly honoured to be asked by them to be a judge at PiWars, an event so popular it’s had to extend to cover two days instead of just one! The blurb for the event describes it as:

logo-v2-rgb-sm

Pi Wars is a challenge-based robotics competition in which Raspberry Pi-controlled robots are created by teams and then compete in various non-destructive challenges to earn points. There are prizes awarded at the end of the day. Last year, we had teams from schools, families and groups of hobbyists and 30 of these teams competed for a full day of robot fun and games! Pi Wars takes place in Cambridge, UK and is open to anyone from around the world. It is run by the same team that organises the Cambridge Raspberry Jam.

How much fun does that sound? There are still spectator tickets available if you want to bring your children or even your class up to inspire them to create their own robots and one of the two days is dedicated entirely to schools and youth groups!

Following on the heels of PiWars is ATI 2017 in Malvern. Primarily an Apple event, this year ATI has extended to include some more general computer science skills, particularly Raspberry Pi and the lovely Joe Moretti asked me to suggest some workshops. I feel like a bit of an interloper seeing my name surrounded by some of the big names in Apple Education, but I’m really excited about offering some Physical computing and Minecraft hacking information for some teachers, most of whom will be completely new to Raspberry Pi and then entire Pi ecosystem. ATI looks like n exciting event and I know that the other presenters are all incredibly inspiring so I’m really glad to be part of the team – there are still tickets available and it’s worth going along just to meet people like Joe, Mark Anderson, Catherine Jessey and Jon Neale, all of whom I’ve seen present before and know are incredibly inspiring!

c4n_svmwaaa5kgf-jpg_large
Photo credit – Mark Anderson @ICTEvangelist/ATI event page

You’d think that’d be enough events, but no… in May, I’ve been invited by the STEM Centre in York to run a ‘Scratch Roadshow‘ taking sessions to Truro, Bristol, Swindon and Reading. This will be an intro to Scratch for primary school teachers who want to build their confidence a little – the best thing about it is that there is a bursary which makes the training completely free so it’s well worth letting your local primary school know if you think they could do with a boost!

Anyway, there are more events later in the year, but that will do for now! I hope you can come along to some of these events and please do come over and say hi – I love meeting you all ‘IRL’. And remember – if you can’t come to any of these events but are still interested in the type of training I can do, please drop me an email cat@crossover.solutions – I offer workshops and CPD training bespoke to your school or group’s needs!

 

Shakey Sense Hat Cat

[edit] As of June 2017, there is a version of Scratch 2.0 on Raspbian which makes this worksheet obsolete [/edit]

After Sunday’s coding session, I set the boys the task of making our Scratch Sense Hat Cat Shake, just like Carrie Anne’s Interactive Pixel Pet.

The first thing the boys did was to figure out how to use some of the sensors on the SenseHat – remember how in my other post, I said it was good practice to run the basic broadcast command before you do anything.

screen-shot-2017-02-12-at-19-33-46

We had found some code from Albert’s GitHub page, however, when we tried to select the sensor value for accelerometer, we only had a few choices as shown below.

screen-shot-2017-02-14-at-12-40-30

screen-shot-2017-02-14-at-12-35-53

Luckily, after trying a few things, I suggested that we hit the green flag to check that the GPIO pins were on and that Scratch knew we had a SenseHat attached. When we next checked the sensing options a while heap of new options appeared, including the accelerometer (sorry, I forgot to screenshot it).

The boys had great fun playing with the sensors, but couldn’t quite figure out how to get the ‘shake’ function working so they went back to the original code for Interactive Pixel Pet.

x, y, z = sense.get_accelerometer_raw().values()

while x<2 and y<2 and z<2:      
    x, y, z = sense.get_accelerometer_raw().values()

This is what they come up with:

screen-shot-2017-02-14-at-12-49-01

A job well done, if I do say so!

Now, I’m sure some of you have spotted that I could neaten up my code by removing the ‘ledbackground’ line and that ‘clearleds’ would be better suited to the end of the repeat loop as that would leave me with a completely blank neopixel array at the end of the animation sequence, but otherwise I’m pleased with our work in recreating the pixel pet for Scratch.

I look forward to trying out some of the other sensors using Scratch in the future!

 

Sense Hat Cat using Scratch

[edit] As of June 2017, there is a version of Scratch 2.0 on Raspbian which makes this worksheet obsolete [/edit]

So, I absolutely LOVE the Interactive Pixel Pet activity from the Raspberry Pi website, and while I was playing with the Sense Hat the other day, I realised it was possible to imitate it using Scratch. So far I’ve only got it running as an animation, so next step is to get the shake function working as we’ve just figured out how easy it is to use the other sensors on the hat using Scratch.

I had a play and managed to get a very cool dancing cat on my LED matrix – I’m not going to lie, I was super excited and may have run around showing everyone in a slightly excited manner. Fortunately, my colleagues were also excited, although their contributions of dancing ‘poo emojis’ weren’t quite what I had in mind.

screen-shot-2017-02-12-at-19-33-04

Here’s a bit of background on the Sense Hat… for those of you who don’t already know, the Sense Hat was created by the Raspberry Pi Foundation and launched as Astro Pi – a competition to get your pupils’ code into space. It has an 8×8 neopixel array, a mini joystick and a load of amazing sensors like humidity, pressure, gyroscope and accelerometer.

So, the first thing you always need to remember when using Scratch GPIO is that you have to turn on the GPIO server on and, if you’re using a hat, you’ll need to let it know which hat it is by using the command “set AddOn to”.

screen-shot-2017-02-12-at-19-33-46

This is pretty important for anything using the SenseHat and it’s good practice to run it before you go any further in your code as by running it, Scratch will realise you have access to all of the sensors on the hat and allow you to access them through the drop down menu in the blue ‘sensor value’ block.

Firstly you will need to delete the Scratch Cat so that you can draw you own sprite.

screen-shot-2017-02-12-at-19-34-06

In the paint editor, you need to zoom right in as far as you can and select the smallest brush size.

screen-shot-2017-02-12-at-19-34-36

You have four squares in total to draw your image – I’ve shown this here by making the area black (you don’t need to do this, but it can help as ‘black’ represents the neopixel being turned off).

screen-shot-2017-02-12-at-19-35-16

Now you can draw your image – you have exactly 64 pixels to draw with and, as you may have guessed, one pixel on the screen represents one neopixel on the sense hat. By the way, a neopixel is a very bright LED which can be any colour depending on the mix of red green and blue. The lighter your colour, the brighter it will appear on your neopixels so try to avoid dark browns and blues etc.

screen-shot-2017-02-12-at-19-35-42

Next you need to create a second image – you need to use the duplicate command to create a second version of your image.

screen-shot-2017-02-12-at-19-36-05

Then click on the costumes tab to be able to edit it a little bit so that you can make your second sprite slightly different, thus giving the appearance of animation.

screen-shot-2017-02-12-at-20-04-20

Finally, you need some simple Scratch code to get your image moving – I’ve put a couple of broadcast commands in here to clear the SenseHat before you start and to make sure that the background is black (so turned off).

screen-shot-2017-02-12-at-19-36-38

You can experiment if you want by changing the background colour, although this will only make a difference if your sprite is ‘backgroundless’ (but you have to make sure it’s still only 8 pixels/2 squares wide).

screen-shot-2017-02-12-at-20-11-12

I’ve had great fun recreating this project in Scratch and I’ve set Stuart and Kirk on a mission to figure out the ‘shake’ control too so hopefully I can add an update soon.

<edit> Kirk and Stuart have successfully managed to get shake working and are now celebrating with chocolate cake

img_0908

</edit>

Part two of this project can be found here.

All thanks to Albert Hickey for his advice with this project – he is a Scratch and SenseHat guru!!

Watch this space for some more projects using Scratch soon!

A Strange Experience – Being on the Other Side

Since I’ve been working for pi-top, I’ve experienced being on the other side of the EdTech system and it’s certainly been a bit of an eye-opener

I’ve tested various products over the years and found problems and complaints, bugs and surprises, delights and nightmares, but it has been a really interesting experience for me being a producer of content rather than just a consumer.

Firstly, I thought it would be really easy to implement all of the things on my ‘want’ list – it turns out that it’s nowhere near as easy to just ‘add a button that prints out all of the users’ or ‘add a widget that allows the teacher to find out the answer’. All of these things require thought, tweaking of the UI (user interface) and lots of code.

I’ve learnt that things that seem obvious to me are not necessarily useful or even acknowledged by other users.

I’ve learnt that a developer can spend two weeks working overtime to completely overhaul the interface and I’ve not even noticed a difference (sorry).

I’ve discovered that it’s really important to make it clear what the delete button does… and I definitely didn’t accidentally delete a huge chunk of a resource which, thankfully, had been backed up.

I’ve found out that it’s really, really important to get more than one opinion and that relying on mine alone is not enough.

I’ve learnt that developers can’t write resources for beginners even though they really, really mean the best and want to help.

I’ve learnt that even someone like me can make things too difficult for beginners and it’s important to have someone who is truly a novice to try things out.

I’ve found out that sometimes developers just want to sit and watch you use the interface whilst giving them a running commentary so they can figure out what needs to be done next.

I’ve learnt that creating good quality content takes time, creating interfaces takes time and editing information takes time.

I’ve discovered that ‘popping over to ask a quick question’ is akin to tossing an hour’s worth of work into the bin for a developer and it’s better to contact them over Slack.

I’ve found out that developers don’t read emails…

Above all, I’ve learnt that being this side of the interface is HARD WORK and although we sometimes get frustrated with developers bringing out software that doesn’t do exactly what we want it to do, it’s not through lack of trying. It’s pretty important to give developers constructive feedback explaining exactly what doesn’t work as you’d expect and what you’d like it to do instead rather than getting cross and frustrated with it. Communication is vital to ensuring that a product is the best it can be.

Finally, I’ve learnt that pi-topCODER is going to be an incredible resource when we’re done with it and I’m proud to have been part of the team working on it, even if I sometimes feel like I don’t really know anything compared to the people making it!

Swift Playgrounds

It’s about time Apple joined the Coding Revolution – with Raspberry Pi, code.org and Google running projects for years, it was only a matter of time before something was released. And boy is it a good one… with glossy graphics and slick tutorials, Swift Playgrounds has certainly hit the ground running as a way to teach coding concepts to pupils on an iPad. However, it’s not without faults, but then nothing is, so let’s take a look.

A few weeks ago, I visited Apple HQ in London along with a few CAS Master Teachers and various CAS reps and teachers. As it turned out, the majority of attendees were primary school teachers, which brings us to the first flaw in the Swift Playgrounds roll-out. The first thing we were told about it was that it was primarily made for Year 7 pupils and older and this becomes clear when you work through activities as the vocabulary is very dense and would certainly lose many younger pupils. However, the look and feel of the app is very primary-friendly which is why most of the secondary school teachers hadn’t shown an interest, assuming it was ‘not for them’. Indeed, a primary ex-colleague of mine was recently shown Swift Playgrounds and after about ten minutes, decided it would be the perfect way to teach KS2 coding, unaware of its secondary-school target audience. When you spend some time playing through and looking at it, however, you begin to realise that it is indeed best suited to KS3, particularly because of the skills it is highlighting and teaching.

So, you can see very easily just how much effort Apple have put into Swift Playgrounds and how determined they are to make it a useful classroom tool. Not only is there a wealth of content that is easy to download, there are accompanying iBooks full of Keynote presentations, information, progress charts and comparisons to the CSTA standards. Information is made as clear as possible and it is quite fun to play the games. You can explore the current playground challenge by rotating, zooming, changing angle etc. Code is presented in text boxes with lines and phrases of Swift pre-written in them, and it is still drag and drop so that pupils become familiar with the language without having to write it by themselves. This makes coding and debugging easier when they are ready to move on to independent coding. You are also able to select a different character and alter the speed at which your code is run, which adds an element of personalisation.

img_0003   img_0004You can see here the interface for downloading lessons and a selection of the different types of lesson, including one for Hour of Code. There are some interesting resources that are worth exploring as all of them are slick and well made.

 

The first tutorial is called ‘Learn to Code 1’ and it talks you through using the interface from the beginning. img_0005img_0006

At the start of the game, you are limited to a few commands, but as you move through you are offered more commands and, in the second section, you are shown how to create your own commands, or functions.

img_0007

Now, one thing that was picked up on the training that I attended was that the US curriculum for Computer Science places more emphasis on explaining functions than on the word algorithm, which is different to the UK curriculum, where algorithm is considered a core word for coding and function is a later skill to learn. It is worth bearing this in mind as Swift Playground is geared towards the US curriculum. However, this isn’t necessarily a bad thing.

Let’s take a look at the code needed for ‘Four Stash Sweep’, which is approximately halfway through Learn to Code 1, with my solution to the problem included.

My solution is certainly not the most elegant, but it does demonstrate the complexity of some of the easy tasks, I can’t imagine doing this with primary-age pupils without a lot of support – I’ve had to write three functions to make my code more efficient as well as understanding ‘for i in range’ as a loop. Don’t get me wrong, I’m not complaining about the content, but it does make it clear that Apple are right to pitch this as a KS3 resource in spite of it looking like something for the juniors. It is definitely teaching text-based coding concepts, even if you are dragging the blocks of code into place.

A bigger problem lies in its running speed. When I tested it at Apple, it worked really smoothly, everything was simple and easy to use, but of course we were using brand new iPads. In contrast, when I used it at home on an iPad mini 2, it was slow and frustrating at times. The iPad mini 2 is the minimum specification device required to use Swift Playgrounds, along with the iPad Air, meaning that some early-adopting schools are already feeling excluded unless they upgrade their iPads. Perhaps those schools should consider upgrading them, but it is upsetting when there’s no budget to do so.

So, what next?

Apple are marketing Swift Playgrounds as a way to get to grips with Swift, their open-source language which allows users to create apps and content for iOS and macOS. This is very appealing to schools and young people because, let’s face it, who doesn’t want to be the next app-store millionaire. Making learning goal-orientated makes it instantly more fun and so to present to pupils that they could eventually make a real-life app will certainly inspire them to get more interested in learning to code. The fact that when you use Xcode to write Swift, you can use a playground to test your code, is deliberate to draw a link between Swift Playgrounds and the more ‘real’ Xcode environment and is a clever move by Apple, albeit one that confused existing users as to which playground was which. Swift works across multiple systems, including Linux and therefore Raspbian and I look forward to hearing about some Apple/Raspberry Pi crossovers in the future – perhaps we’ll finally see a RPi physical computing project which is controlled from an iPad!

Where does it fit?

My gut instinct is that Swift Playgrounds would be a great tool for a flipped learning environment. Pupils could work through the game in their own time and come to school armed with questions. Teachers could discuss concepts and offer their class challenges based on the skills they’ve practised at home while using the app. I think it is a great tool for KS3 programming and a lovely way to introduce pupils to the world of programming. I would worry about a whole class just sitting and plodding through in the classroom without the teacher bothering to be involved and it would far too tempting to just sit back and let them get on with it which is why I think it would be better suited to independent work outside of the classroom so that the teacher could focus on discussing the skills and developing them in the classroom.

My initial concern that it was a little too restrictive, like Discovery Coding, have been dispelled and I think there is plenty of opportunity for pupils to explore and create once they have learnt the most basic skills. There are some lovely, interesting resources already available (I recommend taking a look at ‘Drawing Sounds’ in the Swift Playgrounds ‘featured’ tab which you can download and play with) and I look forward to exploring and creating my own playgrounds once I’m more confident and perhaps after I’ve worked through all of the ‘Learn to Code’ modules.