Ada Lovelace Day 2019 – a Scottish trip

For Ada Lovelace Day (8th Oct this year) I was invited to talk at Glasgow University, and so I arranged myself a little Scottish tour taking in a visit to an auntie in Dundee, a day in Stirling catching up with Carron and delivering my Ada Lovelace talk there too. It was a busy couple of days, with meetings to discuss the BCSWomen Lovelace Colloquium (in both Stirling and Glasgow), a fascinating seminar on scientific culture from Katerina Pia Günter (Uppsala Uni) in Stirling, and talks from Sharon Moore (IBM/BCSWomen) and Sofiat Olaosebikan (Glasgow) in Glasgow.

My talk

The talk I gave was “Why Ada Was Awesome” which is an Ada Lovelace talk that includes biographical information and also technical details. There’s a biographical sketch that goes something like “her mother forced her to learn mathematics so she wouldn’t succumb to the poetical influences of her dangerous father, and then she wrote the world’s first computer program changing the face of technology as we know it“. This is a bit of an oversimplification – with a few major inaccuracies – and in the talk I try to give a somewhat clearer view of both the biographical details and the technical achievements.

A lot of the insights in the talk come from two books – I’m a computer scientist not a historian so I’m all about the secondary sources (and I can’t read Ada Lovelace’s handwriting, so I’d make a crap historian anyway…). These books are:–The-Making-of-a-Computer-Scientist/21790157 Ada Lovelace – The Making of a Computer Scientist by Hollings, Martin and Rice.
This relatively new biography of Ada Lovelace contains a lot of original source material (including photographs of Ada’s letters and diaries, which are to me largely illegible but nice to see) and loads of quotes. I love reading Ada’s own words – seeing how she actually wrote gives a clearer feel to me for who she actually was. This book is also a lot more technical than many other Ada bios, as it looks at the mathematics and science behind the writing, tracing her mathematical development over time. If you want to get a feel for the kinds of problems that entranced Ada as she was learning (and who doesn’t?), this is the book for you. Lady Byron And Her Daughters by Markus
This biography of Ada’s mum completely overturned all the preconceptions I’d had of her – she wasn’t the fierce dictatorial mother forcing Ada to study mathematics, instead she was a broad minded philanthropist, founder of schools based on cooperative principles, abolitionist and supporter of Ada’s obvious love of mathematics. Byron, the dad, on the other hand, was an utter dick.

If you’re in Aberystwyth over the coming weekend you can see a version of this talk at the Aberystwyth Steampunk Spectacular on Sunday 13th October


Everyone I speak to who has hayfever confirms that 2019 has been a challenging year of sneezing, running eyes, and itchy faces. This means that there’s a lot of pollen about.

In over 10 years of beekeeping, Rog has only once collected enough honey to warrant borrowing the extractor from the beekeepers association. Usually, we get 5 or 6 jars, if we’re lucky. This year, the payoff for my runny nose was a Saturday spent extracting honey. How do you extract honey? Well let me show you.

To begin with you have a bunch of frames. These sit in a super which is a box that just contains honey frames. When the bees look like they’re doing well, a beekeeper will put an empty super on top of the hive and sit back and wait for it to fill up with honey. There’s a little hole in the base which lets bees through but which isn’t quite big enough to let a queen through – this means you can steal the honey and you’ll never accidentally steal the queen. Boxes have 11 frames in. I don’t know why.

A super full of honey

From Rog’s 3 hives we had 3 supers, heavy with honey. Both sides of each frame are covered in hexagonal cells, made of wax, full of honey, and capped off with more wax.

A frame ready to be processed. The wooden baton is so you can rest the frame on it whilst carrying out the next step

Before you can extract any honey, you need to take off the caps of each cell so that the honey can flow freely. The bucket catches all the bits of wax and honey that drip – there’s a lot of waxy honey residue involved in the process, but that’s OK as you can just feed it straight back to the bees afterwards and they’ll recycle.

Taking the caps off the honey cells

Once the frame has been de-capped (on both sides), it goes in the centrifuge. We borrowed the centrifuge from the beekeepers association – this is a large one, which will process 4 frames at a time.

The first frame in the centrifuge

The centrifuge is powered by a crank handle which seems quite quaint.

Turn the handle

Turning the handle on the centrifuge is probably my favourite part of the job.

turn the handle
spin the honey

The honey gets splattered out of the frames and onto the walls of the centrifuge, slowly dripping down to the base (which is on a slope, and conical, so honey doesn’t get stuck). The tap at the base lets the gloop out – at this stage, it’s a mix of honey and wax and little bits of hive.

Letting the gloop out

The gloop goes through two double sieves, which serve to filter out big bits of wax. This part of the process is s l o w and we had to stop, often, to wait for the gloop to drip through to the bucket below as the sieves were backing up. We also had to clear the top sieve of waxy debris pretty frequently.

