New Volunteers for Three Rings

Hot on the heels of our long weekend in Jersey, and right after the live deployment of Three RingsMilestone: Krypton, came another trip away: I’ve spent very little time in Oxford, lately! This time around, though, it was an experimental new activity that we’ve inserted into the Three Rings calendar: Dev Training.

Wayfarer's Cottage, Malvern
We rented a secluded cottage to which we could whisk away our prospective new developers. By removing day-to-day distractions at work and home, our thinking was that we could fully immerse them in coding.

The format wasn’t unfamiliar: something that we’ve done before, to great success, is to take our dedicated volunteer programmers away on a “Code Week”: getting everybody together in one place, on one network, and working 10-14 hour days, hammering out code to help streamline charity rota management. Sort-of like a LAN party, except instead of games, we do work. The principle of Code Week is to turn volunteer developers, for a short and intense burst, in to machines that turn sugar into software. If you get enough talented people around enough computers, with enough snacks, you can make miracles happen.

Volunteers arriving at Wayfarers
I’m not certain that the driveway was really equipped for the number of cars we brought. But I don’t get on terribly well with laptops, so clearly I was going to bring a desktop computer. And a second desktop computer, just in case. And that takes up a lot of seat space.

In recent years, Three Rings has expanded significantly. The test team has exploded; the support team now has to have a rota of their own in order to keep track of who’s working when; and – at long last – the development team was growing, too. New developers, we decided, needed an intensive session of hands-on training before they’d be set loose on real, production code… so we took the principles of Code Week, and turned it into a boot camp for our new volunteers!

New developers Rich, Chris, and Mike set up their development environments.
New developers Rich, Chris, and Mike set up their development environments. Owing to the complexity of the system, this can be a long part of the course (or, at least, it feels that way!).

Recruiting new developers has always been hard for us, for a couple of reasons. The first reason is that we’ve always exclusively recruited from people who use the system. The thinking is that if you’re already a volunteer at, say, a helpline or a community library or a fireboat-turned-floating-museum or any of the other organisations that use Three Rings, then you already understand why what we do is important and valuable, and why volunteer work is the key to making it all happen. That’s the bit of volunteering that’s hardest to ‘teach’, so the thinking is that by making it a prerequisite, we’re always moving in the right direction – putting volunteering first in our minds. But unfortunately, the pool of people who can program computers to a satisfactory standard is already pretty slim (and the crossover between geeks and volunteers is, perhaps, not so large as you might like)… this makes recruitment for the development team pretty hard.

Turfed out of the Ops Centre and into the living room, JTA works on important tasks like publicity, future posts on the Three Rings blog, and ensuring that we all remember to eat at some point.
Turfed out of the Ops Centre and into the living room, JTA works on important tasks like publicity, future posts on the Three Rings blog, and ensuring that we all remember to eat at some point.

A second difficulty is that Three Rings is a hard project to get involved with, as a newbie. Changing decisions in development convention, a mess of inter-related (though thankfully not inter-depedent) components, and a sprawling codebase make getting started as a developer more than a little intimidating. Couple that with all of the things our developers need to know and understand before they get started (MVC, RoR, TDD, HTML, CSS, SQL, DiD… and that’s just the acronyms!), and you’ve got a learning curve that’s close to vertical. Our efforts to integrate new developers without a formal training program had met with limited success, because almost nobody already has the exact set of skills we’re looking for: that’s how we knew it was time to make Dev Training Weekend a reality.

Ah! That's a convenient place for a pub!
Conveniently, there was a pub literally just out the gate from the back garden of the cottage, which proved incredibly useful when we (finally) downed tools and went out for a drink.

We’d recruited three new potential developers: Mike, Rich, and Chris. As fits our pattern, all are current or former volunteers from organisations that use Three Rings. One of them had been part of our hard-working support team for a long time, and the other two were more-new to Three Rings in general. Ruth and I ran a series of workshops covering Ruby, Rails, Test-Driven Development, Security, and so on, alternated between stretches of supervised “hands-on” programming, tackling genuine Three Rings bugs and feature requests. We felt that it was important that the new developers got the experience of making a real difference, right from the second or the third day, they’d all made commits against the trunk (under the careful review of a senior developer, of course).

