Building a lightstage

A Lightstage is a system which lets you completely control illumination in a particular space, and capture images from multiple views. They’re used for high resolution graphics capture and computer vision, and they’re fairly rare. I don’t think there are many non-commercial ones in the UK, and they’re research kit (which means you can’t really just go out and buy one, you’ve got to actually build it). Usually, Lightstages are used for facial feature capture, but I’m kinda interested to use them with plants. With the support of the National Plant Phenomics Centre, here in Aberystwyth, and and Aberystwyth University Research Fund grant (URF) I’ve been slowly putting one together.

The key ingredient of a Lightstage is a frame which can hold the lights and the cameras equidistant from the target object. We’ve gone for a geodesic dome construction. Here’s a time-lapse video of Geoff from Geodomes.com building ours (a 2 metre 3v dome made out of rigid struts covered in non-reflectant paint). He has a bit of help from Alassane Seck, who did a PhD here in Aberystwyth on Lightstage imaging.

Once we’d got the dome, the next job was to think about mounting lights on the dome. There are a couple of different approaches we can take, but the essential features are that some of the lights are polarised and some of the cameras also have polarising filters. This means we can separate out specular reflections (light that bounces straight off) and diffuse reflections (light that interacts more with the surface of the object). Pete Scully‘s been working on the light placement, doing a lot of work in simulation. Here’s an early simulated placement: dots are lights, boxes are cameras.

The dome was housed in the Physical Sciences building but it’s recently moved. This puts us in a room which is actually light-tight, a key consideration for reducing interference in the controlled lighting situation. Here’s an arty shot of the top of the dome in its new home.

Since the move of room (very recently) things have really picked up. We’ve got a light-proof space, and we’ve got an intern from France (Robin Dousse) working with us too. Andy Starr‘s been working on the electronics and construction from the outset, and during breaks in teaching has really driven the project forwards. Here’s a shot of Robin, Pete and Andy by the dome:

Robin’s been working on programming our LED controllers. We’ve a fairly complicated master-slave controller system, as running 100 or so ultra-bright lights is not trivial. We’re aiming for a pair (one polarised, one not) at each vertex. Here’s a 12 second video of some flashing LEDs. It’s going to look a lot more impressive than this once it’s actually going, but hey, this is actual lights lighting up on our actual dome so I am very pleased.

We’ve now also, finally, got cameras on the dome. We’re not 100% certain about positioning, but we’re getting there. Andy’s been working on the camera triggers. Soon we’ll have something which flashes, takes pictures, and gives us the data we want.

Lego robots in Pembrokeshire

I’ve been helping out at Aber Robotics Club this year, which is a weekly after school club for local schoolkids. We got invited down to do a workshop in Pembrokeshire as part of “The Cheerful Project” who put on workshops in rural Pembrokeshire, so Steve filled his boot with Lego Mindstorms, got up early on a Saturday, met up with me and with Martin (our new institute schools outreach guy who doesn’t have a webpage yet) and we headed south to somewhere I’d never heard of. Whilst I’m not a huge fan of 7am starts on a Saturday, the weather was glorious and you can’t beat the coast road south of Aber for views. So it was feeling like a good day before we’d even got there.

Upon arrival we met the local organiser who filled us in on details about the people – mixed groups of adults and kids, with the youngest kid being 6, most kids 8-10 and a handful of teenagers. Perfect for lego. We decided to start off with a “programming” task though, with a humanoid robot that could only understand three commands (forwards, left and right) needing to perform a figure 8 path around some tables. The humanoid robot roles were played admirably by parents with blindfolds on. The next photo might look like some bizarre hostage situation but I assure you that it is a photo of a robot workshop.

Much to the kids’ amusement it turns out that the parents weren’t very good at following instructions blindfold. The exercise is a useful one to discuss robots, why they never do what you tell them to, and how you might program them. We also discussed sensors: the robots couldn’t see but it turns out they all navigated a little using sound, which is interesting.

We then got the kids building Lego robots, and once they were mostly done we broke for lunch, out the back of the hall. Quite a nice place to sit and eat some lovely food, provided by the Cheerful Project for us roboteers.