Filtering the gloop

When the honey in the bucket gets close to the bottom of the sieve, it’s time to empty the bucket out into more traditional honey receptacles, like Patak’s Lime Pickle jars. This is a step with no fancy stages – just a bowl with a pouring lip and a lot of sound effects like “bloody hell this stuff is heavy“.

Jars ready to be labelled

If you’re going to exhibit your honey – for example at a village show or something – you need to ensure there aren’t any bits in it, and there aren’t any bubbles. I think this probably involves more filtering. We’re not that kind of beekeeper though, and don’t mind the occasional bubble or mis-matched jar lid.

Bubbly honey

In the end the process took us about six and a half hours. Apparently nobody has seen a honey year like this one. We didn’t weigh the honey so we’re not sure how much we got, but it was a lot.

Jars of honey.

We ran out of jars, so even have some honey sat waiting in plastic buckets.

Honey bucket

The last task of the day is to have a bit of a tidy up. One side effect of this process is that everything gets covered in a thin film of honey. Or a thick film of honey.

mmmmmmm honey

Robotic egg race

In Aberystwyth Robotics Club we have a series of special events – pumpkin hack in late October, Christmas Card Circuits in December, Beach lab (robots on the prom) in June/July … These are outreach events designed to get people who don’t come to the regular weekly after-school clubs to have a go at building stuff.

Some time back, due to workload and other stuff, I stepped back from the weekly after school club and now I concentrate on running these “specials”. As a new one this year, for Easter, we decided to do something egg-citing and run a robot egg race. This blog post summarises our process for setting this up – from planning through setup to evaluation.

Planning the event and running a pilot

The idea was to use lego robots, string, drainpipes, and pretty much anything else we could lay our hands on, to take an egg around Old College. We’re very lucky to have access to Old College, which has balconies, ramps, stairs, multiple rooms, and all sorts of furniture we’re able to shift around. Back in January we had a planning meeting one Sunday afternoon, and thought about the space then tried to make robots ourselves that could do the right kind of thing. The general idea was to have a series of stages – some easier than others – with each stage starting and finishing on a piece of carpet. When you’re on the carpet you can move the egg from one robot to the next. This meant that the robots had to be able to perform the moving of the egg but not the handing over of the egg (simplifying the task considerably).

The original plan

Thinking about the space we came up with a plan., which was basically a list of different challenges for our robotics teams to solve.

  1. Across a gap between tables
  2. Up a ramp and down some stairs
  3. Up a few stairs and around a corner
  4. Across the flat (with a bit of a slalom)
  5. Up to the balcony
  6. Down the stairs

Our robots – created during the planning session – were able to deal with versions of these challenges. “Up a ramp and down a stair” was I think the most complex robot we built – it had an egg-holder with a winch so when it got to the top of the ramp it could let the egg down gently.

A careful winch-based egg robot

The day before – risk assessment and setup

SO at this stage, we had a plan and a rough idea of how it might work out. Fast forward to Easter and we arrive in the venue the day before to walk the route and to do a risk assessment. It was at this stage that we considered some excellent advice from Amanda Clare and decided that “down the stairs” was probably not a sensible challenge to give groups of kids. The chances of people running to catch dropped eggs was not something we wanted to risk, so we amended that one to “down a drainpipe from a table”. We set up a few more “slalom across the flat” missions as there were quite a few very young kids registered, and we added a “parachute down from the balcony” one at the last minute because who doesn’t like throwing eggs off balconies?

We set up a rough idea of the layout, and made sure we had some safety tape to mark out the areas where we’d be throwing eggs off of balconies and winching things up. At this point, we were ready to go.

On the day

On the day we had about 25 kids and some assorted adults show up. Some of the kids formed natural teams, and others took a bit of persuading to join forces with strangers, but everyone got into a team pretty quickly. We walked the course to start, as a group, and teams chose the challenges they wanted to tackle. There were a few teams where we steered them towards particular problems – a couple of teenage brothers wanted to work together and seemed pretty technically able so we set them the hardest challenge of “up some steps and around a corner”, and we set the two youngest groups on the “slalom across the flat” challenges.

across a gap between some tables involved a cable-car type arrangement with pulleys and a stationary robotic engine

Each team was given a creme egg for testing, and they set about building their contraptions. It’s fascinating to see the different techniques people choose to use; very few of the solutions invented on the day matched those we’d come up with during our pilot session. In particular the “down a couple of stairs” one where our experienced roboteers created as a careful winch-based system, ended up being a robust egg case on a robot which just drove off the edge of the steps and self-destructed. I think the kids version was more fun, if less re-usable.

A very narrow robot for going down a drainpipe

Once everyone had tested their own section of the course thoroughly we had a full circuit with just one creme egg, handing over between robots on carpet squares. One of the great things about the day was the way that all the kids (and parents) were invested in the job of getting the egg around. This meant that even when it wasn’t their robot they were all rooting for the other teams and it was not in any sense a competitive event.