Test-driven development, bar-style
Mike demonstrates test-driven development, down at the local pub: 1. touch cat 2. assert cat.purring? When the test fails, of course, the debugging challenge begins: is the problem with the test, the touch, or the cat?

We were quite pleased to discover that all three of them took a particular interest early on in different parts of the system. Of course, we made sure that each got a full and well-rounded education, but we found that they were all most-interested in different areas of the system (Comms, Stats, Rota, etc.), and different layers of development (database, business logic, user interface, etc.). It’s nice to see people enthused about the system, and it’s infectious: talking with some of these new developers about what they’d like to contribute has really helped to inspire me to take a fresh look at some of the bits that I’m responsible for, too.

Chris explains with his hands, in the bar.
Chris drip-feeds us fragments of his life in computing and in volunteering; and praises Ruby for being easier, at least, than programming using punchcards.

It was great to be able to do this in person. The Three Rings team – now about a dozen of us in the core team, with several dozen more among our testers – is increasingly geographically disparate, and rather than face-to-face communication we spend a lot of our time talking to each other via instant messengers, email, and through the comments and commit-messages of our ticketing and source control systems! But there’s nothing quite like being able to spend a (long, hard) day sat side-by-side with a fellow coder, cracking through some infernal bug or another and talking about what you’re doing (and what you expect to achieve with it) as you go.

Three new developers at dev. training.
Chris, Mike and Rich discuss some aspect or another of Three Rings development.

I didn’t personally get as much code written as I’d have liked. But I was pleased to have been able to support three new developers, who’ll go on to collectively achieve more than I ever will. It’s strange to look back at the early 2000s, when it was just me writing Three Rings (and Kit testing/documenting most of it: or, at least, distracting me with facts about Hawaii while I was trying to write the original Wiki feature!). Nowadays Three Rings is a bigger (and more-important) system than ever before, supporting tens of thousands of volunteers at hundreds of voluntary organisations spanning five time zones.

I’ve said before how much it blows my mind that what began in my bedroom over a decade ago has become so critical, and has done so much good for so many people. And it’s still true today: every time I think about it, it sends my head spinning. If that’s what it’s done in the last ten years, what’ll it do in the next ten?

× × × × × × × ×

Dan Q found GLBERMGT Summit or Submit

This checkin to GLBERMGT Summit or Submit reflects a geocaching.com log entry. See more of Dan's cache logs.

Went up the PYG track this weekend with the TransAid team, raising money in memory of my father (who was killed when he fell from a cliff last year, while in training for a sponsored trip to the North Pole). Whlie the stragglers made their way up to the summit, I whipped out my GPSr and found this wonderful little cache (pretty sure it wasn’t here when I last came up Snowdon, in early 2006).

A glorious day, marred only by the ludicrous number of walkers that had come out to make the most of it – the top was heaving with people!

Didn’t have a pen with me, and there wasn’t one in the cache. I’ve taken a photo of myself holding the cache (which I’ll provide on-demand, but in order not to spoil the cache for others I’ve not included it: instead see attached a photo of my group at the summit – I’m the guy at the front with his arms out; I’ve just run up from where the cache is in order to get into the picture at the last second!).

TransAid team atop Snowdon

Eyebombing

I’ve been sticky googly eyes to things.

Robot graffiti with googly eyes.
Things like this robot, painted onto the door of the bathrooms of a hipsterish East Oxford bar.

(it looks like one of the robot’s eyes fell off before the bar‘s owners Instragram’d it)

Robot with googly eyes.
See the robot? THE ROBOT SEES YOU NOW!

There are those who would argue that this isn’t true eyebombing, because I ought to be sticking eyes to non-anthropomorphic, inanimate objects, and making them look alive by doing so. But the folks on /r/eyebombing don’t seem to mind: they’re far more-focused on the chaos and hilarity that ensues when you just put eyes on any damn thing that looks like it could benefit from them.

This guy's so angry he's popping his eyes out of his head!
This guy’s so angry he’s popping his eyes out of his head!

When I was on holiday in Jersey, for example, I found an unattended rack of tourist information leaflets that were just crying out for a ‘bombing.

"Does this dress make my eyes look fat?"
“Does this dress make my eyes look fat?”