The kids then tethered the robots to our tablets, using Bluetooth, and remote controlled them. A few practice runs were carried out…

And then each of our junior roboteers piloted their own lego robot around the same figure 8 path that the “humanoid robot” had failed on earlier. To finish with we got all the roboteers in a circle and let them have a big robot fight. Because… why not eh? It’s fun.

All the kids seemed to really enjoy it, and I think most of the parents did too. As we were packing up one of the mums came in from the carpark to let us know that her kid had just said “this was the best day of my life!”. Which is the kind of feedback that it’s really nice to get.

Here’s Steve packing up the car.

We stopped for honey ice cream in Aberaeron on the way back too. Sometimes it is worth getting up at 7am on a Saturday.

BCSWomen Lovelace Colloquium blog roundup

The BCSWomen Lovelace Colloquium was last week, in Sheffield. This is a collection of links to reports and so on. As usual I was the conference chair, and my official blog report is now on the BCSWomen site. SO pop over there and read that, then come back for the link roundup.

Playful coding training meeting: Le Creusot, France

We’re just back from a playful coding EU Erasmus+ meeting in Le Creusot, France. The project is really coming together now: we’ve been up and running for nearly a year and the project website now has a lot of content and we’re beginning to pull together a teacher’s guide.

The aim of last week’s meeting was to look at how different people implemented the activities in different contexts, to check that the information we have is good enough for people to pick up and use our workshops, and to think through next steps for the teacher’s guide. It’s been a busy week of thinking, talking, writing, teaching, and testing workshops on local kids.

We were lucky to be able to take four people from Aber Uni this time: myself, Wayne Aubrey (who’s been to the last two meetings so now knows the project well), Amanda Clare, and Mark Neal. We also travelled with Tomi from a local high school (Ysgol Bro Hyddgen). Here’s our traditional “arriving at the meeting” selfie.

For much of the week we were sat in a meeting room discussing the content of the workshops, the presentation of the workshops, and different ways we can organise these so that teachers can make the most of the materials we’ve produced.