One of the slalom robots

Once we’d been all the way around with a creme egg it was time for the final test. This involved a hard-boiled egg. We did have some non-hard-boiled-eggs too but decided to leave them in the carton – the next picture will probably make it clear why!

We (nearly) got a real egg around unscathed

So how did it go?

This was a very well received workshop. Everyone was invested in getting the egg around the obstacle course, and we managed it, nearly. All of the feedback we had was positive, and we’ve been asked to run the workshop or something similar at a local school. If you have some lego robot kit it’d be a fairly easy event to replicate.

Running it yourself

If you want to try and do this in your area it should be pretty straightforwards to organise. Be sure to have an idea of the ages of kids turning up so you can make easy challenges for younger kids and harder ones for older kids, and be sure to think about possible hazards like falling eggs and running on stairs. Here’s a kit list:

  • Lego Mindstorms Robotic kits, one per team
  • Android tablets (to control the robots)
  • Lots of string
  • Pipecleaners, pompoms, cotton balls – various bits and pieces to enable the construction of egg-friendly carriages
  • Retort stands to attach things to
  • Pulleys
  • Squares of carpet to act as the start and end points of each stage
  • Tape to affix the carpet to the floor
  • Various tables, pipes, traffic cones and other things to use to create an obstacle course
  • Googly eyes because you always need these
Slaloming around some traffic cones

BCSWomen Lovelace Colloquium #12 – Salford

On April 17th, we held the 12th BCSWomen Lovelace Colloquium (The Lovelace) at the University of Salford. Regular readers of this blog will know that this is a conference for women undergraduate and taught MSc students studying computing and related subjects, and that I started the conference in 2008 handing it over to The Awesome Doctor Helen Miles in year 10; now she’s the conference chair and I’m the deputy.

What this means in practice is that Helen and I have a very busy couple of weeks in the run up to the event – students don’t have funds to travel to conferences, generally, and so we raise enough sponsorship (most years) to cover student travel to the event. This means a lot of email gets sent and read. We had 126 poster submissions this year, which needed to be reviewed, and we had 116 confirmed entrants by the day of the event. To get the more far-flung students from their homes to the event we put them up the night before, so this year we booked 104 rooms for the night of the 16th at a Manchester Travelodge.

On the 16th and 17th all these undergraduate women make their way to a university they’ve never been to before in a town many of them have never been to before. Some of them have never checked into a hotel on their own before, or navigated public transport in a new city on their own before.

This is an event I’ve been involved with for 12 years, so my blogs on the day can be found going back in time all the way to #2, in 2009 (I wasn’t blogging in 2008 so there isn’t one about number one, and I was working in France as a postdoc in 2010 so I missed that one).

At the first Lovelace there were about 30 students, and about 20 others (postgrads, helpers, sponsors). This year we had 116 students and about 100 others. We’ve been growing pretty much year-on-year and the scale of the event is now getting to the stage where we’re hitting issues to do with large numbers of people. The core of the day is the same (talks, extended poster session over lunch, more talks, panel session, social) but the details differ and we’re still working out a few things; every year we make some minor improvements, but every year there are some minor hitches too.

When you bring lots young women to a new town the night before a conference, it’s kinda useful to give them something to do on the evening which lets them meet up with other attendees. When we were a small conference I used to post on the attendees Facebook group and just nominate a pub-that-does-food. That approach really doesn’t scale. Two years ago, in Aberystwyth, Scott Logic sponsored a hackathon the night before. Last year, Sheffield Hallam students put on a QR-code based treasure hunt which was great fun. This year we got to within a few weeks of the conference and realised that we’d not organised anything, so put a call out on twitter for suggestions of a room we could book or use. Manchester Digital came good with a meeting room that seated 70 which we could use for free (with tea and coffee thrown in), and Code Computerlove offered to buy us all pizza.

Handily, Amanda Clare and I had run a STEAM-themed pub quiz for International Women’s Day so we were able to re-use that with some minor tweaks. This has 5 rounds, starting like a normal pub quiz (10 questions) and then getting progressively stranger. The Engineering round involves building a model of The Shard from materials provided. And the less said about the Maths round the better.

Build a model of the shard using the materials provided

The day itself was huge fun. Some of this I only know from the feedback forms (I didn’t get to see any of the talks – I rarely do, as there’s quite a lot of behind the scenes organising to be done). We had stands from about 12 employers and sponsors, including Google, Scott Logic, Bloomberg, Amazon, JP Morgan, Collins Aerospace, Northrop Grumman and Whitbread. The Whitbread stand featured a Lovelace Alumna – it’s always great to see some students return year-after-year, and it’s even greater when they choose to persuade their employers to get involved after graduation. The best MSc prize was sponsored by AND Digital who came on board quite late so they didn’t bring a stand, but they did come along and chat to the students and seemed to enjoy themselves.