And because I pretty-much carry googly eyes around with me all the time – in the pocket that generally contains my headphones, a pen, a hair tie, and other everyday essentials – I started sticking eyes onto things.

Soon. Creepy cyclist is watching you exercise.
Soon.

The game didn’t stop even when I touched back down on the mainland.

Sign at the toilets in the arrivals lounge of Gatwick Airport.
Sign at the toilets in the arrivals lounge of Gatwick Airport.

Where next…

× × × × × ×

Dan Q found GLBC0V48 on yer bike

This checkin to GLBC0V48 on yer bike reflects a geocaching.com log entry. See more of Dan's cache logs.

Last cache of the day for tajasel and I. Ironically, we’d brought our bikes with us but had to leave them on the other side of Radley Wood, after we’d gotten bogged down in mud, and had to go back for them AFTER signing the log of the “on yer bike” cache. Of all the people wearing cycle helmets to visit “on yer bike”, tajasel is probably the first such person to not actually be on a bike!

Dan Q found GLBC0T42 The runaway prince

This checkin to GLBC0T42 The runaway prince reflects a geocaching.com log entry. See more of Dan's cache logs.

Off for an afternoon’s caching with tajasel, we decided on a whim against our plan to go down the Thames Path and instead found ourselves further West, in Radley Wood. We spotted this cache listing, and thought we’d give it a go… and we’re really glad we did! A fantastic cache with a wonderful puzzle theme; the “decoder” is a wonderful idea; I really love it. Thanks for a great cache!

Just One Q

When Claire and I changed our surnames to the letter Q, six and a quarter years ago, I was pretty sure that we were the only “Q”s in the world. Ah Q‘s name is a transliteration into the Latin alphabet; Stacey Q is a stage name that she doesn’t use outside of her work (she uses Swain in general); Suzi Q‘s “Q” is short for Quatro (perhaps popularised because of the similarly-named song, which came out when she was aged 7; Maggie Q‘s “Q” is short for Quigley (she finds that her full name is almost impossible for her fans in East Asia to pronounce); and both Q and Q are fictional. We were reasonably sure that we were the only two people in the world with our surname, and that was fine by us.

Q from James Bond.
Fictional, as much as we love them.

After Claire and I split up, in 2009, we both kept our new names. In my case, the name felt like it was “mine”, and represented me better than my birth name anyway. Plus, I’d really gotten to enjoy having a full name that’s only four letters long: when my poly-tribe-mates Ruth and JTA (each of whom have almost 30 letters in their full names!) were filling out mortgage application forms recently, I was able to get through the pages I had to fill significantly faster than either of them. There are perks to a short name.

Q from Star Trek.
Also fictional. But we’re less-upset about that.

I can’t say why Claire kept her new name, but I’m guessing that some of our reasons overlap. I’m also guessing that laziness played a part in her decision: it took her many months to finally get around to telling everybody she’d changed her name the first time around! And while I’ve tried to make it possible to change your name easily when I launched freedeedpoll.org.uk, there’s still at least a little letter-writing involved.

Now, though, it looks like I may soon become the only Q in the world:

@Poobar: She said yes! We are going to be the Drs Carter :-) @Eskoala: @poobar proposed (and I said yes!) so we are engaged! :D

Personally, I thought that after she passed her PhD she’d have even more reason to be called “Q”. I mean: “Dr. Q”: how cool is that? It sounds like a Bond villain or something. But on the other hand: if she wants to downgrade to an everyday name like “Carter” then, well, I guess that’s up to her. I shan’t blame them for not opting to hyphenate, though: “Carter-Q” sounds like a brand of ear bud.

U.S. President Jimmy Carter
It’s not like there was ever anybody famous called “Carter”. Except for this guy, I suppose. But he was more of a “brave politician in the face of international crises” character than a “Bond villain” character. Not fictional.

Seriously, though: good for them. If those crazy kids feel that marriage is for them, then I wish them the best of luck. And let’s face it, we’re approaching a bit of a lull in this run of all-of-our-friends-getting-married, so it’ll be nice to have an excuse for yet another wedding and a fabulous party (I’m jumping to conclusions and assuming that they’re going to invite me, especially after this blog post!).

Aww. It’s a sweet photo, but somebody should probably buy them a tripod as a wedding present: it’s hard to keep the horizon level in an arms-length selfie.