Discussions included

  • “Do the workshops have the right titles?”
    (answer: some of them!)
  • “How can we structure these so that there’s a natural flow or network?”
    (answer: it might not be possible, as there’s a real range of activities ranging from beginner’s workshops linking poetry with animation, aimed at 8 year olds and extended workshops talking about plot development and story structure as well as coding, aimed at older kids through to Arduino and other robotic stuff like this workshop which requires specific kit and teacher skills.
  • “How can we work together on a teacher’s guide to help people get the most out of this?”
    (do we want something interactive, or a PDF, or a book, or what?)

We did some practical workshops, with local kids, as well as talking about structure and organisation and plans. I ran a workshop on Artificial Intelligence, which was quite the challenge: 12 kids, under 10, all French. My French is quite good, but not quite good enough to discuss philosophical ideas about intelligence and the Turing test with under-10s. But I gave it a good shot, and had some very welcome linguistic support from the local Le Creusot team. In the AI workshop we do a series of activities which explore ideas around intelligence and embodiment, and at the end of each activity we vote on the question “Can computers think?“.

The aim is to get the kids thinking, not to get them to take a particular stance. Indeed my hope in writing the workshop is that people will consider ideas about what thinking is and what it means for a machine to be intelligent: the aim is to change some minds. So from that perspective the workshop worked. Top tip, though, if you want to run the workshop in France: the chatbot Jeanneton, whilst French, is probably not age-appropriate for 9 year olds.

In each of the workshops we ran we also had observers, and I observed a robot workshop written by the French team. This was really very good fun – POB robots are drag-and-drop coding vehicles with some simple sensors, and the kids really got into it. Here’s some pictures of the robots in action.

In all, it was an interesting and challenging week which really made me think about schools engagement in a more structured way. It’s particularly inspiring to see the kinds of workshops that the other groups are proposing, and I’m really looking forward to hosting everyone in Aberystwyth for the next meeting in March.

If you want to find out more, Amanda’s written a blog on the meeting too, you can like us on Facebook to keep up with what’s going on, and we’ve got a twitter hashtag

Lovelace 2016

The BCSWomen Lovelace Colloquium is a one-day conference for women undergrad and masters students in computing. The centrepiece of the day is a poster contest, and to enter the contest all students need do is write a short abstract (250 words). I started this conference, back in 2008, and run it every year in different universities around the UK. Last year we had just over 150 attendees, and this year we’re hoping to beat that.

SO in March this year we’ll be at Sheffield Hallam Uni, with support from the University of Sheffield, and we’ve got a great speaker lineup coming together – I’ll probably blog about that again in a couple of weeks. Thanks to generous sponsorship we can refund travel for poster contest finalists, and this year we hope to be able to cover about 80 places. If you can, talk to students and encourage them to apply, as confidence is often an issue. There are some abstracts from previous years here if you want to see the type of thing that’s been submitted before: some sample abstracts.

This is our 9th event, and we are expecting a good turnout. We’ve grown year on year and now have a good reputation with students and industrial sponsors. So please encourage any undergrads you know to apply – it’s fun and it looks good on the CV. And there will be cake.

If you’re a student, what are you waiting for?

Here’s the call for abstracts: http://bit.ly/bcs_lovelace, you’ve got just under 2 weeks to write 250 words.

Early mastery/playfulcoding meeting, Craiova

Last week, I went to Romania for an EU ERASMUS+ project meeting about computing in schools. There were four of us from west Wales on the trip – Tomi Rowlands and Erin Good from Ysgol Bro Hyddgen, in Machynlleth, and Wayne Aubrey and myself from Aberystwyth University. The project has been running for a while now and this was our third physical meeting (you can find my blogs on previous meetings here: Perugia; Girona). The aim is to share best practice and materials which can help kids to learn to code in a playful way – it’s a fun project and we’re starting to make some real progress. You can see the project website here: http://playfulcoding.eu, and if you want to keep up to date you can “like” us on Facebook.

When your starting point is Aberystwyth, travel to anywhere is complicated. To get to Craiova, we had to first get to Luton Airport. Then we spent a night in Bucharest (fitting in a bit of sightseeing), and then it was a 3-4 hour train journey to Craiova. I do love travelling, particularly around new countries, and the journey is absolutely part of the fun. For instance – the departure board at Bucharest train station was quite something:

Upon arrival in Craiova we had to find the University, which was actually fairly easy. Here’s our obligatory “West Wales Team arrives at meeting” selfie, photobombed by Joan from the Bourgogne team with some style…

The focus of the first day of the meeting was to consolidate where we were with our coding activities: each site is writing up activities that they do with kids, and then other sites are testing them out. We’re making a lot of progress but as is often the case we could be faster. I have a bunch of things I need to write up for public consumption, and also we have a bunch of activities we’re supposed to be trialling in local schools. So part of the first day was a re-cap on where we are and a little bit of minor wrist-slapping for those of us who need to get into schools more. The hope is that each site will contribute 3-4 activities, which will give us a really strong resource with 20+ fun coding workshops written up well, and then tested in a different country or two. We’re getting there!

The focus of the second day was looking at our next task: this is a big one. We need to write a Teachers’ Guide to help people in schools use the materials we’re pulling together. This involves working out how to structure the workshops, how to highlight links between the workshops, and how to represent any dependencies. Will people want them organised by equipment? Language? Interdisciplinary links? …

Here’s Xevi Cufi of the University of Girona introducing the second day:

We concluded with a visit to a school – one of the Romanian partners, Liceul Tehnologic “Constantin Ianculescu”. It’s always interesting to see inside schools; the classrooms here seemed fairly traditional (lines of desks, very well-behaved and friendly kids) but the stuff the kids were doing was really quite advanced, particularly mathematically. Here’s Marius Marian of Craiova University explaining some old posters on the wall:

Unfortunately we had to dash back to the station in order to catch a train, so we missed the Scratch Programming lesson. But it was a fascinating trip, and the project is really beginning to motor now.

What I learned from going to every exercise class once

I’m just back from the workout called Insanity, which was the last class in my personal mission to try every type of exercise class offered at Aber Uni at least once (except yoga – you’ve got to draw the line somewhere). I saved Insanity for last, you can probably guess why.

Being a proper nerd of course I kept a spreadsheet, with comments and some estimates (percentage of class completed, approximate proportion of guys, that kind of thing). So here are some stats:

  • Highest max heartrate reached: Insanity. Today. 140bpm
  • Lowest max HR: Pilates, where most sessions I got up to 70bpm max
  • Lowest heartrate reached: also Pilates, 53bpm. Those classes can be relaxing
  • Maximum steps per class: an hour’s Zumba class with 4725 steps
  • Maximum steps per minute of class: a 45 minute Dumbbell workout
  • Hardest class: a tie for work-it-circuits, Bootcamp, and insanity. I’m sure that the nice man who teaches ordinary circuits will be disappointed to learn this.
  • Highest proportion of blokes: Circuits, with an estimated 75% bloke proportion
  • Lowest proportion of blokes: 6 classes had no guys at all (2 of the Aerobics classes, one of the Pilates, one of the Zumbas, a Piyo and a Bootcamp)

The project has taken me 2 months, and has involved going to 2 or 3 classes a week, 23 classes in total. To my surprise, there aren’t any which I’ve actively disliked. The only one I don’t think I’ll return to is PiYo, and that’s because it’s a bit too much like yoga. I think my favourites are dumbbell workout, bodyfit, and (surprisingly for me) bootcamp. But I’ll go back to pretty much all of the others too.

For any aber people wondering… here’s the timetable.

How can tech companies attract more women graduates?

Employers who want to change the gender ratio within their workforce have some difficult problems to solve. First amongst these problems is the size of the pool you’re fishing from: there just aren’t that many computer science women to choose from, so finding women who come ready for the workforce can be hard. Obviously you can look outside of the computing grad population – either look for non-grads and apprentices, or look for a broader range of degree subjects – but being a computer science lecturer I’m pretty convinced of the value of a computing degree. And many of the employers we talk to like computing grads too.

So, looking specifically at companies who want to employ computer science graduates there seems to be a real push to employ more women at the moment. I’ve been called by two big name employers in the last couple of months, and I’ve been contacted by a recent grad working in recruitment at a third big name consultancy, and the stalls we have at the BCSWomen Lovelace Colloquium are getting more and more popular each year.

We have an alumni group on Facebook full of women who’ve been to the Lovelace in the past, many of whom are now in grad jobs. In order to find out what kinds of events and recruitment strategies they’d find interesting, I decided to ask outright. There were a couple of suggestions (CV workshops and women-only assessment centres) from companies, and other suggestions came from the students themselves. Generally, the thread was quite interesting.

  • You have to get your adverts checked over by someone who’s not a guy. A lot of tech firms (particularly smaller ones) have a bit of a macho, brogrammer culture, and job ads which ask for rock-star programmers who are happy to work long hours, drink beer, and play computer games are appealing to a small subset of the universe of possible employees. If you really want that kind of employee that’s fine, I guess, but you might as well stop pretending that you’re bothered about diversity.
  • There was broad agreement that the students would like honest feedback and application support: CV workshops can be useful, but so can interview practice and mock assessment centre practice. Companies who are willing to provide training events, with decent feedback, and who can give tips on applications (particularly applications to that company, if it’s a good fit) would definitely be of interest.
  • The idea of women-only assessment centres got a mixed response. Lots of women don’t like events or strategies which are exclusively targeted at one gender.
  • The impression I got was that more balanced (less macho) assessment centres would be a good thing. This could mean women-led assessment centres, and assessment centres where there were balanced teams during teamwork exercises, would be better than outright women-only sessions. It’s true that there’s something odd about being the only woman in a group when you’re being assessed on groupwork (guys are statistically more likely to interrupt and take over) and anecdotally, this seems like it does happen fairly often in company assessment centres. Employers can get around this by having women facilitators1, ensuring that for group exercises there are balanced sets of people where possible (it’s better to have a bunch of all guy groups and a couple of 50-50 groups, for example, than have each group with just one woman in it), and making it clear that they’re taking this kind of thing into account in the job ad.
  • Offer industrial year placements and summer jobs to students in lower years; this gives both company and student a chance to see what it’s like actually working for a particular employer. There’s less of a scary commitment on both sides, and you really will get a feel for what a student can achieve.
  • There was a real interest in events that give a feel for the culture of a work place. Tours of the workplace. Meeting people who work there. Chatting to real engineers, preferably women, in an informal setting, is also a really useful thing to offer. Seeing how people work together in teams and how communication happens in the workplace is interesting to some of the women students & grads. One person suggested that actually doing some kind of activity (maybe a quiz?) in teams to see how people really worked together would be a useful way of finding out what working in the place was going to be like. I think that coming after “the year of the Tableflip”, in which technology workplace culture in general has seen a lot of bad press, students are thinking more and more about cultural fit with a company. If the employer doesn’t have any women engineers who can chat to applicants … why is that?
  • And finally get a stall at the Lovelace. At the BCSWomen Lovelace Colloquium we have a bunch (by which I mean “over 100”) of great women students, all of whom have chosen to give up a day from their vacation time in order to come to a computing conference. Employers who come along get to have a conversation with the students directly. To find out more about this option, talk to me:-)