The Google Stand – a popular destination. Everyone loves Google swag.

Posters were, as ever, fascinating. It’s a real highlight for me to stroll around and read the posters, looking for any themes, and seeing the students engage with helpers, sponsors and each other about aspects of computing that excite them. We allow the students to do a poster on any computing related topic that they like – there’s an assumption the final year students and the MScs will do something on their dissertation or project, but they don’t have to. This means that you find out what topics are hot and what topics are interesting across the whole of UK computing. Each university has their specialism (for example, there’s a lot of natural language work at Sheffield, and it’s always interesting to see the posters from Bath, where there’s an emphasis on formal methods) and sometimes this leads the student choice. In other cases, students have side projects or personal research interests.

You can see all of the abstracts for the posters in the Abstract book. This year, for the first time, we released the abstracts as an e-book rather than a paper book. Whilst it was lovely having a printed abstract book in previous years, which went in the students’ goodie bags, we didn’t have the time or the organisation to print this year. As we’ve grown and the number of abstracts and students has grown, we’ve gone from being able to run off the abstract book on a printer to needing to have it bound professionally, which is a cost in terms of both cash and time. We didn’t have goodie bags, either. Some students missed them, but I think on balance it was a good decision – the employers were able to put their goodies on their stalls which caused more interaction, and we saved 3 hours of bag stuffing on the 16th.

Looking down on some of the poster displays and employer stands

We finished the formal part of the day, as usual, with a panel session and prizegiving. The panel has a group of women with different careers in tech (this year – a professor, a research software engineer in a university, a software engineer at a research centre, a graduate trainee from Whitbread and a senior software engineer from Bloomberg). During the panel students are able to ask any question they like. It’s always one of my favourite parts of the day – there are a few minutes at the start where people aren’t sure what to do or aren’t confident enough to ask out loud, and then the audience relaxes and the questions start flowing.

The prizes:

First year including Foundation year, sponsored by Google

  • First prize: “Challenges Associated with Humanitarian Applications of Neural Machine Translation for Low-Resource Languages” by Kate Bobyn of the University of Sheffield
  • Second prize: “Quantum cryptography: will our data remain secure?” by Molly Ives of the University of Bath

Second year contest (also open to students on their industrial year or on the 3rd year of a 4 year degree), sponsored by Amazon

  • First prize: “What would Avengers be like with Mr Bean as Thor? – How can ‘deepfakes’ disrupt the film industry” by Luou Wen of the University of Nottingham
  • Joint second place were “Source identification of social media images using CNN” by Anastasia Taylor of the University of Buckingham and “High Altitude Computing” by Bridget Meade of the University of Stirling

Final year contest, sponsored by JP Morgan:

  • First place went to “DNA heritage augmented reality visualisation to challenge the concept of race and identity” by Rachele Cavina of Edinburgh Napier University
  • Second place went to “Ada: natural language search to support applicants for the University of Bath” by Emma James of the University of Bath

MSc Prize, sponsored by AND Digital:

  • First place went to “Nature Nurtures, Computing, and electronics, a tool to teach empathy and care for nature.” by Mariam Aomar Perez of Sheffield Hallam University
  • Second place went to  “The dark patterns – how good design can become bad” by Maria Radu of the University of Bath

People’s’ choice prize (voted by attendees) sponsored by STFC

  • First place went to an augmented reality poster called “Blank Is The New Exciting” by Kristen Rebello of Middlesex University London
  • Second place went to “Code as Old as Time” by Hannah Bellamy of Durham University

We finished up with a social in the Students Union bar, which gave everyone a chance to relax and catch up with old friends and new. One of the lovely things about this is that us organisers can sit in the corner, relaxing with a nice beer or a fruity cider, and a series of students roll up to say “Thanks!” as they head off.