In other name-related news, look out for me in the Money section of tomorrow’s Guardian, where I’ll be talking about deeds poll, as part of their series of articles on scammy websites. I always knew that it was only a matter of time before my photo appeared in a national newspaper: I guess I should just be thankful that it’s for something I’ve done right, rather than for something I’ve done wrong!

Update: Here’s the online version of the Guardian Money article.

× × × ×

Buying a House, Part 3

This blog post is the third in a series about buying our first house. If you haven’t already, you might like to read the first part. In the second post in the series, we’d put an offer on a house which had been accepted… but of course that’s still early days in the story of buying a house…

We hooked up with Truemans, a local solicitor, after discovering that getting our conveyancing services from a local solicitor is only marginally more-expensive than going with one of the online/phone/post based national ones, and you get the advantage of being able to drop in and harass them if things aren’t going as fast as you’d like. Truemans were helpful from day one, giving us a convenient checklist of all of the steps in the process of buying a house. I’m sure we could have got all the same information online, but by the time I was thinking about offers and acceptance and moving and mortgages and repayments and deposits and everything else, it was genuinely worth a little extra money just to have somebody say “next, this needs to happen,” in a reassuring voice.

A 22-page form; each page is double-sided for added insanity.
This gargantuan beast is our mortgage application form. All of those pages are double-sided, by the way.

Meanwhile, we got on with filling out our mortgage application form. Our choice of lenders – which Stefan, who I’d mentioned in the last post, had filtered for us – was limited slightly by the fact that we wanted a mortgage for three people, not for one or two; but it wasn’t limited by as much as you might have thought. In practice, it was only the more-exotic mortgage types (e.g. Option ARMs, some varieties of interest-only mortgage) that we were restricted from, and these weren’t particularly appealing to us anyway. One downside of there being three of us, though, was that while our chosen lender had computerised their application process, the computerised version wasn’t able to handle more than two applicants, so we instead had to fill out a mammoth 22-page paper form in order to apply. At least it weeds out people who aren’t serious, I suppose.

A front door with a hole, boarded up with plywood.
The front door of our intended new home had recently sustained some… damage. That didn’t bode well.

I revisited the house to check out a few things from the outside: in particular, I was interested in the front door, which had apparently been broken during a… misunderstanding… by the current owners, who are in the middle of what seems like a complicated divorce. The estate agent had promised that it would be repaired before the sale, but when I went to visit I found that this hadn’t happened yet. Of course, now we had lawyers on our side, so it was a quick job to ask them to send a letter to the seller’s solicitor, setting the repair of the door as a condition upon which the sale was dependent.

A page from our Environmental Search, indicating some of the past uses of the land around the house we hope to buy.
The results of our Environmental Search were perhaps the most-interesting. But I’ll understand if you don’t think it’s as interesting as I do.

Our solicitors had also gotten started with the requisite local searches. One of the first things a conveyancing solicitor will do for you is do a little research to ensure that the property really is owned by the people who are selling it, that there’s no compulsory purchase order so that a motorway can be built through the middle of it, that it’s actually connected to mains water and sewers, that planning permission was correctly obtained for any work that’s been done on it, and that kind of thing. One of the first of these searches to produce results was the environmental search.

A map of the area around our new house, as it was about a century ago.
A map of the area around our new house, as it was about a century ago, unearthed by our convenient tame librarian.

One of the things that was revealed be the environmental search was that the area was at a significantly higher-than-average risk of subsidence, had the construction not been done in a particular way – using subsidence-proof bricks, or something, I guess? I theorised that this might be related to the infill activities that (the environmental search also reported) had gone on over the last hundred and fifty years. The house is near a major waterway, in an area that was probably once lower-lying and wetter, but many of the small ponds in the area were filled in in the early part of the 20th century (and then, of course, the area was developed as the suburbs of central Oxfordshire expanded, in the 1980s). Conveniently, we have a librarian on our house-buying team, and he was able to pull up a stack of old OS maps showing the area, and we were able to find our way around this now almost-unidentifiable landscape.