Obviously there’s more to a diverse workforce than just getting people in the door in the first place (support and retention is really important, and you need to consider what happens when people take a career break) but if you don’t get the women through the door you can’t even start to address the problem. Hopefully this post will help a couple of employers to make their recruitment practices more appealing.

If you want to know more about this kind of stuff, check out Reena Jewell at geekEquality.com – she’s based in Southampton and has done some surveys on what women undergrads want in terms of tech careers.

Many thanks are due to the women students who chatted to me about this topic, both virtually and IRL.

1 obviously, women can be biased too, and if your workplace is entirely male there’s something dishonest about having mixed assessment centres.

Academic conferences. Who pays?

My friend Cate Huston has written a post about tech conferences, and the thorny question of who pays for speakers to attend. You can find it here: Uncomfortable Conversations About Money. I was going to write a comment on it, but then realised I had a bit more to say, so here’s a post instead.

I’ve only spoken at a couple of “mainstream” tech conferences, and they’ve either been local (so travel wasn’t an issue) or they’ve paid my travel. Which is nice. It is also a very unusual experience for me — very very rarely do academic computing conferences pay your travel, fee, or accommodation. Even if you’re presenting on the main stage you’ll have to pay the registration fee, and that’s usually hundreds of pounds/dollars/euros/whatevers. That’s not the only contrast though – here are the key differences as I see them:

Industry computing conferencesAcademic computing conferences
Speakers are invited, or submit abstractsSpeakers submit full papers (usually 4-15 pages). Conferences which are worth getting into (more on this later) will go to peer review
Often speakers are invited on their ability to give a good talkThe ability to give a good talk is irrelevant: whether you get in or not depends on the quality of your paper (and the robustness of the peer review process, of course)
There are lots of freebies: coffee, toys, t-shirts, etc.Most of the time, you’ll be lucky to get a usb stick and an unfashionable t-shirt (mens cut only)

What options are there for paying?

  1. Uni pays: Some unis have a central travel fund which can provide a contribution.
  2. Department pays: Some departments have a travel fund
  3. A grant pays: If you have been awarded a grant to do the work, you’ll have put some conference money in the grant proposal.
  4. You get an external travel grant: my professional body The British Machine Vision Association has travel bursaries for PhD students. Other societies might have the same.
  5. You pay with “slush money”: in a lot of unis, researchers will have their own personal research accounts, where little bits of money go. Grant overheads, consultancy money, prizes. In mine, I’ve had a teaching award (£1.2k), and some consultancy money (£1k) for schools outreach work that the project was going to pay to me personally, but which I put in the uni account just so I’d have some money for work-related travel and equipment. These funds can be used for any research-related expenditure; mine mostly goes on conference travel, camera kit (for computer vision work), and robots for schools outreach projects.
  6. Your PhD supervisor pays with their slush money: if you’re a student (and the department won’t pay), you can ask your supervisor. If you’re a supervisor, better build up some slush.
  7. You pay yourself: or partly pay, if you can only raise a bit from the department
  8. You put someone else on the paper: someone who’s likely to travel and can present the work, and who hopefully is related to the work. A few conferences will let non-named authors present which is another way of getting your work out there, if you can’t get out there yourself.
  9. You don’t go: this is a real pain in the arse, particularly if you’ve done the work, written a 12 page paper, got accepted, then find you have to withdraw due to lack of funds. It’s such a pain in the arse that I suspect most people don’t submit to conferences unless they’ve got a reasonable expectation of being able to afford to go.