Our keynote, Helen Leigh (Helen #3) playing Street Fighter II with one of the students. I’m not sure who won.

Advance HE STEM conference

This week I went to Birmingham for the Advance HE STEM conference. This is a conference for people who teach STEM subjects in the UK, and also for people who are supporters of STEM research and teaching. It’s a two day conference and I think there were probably about 200 people there (although there might have been more). I went to a bunch of talks and workshops over the two days, mostly looking at inclusion. I’ll summarise a few of my favourite workshops in this blog post. If you’re interested I have a PDF which includes more detailed (but more scrappy) notes covering all the talks and workshops I attended.

I went to the conference because I’d had a talk accepted on the Scientists Are Humans project. This is a project that grew out of STEM Gamechangers (previous blog post available on the BCSWomen site). Scientists Are Humans is a website aiming to improve diversity and inclusion through sharing human stories and tips about how to make STEM better. I’m one of the founding members of the team and you can find the slides from my talk about Scientists Are Humans linked here. My conference fees were funded by the Alan Turing Institute (thanks!) which was great as it meant I actually got to go to the conference.

The weather en route was frightful

On the first day I saw quite a lot of talks and a couple of workshops. For me the standout one was:

How peer/friendship groups form, and their effect on attainment” presented by David Smith from Sheffield Hallam

This talk described work which looked at where students sit in lecture theatres, and what that could tell you about the friendship groups and the co-working groups/pairs which emerge. For me this was the stand out best talk of the conference. Looking at where students choose to sit in a lecture theatre and then asking them why has provided some real insights into student behaviour. I thought that those who sit at the front were the ones who were keen but it turns out that there are excellent students sitting all over the place, for all sorts of reasons.

I found this analysis very interesting – I found the subsequent analysis about groupwork even more interesting. They clustered the students and then found they could classify them into what they called “Dolphins” and “Swans”. Dolphins work in a pod and will choose pairs from within this small group; Swans form pairs and don’t work with anyone else. There’s more to it but that’s a quick summary.

You can read a journal article about this work online at FEBS OpenBio.

I stayed with a friend in Coventry as I didn’t have funds to get a hotel – this was actually a bit of a win-win because I’m not drinking at the moment, and conference dinners are rubbish if you’re on the wagon. Also the conference dinner was £50 and I took some friends out for a nice Palestinian meal at Habibi in Coventry for £45 (set meal for three). I don’t know what the conference meal was but I bet it didn’t feature great humous and superb spicy potatoes.

We had a lot of tea with our meal

On day two, the talk which I found most illuminating came from Anne Nortcliffe & Roz Barley of Canterbury Christ Church University, and Jacqueline Stallard of Sheffeld Hallam University. The talk was entitled “How accessible is the STEM post-16 education provision in the UK, and what are the implications for the HE Computing and Engineering programmes’ pipeline?“. Which is a bit of a mouthful. This looked at the pipeline into STEM courses particularly concentrating on the local areas feeding into Sheffield Hallam (South Yorkshire) and Canterbury Christ Church (Kent). Both Hallam and Canterbury Christ Church are local universities who pull from their immediate environs (“Local universities for local people“).

We hear a lot about STEM A-levels and the low numbers of students doing them, what we hear less about is the spatial distribution of these qualifications. The slide I photographed and include below was a real shock to me; I hadn’t thought about the problems of growing up in an area where certain A-levels were simply not offered; I knew that computing didn’t have particularly good penetration but I hadn’t realised that e.g physics was similarly sparse.

Geographical access to STEM A-levels in Kent

My talk was the last talk before the closing plenary on the last day, and I had to dash at the end of it (trains to Wales were about to be stopped due to weather stuff). I think it went well, and there were a few comments and questions which showed that most people managed to stay awake. You can see the slides here:

My opening slide

Suffrage Science – decoding the brooch

A week ago I went to London to borrow a piece of scientific jewelery for a couple of years. It’s a delightful, rather bonkers scheme by the MRC called Suffrage Science, whereby they chose 6 women computer scientists to receive a brooch 2 years ago, and last week they handed the brooch onto the next woman. In just under two years time I get to hand it on to the next person, and that way it passes from scientist to scientist. I was given the brooch by the excellent Professor Carron Shankland from the University of Stirling.

The event was good fun – here’s me having received the award, and having had some nice free wine…

and here’s the group picture of all the donators and the recipients – they did Mathematics and Computer Science in the same event so there were about 12 of us being passed jewelery by another 12. Carron’s the one hiding in the back with the yellow top.

Enough about the socialising though. What about the brooch?

It was designed by Veronika Fabian who was at the time a student at Central St Martin’s – she won a competition with the design. And it’s lovely.

It’s a model of a piece of curled punched tape, with a 5 bit encoding. Each row of holes or spaces (two positions for data, one smaller hole, then three positions of data) encodes a binary pattern, which represents either a letter, a number, or a control sequence. These were used in early telecoms and computing to transfer and store information. Three of the holes contain small jewels in the Suffragette colours – purple for loyalty, white for purity and green for hope. It turns out that if you put a piece of paper behind the holes, you can just about make out the pattern. So I spent a little time this afternoon doing just that.

With the pattern transcribed to a piece of paper, I made a guess at the character encoding (I went for ITA2 as it seems the most common and was in widespread use in early computing). ITA2 uses short codes to represent common letters and the more complex four dot codes to represent rarer letters. I started by filling in all the E characters (dot in position 1, all others empty, so 10000) and spaces (dot in position 3 – 00100). I thought this looked a bit odd as there weren’t many Es in the message, but it turns out it was right. When I filled in more letters it became clear that certain suffragette statements started emerging. The complete message is “DEEDS NOT WORDS COURAGE CONSTANCY SUCCESS THROUGH THICK : THIN WE N’ER GIVE IN SUFFRAGE SCIENCE AWARD 2016 DEEDS NOT WORDS COURAGE CONSTANCY S”. To get numbers and punctuation, there’s a shift signal – 11011 and there’s a shift signal 11111 to go back from numbers to letters.

A picture of my decoding is below – click for a larger version. There’s one character missing and it’s in a tricky part of the brooch to see, so I think the error is probably mine not the designer’s. The missing character should be 11111 after 2016 to go back to letters for the final “DEEDS NOT WORDS”.

The image below shows the relationship of the words to the brooch. When you’re wearing it the things that can be seen are “DEEDS NOT WORDS” on the upper, small loop, and across the back of the brooch in the uncurled part you can see most of “THROUGH THICK AND THIN WE N’ER GIVE IN”. On the outside of the lower, larger loop there’s “SUFFRAGE SCIENCE AWARD”.

Null sector installation – EMF2018

For EMF2018 (my general blog post about the festival can be found here) Charles Yarnold and my old friend Ben Blundell built a cyberpunk zone, called Null Sector, with installations and all sorts of cool stuff.

I made a tiny part of this, in the form of a surveillance themed installation which sat behind the cyberpunk-style grill in the bar area.

The aim of the installation was to provide a slightly disconcerting surveillance-style view of the people in the bar, matching the general branding of Null Sector, so it seemed as if the company running Null Sector (Polybius Biotech) were carrying out videosurveillance of attendees. There was no real videosurveillance involved, just a bit of raspberry pi/OpenCV smoke and mirrors.

Polybius biotech logo by Ben, who has real talent at this graphic design stuff

The Polybius Biotech brand has quite clear graphic style and a defined palette of colours – orange, magenta, blue and black (mostly). So my aim was to do a bit of face detection and a bit of live video enhancement, cast to this colour scheme, and display a constantly updating video feed.

The way I did this was to have a handful of different background styles (solid black, edge enhanced, edges only, greyscale image, sepia image, colour flipped image, colour image) and for each frame grabbed by the camera, the system did some face detection, and applied one of the background styles to the main image and one to the face regions. The system then drew boxes around the faces in Polybius Orange or Polybius Blue.

Which colour schemes it used was a random choice and stuck for a random number of frames. There were 14 different foreground & face combinations, and each one would be kept for a random number of frames between 1 and 100 – this made watching the screens more interesting as you could never know how long a particular view would go on for, and the views looked pretty different.

It went quite well but was not without hiccups. There were two things I could have done to make it better:

  • Test the system in lower light conditions – when it got crowded in the shipping container, the light getting to the cameras wasn’t that great and so sometimes it just didn’t find many faces
  • Optimise the code. I was running the system as fast as it would go, which gave about 3 frames per second. Raspberry Pis are great fun but not massively fast when it comes to live video manipulation. This was fine as that gave it a cool kinda laggy effect. But the unintended consequence of running the Pis as fast as I could was that they overheated pretty quickly. I think I could have gotten around this with a bit more forethought and a bit more thought about the code

At this point in a blog post I normally say “And here’s the code!”, but to be honest I’m a bit embarrassed about the code quality here – it’s 600 lines of unoptimised c++ all in one file and full of stupid errors. I’ll tidy it up, maybe, and use it for something else. However I will give a bit of a deep dive into a few of the gory technical details.


  1. The face detector was a bog-standard Viola-Jones style cascade classifier, from OpenCV’s standard libraries
  2. The edge detector was even more old fashioned, as it used Canny which was published in 1986. Works though.
  3. The input came from a Raspberry Pi camera module, which is a cheap way to get pictures into a Pi, and it has a very small form factor (if you look at the image 2 pictures up you can see it – it’s a little green square on the bottom left of the monitor).
  4. My monitors were borrowed from Aberystwyth Computer Science and came from a decommissioned computer lab – they were old Sun Microsystems flat screen jobs. These had DVI & VGA inputs but the Pis only have HDMI outputs, so I had to get some adaptors. Turned out the adaptors I bought from ebay were crap and so I had to find some new cables with a day to go – fortunately, hacker camps are good places to find random cabling.
  5. OpenCV has some graphics output functionality but it’s a bit clunky. As my monitors were all identical I was able to sidestep the OpenCV graphics, and write directly to the framebuffer. (That is: low-level graphics can be hacked about by accessing the bit of memory which corresponds to the monitor, then writing directly to that memory – this is called the framebuffer). There’s a great tutorial about doing this stuff on a Pi at Raspberry Compote, but in short, you need to…
    1. Find out the size of your monitor
    2. Find out whether the monitor is RGBA or BGRA or RGB or BGR
    3. Set up a pointer to the bit of memory which makes up the monitor input
    4. Convert your image to the right format (e.g. RGBA in my case)
    5. Splat the image onto the right bit of memory and Hurrah! The display will change
  6. Finally I set the machines so that they had a fairly cyberpunky desktop background (“The sky above the port was the color of television, tuned to a dead channel”) and to load the video program upon boot. This meant I just had to plug it all together then plug it in and it would all just work.

In all – it was fun, it nearly worked well, people seemed to like it, and I learned a lot about building things for long term installation in a public place. Next time will work better.

Electromagnetic Field 2018

Electromagnetic Field is a massively friendly not-for-profit hacker and maker camp which happens every two years. I went in 2012 and spoke about women in tech, and I went again in 2016 and spoke about doing robotics with kids. This year I’ve been trying to do a bit less work and get a bit less stressed, so I decided not to submit a talk or workshop. Then my mate Ben put out a call for installations for a cyberpunk zone and I ended up pitching an idea for a display to sit behind the bar. This installation took – as you might imagine – longer than anticipated to pull together.

After a late-evening arrival on the Thursday and a night spent in a tent at 7° with a very thin sleeping bag, I was not 100% ready for festival land. Turns out that being sober and cold in a field full of people and ducks makes it hard to get to sleep. My first action (post coffee) on the Friday morning involved asking a friend to pull into Argos on their way in, so I could have a bit more padding and insulation.

On the Friday I spent most of the day putting together my installation in the Null Sector cyberpunk zone, and generally helping out in Null Sector with carrying, lifting and general tidying up. This was a new element of the festival, made up of a bunch of shipping containers with installations, robots, flame throwers and other cyberpunky goodness. This provided a DJ area and an additional bar to the festival, as well as a night market (night one) and an electronics exchange (night two) and a generally cool place to hang out (all nights). My installation was in the bar, which opened a little later than anticipated.

me standing at the door of the bar saying to all who pass “This will be a bar soon, but we’re still trying to fix the ethernet to the till”.

I’m not going to write anything about my installation in this post as I think it deserves a bit more of an in-depth description in a post of its own. After dark, with lasers and flamethrowers and so on, Null Sector really looked impressive.

Dancers in the Null Sector lit up with lasers, flamethrowers and EL wire.

Other than the prep and debugging in Null Sector I didn’t see much of the main festival on the Friday. I did do a couple of talks though, and the first talk I went to was also one of my favourites of the whole weekend. It had all the ingredients of a fine EMFCamp presentation. Cute robotic elements, anecdotes, how-to details, tales of unsuccessful iterations, and a live demo which pretty-much worked but was at times baffling. You can watch the talk here:

Libby Miller talking about building a telepresence robot out of an Ikea lamp – github link

Throughout the weekend the Hacky Racers were running, a bunch of modified small electric vehicles (at least I think they were all electric…). These raced around a straw bale track – I think a lot of different people were involved in driving each one. They had enduro races, time trials and all sorts of contests. Surprisingly fast at times, and very entertaining. It would have been easy to spend an afternoon just watching, if there weren’t a million and one other things to look at and play with.

One of the Saturday workshops I did was a soft circuits workshop with the excellent Helen Leigh, author of the soon to be published book “The Crafty Kid’s Guide to DIY Electronics“. The workshop was a build from the book, making a light-up emoji sparkle heart. I didn’t get my official EMFCamp badge to work so spent most of the rest of the festival wearing this lightup sparkle heart instead of a badge. I’ve been following Helen on Twitter since the last EMF and I can’t wait to read her book and buy it for all my age-appropriate relatives (and probably myself, first).

Helen and I with my sparkly heart emoji

On the Saturday night there was a screening of the film Hackers, which I had never seen before; I think that means I’m probably not as much of a geek as I thought I was. Seen it now though. Great film. A++++ will watch again. HACK THE PLANET.

Every year I’ve been to EMF I’ve just missed out on the Titanium Spork workshop by Richard Sewell. This year I made it – I got there half an hour early and was the last person to get in. Then I spent 2.5 hours drawing, thinking, cutting in cardboard, cutting in titanium, then a whole load of hammering. At the end, I had my own piece of cutlery. SPORK. Since I got back I have said “Do you want to see my spork?” to about 20 people.

SPORK and @jarkman

On the final night I spent much of the time in Null Sector dancing to the DJ’ing of Chemical Adam – he did another of my favourite talks from the weekend, on somatosensory music, body hacking and beyond. I thought – based on the sheer nuts value of his talk – that the DJ set would be likely to be pretty mad too. Spoiler alert, it was good but not completely bonkers. Take that as you will. Lots of us danced to it.

After the music stopped – bang on 11, as that’s when the licence said it had to, I hung around playing embarrassingly anatomically dynamic computer games with a bunch of Aberystwyth graduates, which was a really pleasant way to round off a lovely evening and a great festival. I’m already looking forward to 2020.

Reflections on 6 months of part time

For the last 6 months I’ve been part time at 70%, in pursuit of a bit of headspace and some work-life balance. This was part of Aberystwyth University’s “flexible working” scheme where you can apply for different hours for 6 months on a trial basis, so it was a relatively risk free way of experimenting with a little bit more free time.

Obviously, it’s not always possible to get work done in the time available (and some things – like open days or travel – I didn’t count because nobody bothers counting them). Generally I’ve tried to stick to my days off though, keeping track of my hours, and here I am at the end of the period owed just 4 days. This is a level of slippage I can deal with, and I’ll take those days here and there before term starts.

Did I get everything done at work? Well I’ve had to be a little less perfectionist than usual. I’ve tried to manage everything WRT teaching, admin and research, and my workload has been reduced a bit (no tutees). I do feel like I’m missing stuff and I am no longer on top of everything that goes on in the department, but that’s OK and also part of the point of being part time. I don’t actually have to do everything myself.

So that I didn’t let myself sit indoors messing about on the Internet for a day and a half every week, I set myself some “part time challenges”, because nothing says work-life-balance like a to-do list. I’ve been pretty good at this. On the list were some physical things – walk up a big hill (Cadair Idris), get fit enough to cycle home from town. I had to cycle up the back way (still not fit enough to cycle up Penglais Hill) but I have made it home from town on my bike.

Others were dorky, and these have already been reported on this blog as I built a retro games controller and a drum kit ball pit.

The remaining things on the list were creative; I wanted to paint a picture using watercolours as I’d never used them before, and a picture using acrylics because I’m out of practice. I also decided to teach myself Blender, which is a 3D modelling system. I’ve managed all of these except for Blender, and I think I’m going to give up on that. It’s a fiddly piece of software and I’m happier writing code than digging about in menus so if I get into computer graphics I’ll do it at a lower computational level.

Here’s one of the watercolours, which is a poster of things around Exmouth that my sister in law might like:

Here’s the acrylic which is as usual of Penglais woods:

The problem with that woodland picture is that the patch of pale pathway looks a bit like a ghostly sheep from a distance. I’m going to have to fix that.

I’ve found it quite enjoyable having the time to do things that aren’t work, and to do some dorky “almost work” things which I would otherwise not have had time for. So I’ve gone part time as a permanent measure. This means that in the future this blog’s readers (both of them) can expect more crap watercolours and daft electronics, and fewer conference reports.

Inventeurs meeting, London

A couple of weeks back I went to London to observe an EU project meeting as external evaluator. The project is a direct descendant of the Playful Coding project and has some of the same partners, so it’s good to see what they’re getting up to after that project ended. Inventeurs is a project which looks at transnational collaboration on coding activities, particularly to support migrant children. The UK partner this time is London South Bank University (LSBU) who I have done quite a bit of work with in the past.

LSBU are based at Elephant and Castle which is pretty near where I grew up – we started our meeting at their campus and discussed progress on the work. As part of the project the partners are creating a MOOC (Massive Open Online Course) to get teachers involved in the project, covering the pedagogical aspects and the technical aspects. It was really heartening to see the progress being made on this; it will be a very useful resource for teachers getting into coding and collaboration.

After lunch, we walked to a school in Walworth, which took the group down East Street Market and Walworth Lane, both roads I remember clearly from my early years in London. I suspect I was the only person in the group feeling heavily nostalgic, everyone else was simply captivated by the colours and the sights. It’s not tourist London.

In the first school we took over a business studies classroom and talked about management of the project; the classroom decoration was apt for Mireia’s talk!

At the end of the school day we travelled further south and had an evening session in Peckham Library, looking at collaboration between classes and how we can get schools in different countries to work together on an extended topic over 10 weeks. There are some difficult hurdles to jump here – some of them are to do with prior knowledge and pedagogical issues but I suspect the biggest hurdle might turn out to be term dates.

At 7 we left the meeting and headed to the dinner location (missing the first goal in the England-Croatia game…). Moving around London by tube during a heatwave is not that fun.

The following day we started early at Southbank Engineering UTC, a school in Brixton. We were at this school for the whole day and met some pupils who’d been taking part in the project. The school’s emphasis on engineering and technology was really cool, the walls were papered with fascinating posters and the students we spoke with seemed very engaged.

School dinners are school dinners though. This photo captures the dining hall before the kids showed up (I’m not going to post photos of random schoolkids on the blog). Having spent quite a lot of my life in south London comprehensives, the atmosphere during school dinner was familiar and I have to say not entirely comfortable.

In the afternoon we spent most of the time discussing project plans and how things are going to work for the final period of the project. In September, the project opens up to other schools and becomes open for anyone to join so there are a lot of things to get right (training, connections, the organisation of school partnerships). The idea is that two classrooms in different countries will work together on a 10-week project, devoting a couple of hours a week to it, building up a collaborative animated story online using scratch. It’s a great, ambitious project, involving tech, art, storytelling, transnational collaboration, and themes of social justice.

There was a lot of work done that afternoon, but we did pause for a game I call “Europeans trying Marmite”.