A map showing a field, hedgerows, water course and - highlighted in blue - a pond. The second highlighting in blue (bottom left) is a letter 'O', not a pond. I got carried away highlighting things, okay?
A map showing a field, hedgerows, water course and – highlighted in blue – a pond. The second highlighting in blue (bottom left) is a letter ‘O’, not a pond. I got carried away highlighting things, okay?

Sure enough, there were ponds there, once, but that’s as far as our research took us. Better, we thought, to just pass on the environmental search report to a qualified buildings surveyor, and have them tell us whether or not it was made out of subsidence-proof bricks or shifting-ready beams or whatever the hell it is that you do when you’re building a house to make it not go wonky. Seriously, I haven’t a clue, but I know that there are experts who do.

Three-panel diagram, showing a low-lying lake being pumped to allow house construction, but in the third panel - OH NOES! - the houses have gone lop-sided because without the water in it, the ground becomes unstable.
In this highly-realistic diagram, which wouldn’t look out of place in a geography textbook, houses go wonky because they’re built on ground that became more-compressible after it was drained. This is what I want to avoid.

Given that the house we’re looking at is relatively new, I don’t anticipate there being any problems (modern building regulations are a lot more stringent than their historical counterparts), but when you’re signing away six-figures, you learn to pay attention to these kinds of things.

Hopefully, the fourth blog post in this series will be about exchanging contracts and getting ready to move in to our new home: fingers crossed!

× × × × × ×

Jersey

A couple of weeks ago – and right at the end of the incredibly-busy development cycle that preceded Three Rings‘ Milestone: Krypton – Ruth, JTA and I joined Ruth’s mother on a long-weekend trip to the island of Jersey. I’d been to the Channel Islands only once before (and that was spent primarily either in the dark and the rain, or else in the basement meeting room of a hotel: I was there on business!), so I was quite pleased to get the chance to visit more “properly”.

The Bay of St. Helier, looking out towards Elizabeth Castle.
The Bay of St. Helier, looking out towards Elizabeth Castle.

Of particular interest was the history of the island during the Second World War. Hitler had been particularly pleased to have captured British territory (after the islands, which were deemed undefensible by the British, had been demilitarised), and felt that the Channel Islands were of critical military significance. As a result, he commanded that a massive 10% of the steel and concrete of the Atlantic Wall project should be poured into the Islands: Jersey was, as a result, probably more heavily-fortified than the beaches of Normandy. In the end, this impregnable island fortress was left until last – Berlin fell before Jersey and Guernsey were liberated – and this was a factor in the great suffering of the islanders during the occupation. We visited the “war tunnels“, a massive underground complex built by the German defenders, and it was one of the most spectacular wartime museums I’ve ever experienced.

The main entrance to the Jersey War Tunnels: a tunnel cut directly into the mountainside, painted as a hospital entrance.
The comparatively-small main entrance to the Jersey War Tunnels doesn’t even begin to do justice to the warren of criss-crossing corridors, rooms, and bunkers that span the underside of the hill.

The tunnels are, of course, an exhibit in themselves – and that’s what I expected to see. But in actual fact, the care and attention that has gone into constructing the museum within is breathtaking. Starting with a history of the islands (in a tunnel filled with the music and postcards of the 1930s), you can just about hear the sounds of war, echoing distantly from the next chamber. There, you walk through a timeline of the invasions of Poland, Denmark, Norway and France, and see how – even with the enemy just barely over the horizon – Jersey still marketed itself as a holiday destination for Britons: a place to escape from wartime fears. Then comes the evacuation – the entire population given barely a day to decide whether they’re staying (and doubtless being occupied by Germany) or leaving (and never knowing when or if they’ll return to their homes). And then, the story of the occupation: framed in a wonderfully “human” context, through exhibits that engage with the visitor through storytelling and hypothetical questions: what would you do, under German occupation?

JTA and Ruth play adventure golf
As a result of politically-correct amendments in the fifth edition of the Diagnostic and Statistical Manual of Mental Disorders, it’s become unacceptable to use the word “crazy” to describe minature golf courses with obstacles.

Certain to ensure that the whole trip didn’t turn into an educational experience, we played a fabulous round of adventure golf under the glorious sunshine of the Channel Islands. I did ever so well, up until the moment where I lost my ball and, swiftly afterwards, my ability to play the game in any meaningful capacity whatsoever. Eventually, Ruth and I tied, with JTA just a little behind… but we were all quite-embarrassingly well over par.