The sources of funding have criteria attached, and I have seen all of the following (although not applied to the same funding stream, that would be silly).

  • Available to people at a particular career stage, e.g. early career researchers or PhD students
  • A limit on the number of applications per year: one conference a year; one national conference a year; one international conference a year
  • Geographical limits e.g. “National or European conferences only”
  • Conference quality related limits: either a named list of “ranking” conferences, or only conferences with acceptance rates below X% (x=33, in one place I worked)

I’ve only paid for my own conferences out of my salary once or twice, and those have been times when I have partial funding, or we’ve gotten extended versions of student project work published and I really want to support the student in going. There was a particularly memorable “getting to ITHET2003 in Morocco the cheap way” journey involving a cheap flight to Malaga, then coaches, ferries, trains and taxis, which meant that the travel costs were minimal and splitting the funding enabled both me and my project student to go. I think this cost me personally about 400 quid, but it was 400 quid well spent in my view.

Is there an equalities spin on this?

As ever there’s the question of equalities. The usual tech conference questions apply just as well to academic computing conferences. Speaker gender balance is harder to address, as you can’t just “invite more women”. Childcare is not often provided. In computer vision, at least, there’s a very real chance of being the only woman in the room (which is odd). But on the plus side, in computer vision, a lot of our peer review processes are double blind anonymous (where the reviewers don’t know who you are, and you don’t know who the reviewer is) which takes gender out of the equation during the decision process.

When we come to funding in particular there are two equalities issues I can think of.

Anything that is restricted to early career needs to have a well thought through definition of what “early career” means, so that the criteria do not disadvantage those who have taken career breaks.

A lot of the arrangements are informal and “can I have funding” boils down to asking a guy if you can go. One of the things Cate’s article touches upon is that transparency can be good for equality. If you have a policy, don’t make people ask to see it – make it clear. If you don’t have a policy, or you have one but it’s not well-known, you’re relying on people finding it out through informal chat, or asking for help. And in that case, you’re biasing the system against the reticent and the out-groups.

To Kill A Machine

On Friday I went to Cardiff to see a play. It’s a long way to go for a play, but this one’s special. It’s written by my friend Catrin, who’s a law lecturer here in Aberystwyth, and it concerns Alan Turing. She wrote it during the Alan Turing centenary year (2012), and the play has grown and developed since. Some of the actors read a scene at the BCS Mid Wales AGM in 2012, and I thought it was captivating. Since then, my interaction with the play has been accidentally at-a-distance. I wrote a piece on AI for the program, I supported the kickstarter, I spoke to colleagues and friends who loved it, I met the director and producer, I wrote letters of support, I tweeted about it. I had tickets once, but then I had the flu. It played in Aber, but I was in London. It played in London, but I was in Scotland.

So it was quite a relief to actually finally see it. It was even more of a relief to find the play was exactly as brilliant as I’d been told.

This play is not a sanitised biopic. This has not been edited for the Hollywood audience.

It’s an uncompromising story about a brilliant man, who refused to compromise in his work or in his private life. The actors are all great, but Gwydion Rhys (who plays Turing) is particularly captivating; he speaks as I imagine Turing would have done: pausing, thoughtful, awkward. The central device of the play is the game Imitation; this is also the core of Turing’s 1950 paper “On Computing Machinery and Intelligence”. In Turing’s article he debates whether it possible to tell, by asking questions, if you are talking to a man or a woman, or a human or a computer, and uses this debate to discuss the nature of artificial intelligence. The play uses the question and answer “game show” format to chilling effect.

The play goes to Edinburgh next week; it’s a one-act, fast paced, challenging piece of theatre. If you’re in Edinburgh, during the festival, I cannot recommend this enough. It’s on 7-31 August (except tues) at The Zoo, and here’s a link to buy tickets.