Ruth lining up an adventure golf shot
The landscaping was actually really impressive. The fake cave had successfully fooled a family of ducks into taking up residence: we found a nest full of confused-looking ducklings when I explored around a corner, looking for a lost ball.

Jersey is apparently moderately famous for its zoo. Ruth’s mother had apparently been looking forward to visiting it for years, and – despite it only being of a modest size – had opted to spend an entire day there, and considered taking another half-day, too. Once the rest of us caught up with her there, we certainly had to agree that it was a pretty impressive zoo.

A pair of komodo dragons in an enclosure at Jersey Zoo
A young pair of komodo dragons use their forked tongues to smell a sack of meat that has been hung in the centre of their enclosure.

I was particularly pleased to visit their pair of very active young komodo dragons, their bat cave, their tortoises, and their remarkable aye-ayes – Jersey hosts one of very few successful captive aye-aye exhibits anywhere in the world (and let’s face it, aye-ayes are a fascinating enough species to begin with).

Ruth under a dome in a meerkat enclosure.
The crawl-through tunnel and dome within the meerkat enclosure seemed like a good idea, but once inside it became apparent that it was basically a tiny, airless greehouse… and no closer to the animals than we were from the outside.

Ruth, her mother and I also got out for a little geocaching, an activity that I’d somewhat neglected since last summer. It turns out that there’s quite an active community on the island, and there were loads of local caches. We hit Not much room? first, which turns out to be among the best cache containers I’ve ever seen (spoilers below; skip the remaining photos if you’re ever likely to go ‘caching on Jersey), and certainly a worthy find for my 100th!

Not much room? - there's a geocache hidden in this picture.
We were certain that we were within 5 metres or so of the cache, and were – in accordance with the title – looking for something small, or concealed in a crack. But this cache was smarter than that. Can you see it in this photo?

Later, we set out for View over St Aubins (which I’m sure must have been at a great viewpoint, once, until the trees grew taller and cut off the view), and a quite-enjoyable puzzle cache called Dear Fred… all in all, a great excuse to stretch our legs and to see a little more of the island than we might otherwise have.

A mushroom-shaped geocache
Here it is! Did you find it? Amazingly, Ruth’s mother was the first of us to spot it, despite this being her very first geocaching expedition. Yes, that really is a wooden mushroom with a micro cache hidden within it.

I’m pretty sure I spent most of the holiday, though, catching up on sleep (interspersed with tiny bits of Three Rings work as we came to the tail end of the testing period – the WiFi at our B&B was, by-now-unsurprisingly, faster than that which we get at home). Or drinking. Or one, then the other. After a hard run of Three Rings development, coupled with “day job” work and the ongoing challenge of buying a house, I was pleased to be chilling out and relaxing, for a change.

Jersey Quaker Meeting House.
We also got the chance to visit Jersey Quaker Meeting House: a light, modern building near the middle of St. Helier, sandwiched discretely between the grand hotels and tall townhouses of the island’s capital.

Most-importantly, I reflected as we passed back through airport security on our way back to the mainland, nobody felt the need to kill anybody else the entire trip. Ruth’s mother and I, for example, haven’t always seen eye to eye (something about me ‘stealing’ Ruth from a life of monogamy, or otherwise being a bad influence, might have been an early issue), and it’s not unknown for relations to be strained between her and her daughter or her and her son-in-law, either. But even as we bickered our way through the departures lounge at Jersey Airport, at least I knew that we’d all survived.

Liz gets her bags searched at airport security.
Amazingly, I didn’t hold us all up by getting stopped and searched at airport security, which is usually my speciality when I travel. However, Liz did so on my behalf, by failing to remove everything metal before she went through the metal detector.

All things considered, then: a successful trip. Fun times were had, lots of exciting history was learned, tortoises were prodded, and nobody killed anybody else, however much they might have been tempted.

× × × × × × × × × ×

Matt P makes pancakes

Three on the go at once; with moderate “flipping” success. Sometimes. Except for the one that gets stuck.

Note Matt‘s look of concentration: that’s an essential part of the process.

The hiss in the background in the extractor fan. Sorry about that.

Also available on YouTube.