How do you make programmers work 60-80 hours per week?

Original question from Quora:

Programmers in our startup usually put 8 hours and go home. I keep reading stories about 80+ hour weeks. How do you make them work longer hours? Do we have to pay overtime? We gave few of them some equity, but it doesn’t seem to work.

My Answer:

I’m going to tell you a secret, so please listen closely.

No programmers really work 60-80 hours a week, especially in a 5 day span. That is a 12-16 hour day, 5 days a week.

I promise you that any company that has programmers “working” that many hours is really only getting 2-4 hours of real work out of them each day. The rest of the time will be filled with pointless meetings, a fair amount of web browsing, and then a whole lot of looking busy…

Hello 2013: My Birthday

This is the second in a series of four blog posts which ought to have been published during January 2013, but ran late because I didn’t want to publish any of them before the first one.

I spent the weekend of my birthday working in London, alongside the Squiz team, who make the CMS that forms the foundation of most of the public-facing websites of the Bodleian Libraries. We’d originally scheduled this visit for a different week, but – in that way that projects sometimes do – the project got juggled about a bit and so I found myself spending the week of my birthday away from home.

The team at Squiz's London office, debriefing over drinks at the end of a crazy week.
The team at Squiz’s London office, debriefing over drinks at the end of a crazy week.

But on Tuesday – my second day working on-site at Squiz’s office, and coincidentally my birthday – disaster struck! Our first clue was when the lights went out. And then, a minute or so later, when the fire alarm started going off. No big deal, we all thought, as we gathered our possessions and prepared to leave the office – it’s probably just that the fire alarm sounds as a precaution if it’s electricity supply is disrupted… but as we started to go down the stairs and smelled the smoke, we realised that there really was a fire.

Visiting @SquizUK in London when... Building caught fire! Heaps of smoke, two pumps. Been evacuated.
My tweet, from outside the Squiz offices.

The first two fire engines arrived within minutes. Apparently, they don’t mess about when a city centre office block catches light. The smoke was very visible from the street: thick grey plumes pouring out from the basement windows. Theories about the cause of the fire were whispered around the assembled crowd, and the consensus seemed to be that the substation in the basement had overheated and set alight its room.

The first fire engines on the scene, as people are still filing out of the building.
People were still filing out of the building when the first of the fire engines arrived.

A third fire engine arrived, and – after about a quarter hour of assessing the situation and controlling the crowd – we were told that we wouldn’t be able to get back into our building for “at least an hour, probably more.” So, being British, we therefore decamped to one of the nearby bars for networking and a round of gin & tonic. After I texted some friends to say that I hadn’t expected to spend the afternoon of my birthday in the pub, but that it wasn’t an entirely unwelcome experience, a few of them had the cheek to ask once again how the fire had actually started.

Fire engines behind a yellow tape line.
Before long, the fire brigade had established a cordon some distance back from the fire, and were pouring water into the basement.

By the time we were allowed to return to the building, it was already getting dark, and we quickly discovered a new problem that faced us: with the power still well and truly out, the electronic door locks that secured the offices had become completely unusable. Not willing to abandon my laptop, keys, and other personal possessions overnight in an unfamiliar office, I waited around until a locksmith had been summoned and had drilled his way through the cylinder and allowed us into the building.

The code lock at the door of the Squiz offices.
Without power, it turns out that these things can be pretty useless. At least they “fail secure”, keeping the door locked (from the outside) in the event of a problem, rather than the alternative…

It being my birthday, I’d arranged that Ruth would come and spend the night down in London, and that we’d go out to Dans le Noir, a restaurant that I’d heard about from news articles and via friends some years prior, and always wanted to try. The restaurant has a distinct and quite remarkable theme that you probably won’t find anywhere else: that theme is that you eat unidentified food in pitch blackness.

A tealight candle burning in the dark.
Don’t be fooled: this picture of the tip of a candle wasn’t taken at Dans le Noir, but at Squiz.

As our (blind!) waiter, Gao, led Ruth and I by touch to our table, we suddenly realised that we’d all but forgotten exactly how dark pitch blackness actually is. When you stumble over your coffee table in the dark on a morning, that’s not truly black: there’s that sliver of light coming from underneath the curtains, or the faint glow of the LED light on the stereo. Real, complete darkness is disorienting and confusing, and to sit around in it – not even able to see whether your eyes are open or closed – for hours at a time is quite remarkable.

Blackness.
Now this is more like what it looks like at Dans le Noir!

It took us a little while to learn the new skills required to survive in this environment, but Gao was incredibly helpful. We worked out mechanisms for pouring drinks, for checking whether our plates were empty, and for communicating our relative movements (being geeks, as we are, Ruth and I quickly developed a three-dimensional coordinate-based system for navigating relative to an agreed centre-point: the tip of the bottle of our mystery wine). We also learned that there’s something truly humbling about being dependent upon the aid of a blind person to do something that you’d normally be quite capable of doing alone: simple things, like finding where your glass is.

Just come out of Dans le Noir, the restaurant where you eat mystery food in the dark, and... OMG. Expected a gimmick. Expected it to be about the food. But it's not. It's about so much more than that. Would eat here again.
My tweets after coming out of Ruth and I’s remarkable experience of Dans le Noir.

But the bigger lesson that we learned was about how darkness changes the way that we operate on a social level. Ruth and I were sat alongside another couple, and – deprived of body language, the judgement of sight, and the scrutiny of eye contact – we quickly entered into a conversation that was far deeper and more real than I would have anticipated having with total strangers. It was particularly strange to see Ruth, who’s usually so shy around new people, really come out as confident and open. I theorise that (in normally-signted people) eye contact – that is, being able to see that others can see you – serves as a regulator of our willingness to be transparent. Depriving it for long enough that its lack begins to feel natural makes us more frank and honest. Strange.

Still no power at @SquizUK following yesterday's fire. Just waiting for more people to arrive so we can work out where we're working today. Decamped to a number of venues around East London. The team I've been working with and I are in the basement of a nearby cafe!
Live updates, primarily for the benefit of the people back at my usual workplace, on progress at Squiz.

Back at Squiz the following day, there was still no electricity. Credit is due to the team there, though, who quickly put in to effect their emergency plans and literally “moved office” to a handful of conference rooms and meeting spaces around Shoreditch. “Runners” were nominated to help relay messages and equipment between disparate groups of people, and virtualised networks were established across the city. I laughed when I discovered that Squiz’s old offices had been in an old fire station.

Squiz team members put their emergency plan into effect.
Team members at Squiz, in their unlit, unheated office, begin to put their emergency plan into place, picking up computers and transporting them to alternative venues.

Before long, the folks I’d been working with and I were settled into a basement meeting room in a nearby café, running a stack of Mac desktops and laptops from a monumental string of power strips, and juggling an Internet connection between the café’s WiFi and a stack of Mifi-like devices. We were able to get on with our work, and the day was saved, all thanks to some smart emergency planning. Later in the week, a generator was deployed outside the building and we were able to return to normal desks, but the quick-thinking of the management ensured that a minimum of disruption was caused in the meantime.

After a wonderful night of comedy with @BrynS, I'm back in the office (in the building that caught fire), now powered by a huge generator.
My tweet about seeing comedy with Bryn and about returning to the office (now powered by a huge generator).

Not one to waste the opportunity to make the most of being in London for a week, I spent another of my evenings out with Bryn. He and I went out to the Free Fringe Fundraiser, which – despite a notable absence of Peter Buckley Hill, who had caught a case of the then-dominating norovirus – was still a great deal of fun. It was particularly pleasing to get to see Norman Lovett in the flesh: his particular brand of surrealist anti-humour tickles me mercilessly.

So what could have been “just another business trip” turned into quite the adventure, between fires and birthdays and eating-in-the-dark and comedy. If only it hadn’t taken me two months to finish writing about it…

A Surprise Christmas Gift

A strange package appeared outside of the door to my office, some time this morning, wrapped as a gift and accompanied by a card.

A card, bottle of wine, and box of chocolates!

It turns out to have been my colleagues at the Bodleian Shop, whose newly-relaunched e-commerce site I was drafted into at the last minute to iron out a few technical hitches in time for them to start making online sales before the Christmas rush. There were a few somewhat-stressful moments as technical folk from disparate providers worked together to link-up all of the parts of the site (warehouse and stock level systems, order and payment processing, content management, and of course the web front end), but it all came together in the end… and I think a lot of lessons were learned from the experience.

My bottle of wine, chilling amidst the anti-bird-wire on the window ledge of the building.

So that was a very sweet surprise. I knew that they’d appreciated my “hopping department” in order to firefight the various problems that came up during their deployment, but it was still really awesome to get an alcoholic, chocolatey thank-you and a cute card signed by their team, to boot.

QR Codes of the Bodleian

The Treasures of the Bodleian exhibition opened today, showcasing some of the Bodleian Libraries‘ most awe-inspiring artefacts: fragments of original lyrics by Sappho, charred papyrus from Herculaneum prior to the eruption of Mt. Vesuvius in 79 CE, and Conversation with Smaug, a watercolour by J. R. R. Tolkien to illustrate The Hobbit are three of my favourites. Over the last few weeks, I’ve been helping out with the launch of this exhibition and its website.

From an elevated position in the exhibition room, I run a few tests of the technical infrastructure whilst other staff set up, below.

In particular, something I’ve been working on are the QR codes. This experiment – very progressive for a sometimes old-fashioned establishment like the Bodleian – involves small two-dimensional barcodes being placed with the exhibits. The barcodes are embedded with web addresses for each exhibit’s page on the exhibition website. Visitors who scan them – using a tablet computer, smartphone, or whatever – are directed to a web page where they can learn more about the item in front of them and can there discuss it with other visitors or can “vote” on it: another exciting new feature in this exhibition is that we’re trying quite hard to engage academics and the public in debate about the nature of “treasures”: what is a treasure?

A QR code in place at the Treasures of the Bodleian exhibition.

In order to improve the perceived “connection” between the QR code and the objects, to try to encourage visitors to scan the codes despite perhaps having little or no instruction, we opted to embed images in the QR codes relating to the objects they related to. By cranking up the error-correction level of a QR code, it’s possible to “damage” them quite significantly and still have them scan perfectly well.

One of my "damaged" QR codes. This one corresponds to The Laxton Map, a 17th Century map of common farming land near Newark on Trent.

We hope that the visual association between each artefact and its QR code will help to make it clear that the code is related to the item (and isn’t, for example, some kind of asset tag for the display case or something). We’re going to be monitoring usage of the codes, so hopefully we’ll get some meaningful results that could be valuable for future exhibitions: or for other libraries and museums.

Rolling Your Own

If you’re interested in making your own QR codes with artistic embellishment (and I’m sure a graphic designer could do a far better job than I did!), here’s my approach:

  1. I used Google Infographics (part of Chart Tools) to produce my QR codes. It’s fast, free, simple, and – crucially – allows control over the level of error correction used in the resulting code. Here’s a sample URL to generate the QR code above:

https://chart.googleapis.com/chart?chs=500×500&cht=qr&chld=H|0&chl=HTTP://TREASURES.BODLEIAN.OX.AC.UK/T7

  1. 500×500 is the size of the QR code. I was ultimately producing 5cm codes because our experiments showed that this was about the right size for our exhibition cabinets, the distance from which people would be scanning them, etc. For laziness, then, I produced codes 500 pixels square at a resolution of 100 pixels per centimetre.
  2. H specifies that we want to have an error-correction level of 30%, the maximum possible. In theory, at least, this allows us to do the maximum amount of “damage” to our QR code, by manipulating it, and still have it work; you could try lower levels if you wanted, and possibly get less-complex-looking codes.
  3. 0 is the width of the border around the QR code. I didn’t want a border (as I was going to manipulate the code in Photoshop anyway), so I use a width of 0.
  4. The URL – HTTP://TREASURES.BODLEIAN.OX.AC.UK/T7  – is presented entirely in capitals. This is because capital letters use fewer bits when encoded as QR codes. “http” and domain names are case-insensitive anyway, and we selected our QR code path names to be in capitals. We also shortened the URL as far as possible: owing to some complicated technical and political limitations, we weren’t able to lean on URL-shortening services like bit.ly, so we had to roll our own. In hindsight, it’d have been nice to have set up the subdomain “t.bodleian.ox.ac.uk”, but this wasn’t possible within the time available. Remember: the shorter the web address, the simpler the code, and simpler codes are easier and faster to read.
  5. Our short URLs redirect to the actual web pages of each exhibit, along with an identifying token that gets picked up by Google Analytics to track how widely the QR codes are being used (and which ones are most-popular amongst visitors).
By now, you'll have a QR code that looks a little like this.
  1. Load that code up in Photoshop, along with the image you’d like to superimpose into it. Many of the images I’ve had to work with are disturbingly “square”, so I’ve simply taken them, given them a white or black border (depending on whether they’re dark or light-coloured). With others, though, I’ve been able to cut around some of the more-attractive parts of the image in order to produce something with a nicer shape to it. In any case, put your image in as a layer on top of your QR code.
  2. Move the image around until you have something that’s aesthetically-appealing. With most of my square images, I’ve just plonked them in the middle and resized them to cover a whole number of “squares” of the QR code. With the unusually-shaped ones, I’ve positioned them such that they fit in with the pattern of the QR code, somewhat, then I’ve inserted another layer in-between the two and used it to “white out” the QR codes squares that intersect with my image, giving a jagged, “cut out” feel.
  3. Test! Scan the QR code from your screen, and again later from paper, to make sure that it’s intact and functional. If it’s not, adjust your overlay so that it covers less of the QR code. Test in a variety of devices. In theory, it should be possible to calculate how much damage you can cause to a QR code before it stops working (and where it’s safe to cause the damage), but in practice it’s faster to use trial-and-error. After a while, you get a knack for it, and you almost feel as though you can see where you need to put the images so that they just-barely don’t break the codes. Good luck!
Another of my "damaged" QR codes. I'm reasonably pleased with this one.

Give it a go! Make some QR codes that represent your content (web addresses, text, vCards, or whatever) and embed your own images into them to make them stand out with a style of their own.

Time

My name is Dan, and I am a chronogoldfish.

Is this a chronogoldfish? I don't know. And neither do you. I just made them up.

You see: the thing that goldfish are famous for – except for their allegedly very short memory, which is actually a myth – is that they grow to fill the available space. That is: if you keep a goldfish in a smaller tank, it’ll grow to a full-size that is smaller than if you kept it in a larger tank or even a pond. I’m not certain that’s actually true either, and I’m sure that Kit will correct me pretty soon if it’s not, but it’s part of my analogy and I’m sticking with it.

A chronogoldfish, then, is somebody who grows to fill the available time. That is: the more free time you give them, the more they’ll work at filling it up. This is a mixed blessing, which is a euphemism for “usually pretty bad.” You’ll almost never catch me bored, for example – I’ve no idea how I’d find time to be bored! – but conversely it’s reasonably rare to find me with free time in which I don’t have something scheduled (or, at least: in which I don’t have something I ought to be doing).

Earlier this year, I started working for the Bodleian, and this – along with a couple of other changes going on in my life, suddenly thrust upon me several hours extra in each week than I’d had previously. It was like being transplanted from a tank… into a pond and – once I’d stopped checking for herons – I found myself sitting around, wondering what to do with my sudden surge of extra free time. But then, because I’m a chronogoldfish, I grew.

The activities that I already did became bigger – I took on more responsibilities in my voluntary work, took more opportunities to socialise with people I spend time with, and expanded my efforts to develop a variety of “side project” software  projects. I’ve even lined myself up for a return to (part-time) education, later this year (more on that in another blog post, little doubt). And so, only a few months later, I’m a big, fat chronogoldfish, and I’ve once again got just about as little “free” time – unplanned time – as I had before.

But that’s not a bad thing. As Seth Godin says, wasting time (properly) is a good thing. And there’s little doubt that my growth into “new” timesinks is productive (education, voluntary work), experimental (side-projects, education), and joyful (socialising, everything else). I’d like to think I use time well, even if I do sometimes wonder: where did it all go?

I suppose the opposite of a chronogoldfish might be a chronomidget: somebody who doesn’t grow to consume any more time than they have to. The test, I suppose, would be to ask yourself: what would you do if there was an extra half-hour in the day? If your brain immediately rushes to fill that space with an answer (a genuine answer: something you’d actually do – there’s no point lying to yourself and saying you’d spend it at the gym if you wouldn’t!), you’re probably a goldfish. If not, you’re probably a midget.

I think I can name people among my friends who are goldfish, and people who are midgets. But I do wonder what type they would say that they are…

Work Calendar [NSFW?]

In my office at the Bodleian, we’ve got a calendar on which employees mark their annual leave. The theme of the calendar is supposed to be paintings inspired by flowers… but – and maybe it’s just my dirty mind – this month’s image seems just a little bit saucy:

Our calendar this month. That's supposed to be a flower, is it?

Click to embiggen. It can’t be just me that sees… it… right?

First Class Film

Last week, I saw X-Men: First Class at the cinema with Ruth. The film was… pretty mediocre, I’m afraid… but another part of the cinemagoing experience was quite remarkable:

There’s a bit in the film where Xavier, then writing his thesis at Oxford University, and a CIA agent are talking. As they talk, they walk right through the middle of the Bodleian Library, right past my office. It’s not just Morse and Lewis and the Harry Potter films that make use of the Library (at great expense, I gather) for filming purposes! “That’s my office!” I squee’d, pointing excitedly at the screen.

Needless to say, the student-heavy audience cheered loudly at the presence of parts of Oxford that they recognised, too. It’s been a while since I was in a cinema where people actually cheered at what was going on. In fact, the last time will have been in the Commodore Cinema in Aberystwyth. But cinema-culture in Aberystwyth’s strange anyway.

Fonts of the Ancients

“Thanks to these changes,” I said, “The Bodleian Libraries websites CMS can now support the use of Unicode characters. That means that the editors can now write web content in Arabic, Japanese, Russian… or even Ancient Egyptian!”

The well-known "man standing on two giraffes" hieroglyph.

It sounded like a good soundbite for the internal newsletter, although of course I meant that last suggestion as a joke. While I’m aware of libraries within the Bodleian who’d benefit from being able to provide some of their content in non-Latin characters – and Arabic, Japanese, and Russian were obvious candidate languages – I didn’t actually anticipate that mentioning Ancient Egyptian would attract much attention. Everybody knows that’s meant as a joke, right?

Streetlights of the 2nd century BC were powered by enormous slugs.

“Is that just Demotic symbols, then? Or can we use all hieroglyphics?” came back the reply. My heart stopped. Somebody actually wanted to use a four thousand plus year old alphabet to write their web pages?

It turns out that there’s only one font in existence that supports the parts of the Unicode font set corresponding to Egyptian hieroglyphics: Aegyptus. So you need to ensure that your readers have that installed or they’ll just see lots of boxes. And you’ll need to be able to type the characters in the first place – if you don’t have an Ancient Egyptian Keyboard (and who does, these days), you’re going to spend a lot of time clicking on characters from a table or memorising five-digit hex-codes.

Papyrus was important, but the Egyptians' greatest achievement was the invention of crazy golf.

But yes, it’s doable. With a properly set-up web server, database, CMS, and templates, and sufficient motivation, it’s possible to type in Ancient Egyptian. And now, thanks to me, the Bodleian has all of those things.

Well: except perhaps the motivation. The chap who asked about Ancient Egyptian was, in fact, having a laugh. In the strange academic environment of Oxford University, it’s hard to be certain, sometimes.

Crocodiles can easily be caught using sleeping bags.

I do find myself wondering what scribes of the Old Kingdom would have made of this whole exercise. To a scribe, for example, it will have been clear that to express his meaning he needed to draw a flock of three herons facing left. Millenia later, we treat “three herons facing left” as a distinct separate glyph from “one heron facing left”, perhaps in a similar way to the way that we treat the Æ ligature as being separate from the letters A and E from which it is derived. He couldn’t draw just one heron, because… well, that just wouldn’t make any sense, would it? So this symbol – no: more importantly, it’s meaning – is encoded as U+13163, the 78,180th character in an attempted “univeral alphabet”.

Starting step in the creation of "vulture and asp soup".

To what purpose? So that we can continue to pass messages around in Ancient Egyptian in a form that will continue to be human and machine-readable for as long as is possible. But why? That’s what I imagine our scribe would say. We’re talking about a dead language here: one whose continued study is only justified by an attempt to understand ancient texts that we keep digging up. And he’d be right.

All existing texts written in Ancient Egyptian aren’t encoded in Unicode. They’re penned on rotting papyrus and carved into decaying sandstone walls. Sure, we could transcribe them, but we’d get exactly the same amount of data by transliterating them or using an encoding format for that specific purpose (which I’m sure must exist), and even more data by photographing them. There’s no need to create more documents in this ancient language: just to preserve the existing ones for at least as long as it takes to translate and interpret them. So why the effort to make an encoding system – and an associated font! – to display them?

Two-headed snakes: the original skipping rope.

Don’t get me wrong: I approve. I think Unicode is awesome, and I think that UTF-16 and UTF-8 are fantastic (if slightly hacky) ways to make use of the breadth of Unicode without doubling or quadrupling the amount of memory consumed by current 8-bit documents. I just don’t know how to justify it. All of those bits, just to store information in a language in which we’re producing no new information.

What I’m saying is: I think it’s wonderful that we can now put Egyptian hieroglyphics on the Bodleian Libraries websites. I just don’t know how I’d explain why it’s cool to a time-traveling Egyptian scribe. Y’know; in case I come across one.

My New Pet Hate, part II

A few years ago, I talked about a pet hate of mine that still seems to be prevalent: that is – that when people send me a screenshot, they’ll sometimes send me it in a Word document, for no apparent reason. They could just send me the picture, but instead they send me a Word document containing the picture, thereby increasing the file size, requiring that I have a program capable of viewing Word documents, and making it more-complex for me to extract the picture if I need to use it somewhere. And on top of all of that, it takes longer for them to do it this way: everybody loses!

Today, I saw somebody take the abuse of screenshots to a whole new level. My first clue that something was amiss was when the email arrived in my Inbox with a 300K TIFF file in it. “Well, at least it’s not a Word document,” I thought. And I was right. It was something more convoluted than that.

My only explanation for the contents of the file is as follows:

  1. Print Screen. The user took the screenshot using their Print Screen key. So far, so good. They captured their whole screen, rather than just what they were trying to show me, but we’ll let that pass.
  2. Open Paint. The user opened Paint. At this point, they could have pasted, saved, and emailed the file to me, and still been doing perfectly well. But they didn’t.
  3. Resize canvas. The user expanded the canvas to an enormous size. Perhaps they didn’t know that this would be done automatically, if required. Or maybe they thought that I could do with a lot of white space in which to make notes on their screengrab.
  4. Paste and reposition. The user pasted the screenshot into the Paint document, and positioned it near the centre, making sure to leave as much whitespace as possible. Y’know, in case I was running out of it on my computer. They could still at this point have just saved the file and emailed it to me, and I wouldn’t have complained.
  5. Print Screen again. For some reason, the user pressed Print Screen again at this point, thereby taking a screenshot of themselves manipulating a screenshot that they’d already taken. Maybe the user has recently watched Inception, and decided that “a screenshot within a screenshot” was more likely to make an impact on me. We need to go deeper!
  6. Open Photoshop. Paint obviously wasn’t going to cut it: it was time for a bigger graphics program. The user opened up Photoshop (waiting for a few minutes while this beast of a program warmed up).
  7. Create a new document and paste again. Now the user had Photoshop open, containing a picture of Paint being used to display an (oversized) screenshot of what they wanted to show me.
  8. Crop. This was a good idea. If the user had cropped the image all the way back down to the screenshot, I might not even have worked out what they were doing. Sadly, they didn’t. They cropped off Paint’s title bar and half of its toolbar. Then they added another few layers of whitespace to the bottom and right, just to be really sure.
  9. Save as a TIFF. They could have saved as a PNG. Or a GIF. Even a JPEG. They could have saved as a PSD. But no, for some reason, an uncompressed TIFF was the way forwards.
I N C E P T I O N. A screenshot of a screenshot within a screenshot.

Back in 2009, I predicted that Windows Vista/7’s new “Snipping Tool”, which finally brought screen captures to the level of more-competent operating systems, would see the end of this kind of nonsense. Unfortunately, Windows XP remains the standard at my workplace, so I doubt that this’ll be the last time that I see “matryoshka screenshots”.

A Small World Conspiracy

I keep getting caught up on small world coincidences, since I started working at the Bodleian Library last week. I know about selective biases, of course, and I’ve always said that coincidences happen nine times out of ten, but this is really starting to feel like some kind of amazing conspiracy that I’ve somehow wandered into.

The most recent chain of connected coincidences is also probably the most impressive. But to explain it, I’ll need to take you back in time by almost three years. Back in the summer of 2008, I went to BiCon for the second time, accompanied by Claire and Matt P. Among the various other things we got up to, we met a young lady called Ann (who, if I remember rightly, got along very well with Matt).

This morning I received an email from Ann. It turns out that she works in the Bodleian Libraries: she’s likely to be one of the very users who it’s now my job to provide training and technical support to! She saw my photograph in the newsletter I mentioned in my last blog post and looked me up: small world! I emailed back, suggesting that we get together for a drink after work, and she agreed: great! She also asked if she could bring a friend along, a colleague from the library. Sure, I said, sounds good.

This lunchtime I sorted out some of my holiday entitlement for the rest of this academic year. I booked off a few days for a Three Rings “code week” in the summer, and a couple of days around the time that I’ll be moving house next month. One of these days clashed with a meeting that I’d had planned with the Web/Digital Officer of one of the libraries (I’m doing a grand tour of many of the libraries that comprise the Bodleian, in order to meet all the relevant people), so I sent an email to this staff member to ask if we could reschedule our meeting to another time.

“Okay,” they said, “But I think I’m meeting you in the pub in 90 minutes anyway…”

It turns out that the person whose meeting I’ve asked to reschedule is the friend of the person who recognised me from the staff newsletter, having originally met me three years ago. Out of all of the people (I’m not sure how many exactly – it’s probably in the staff handbook I haven’t read yet – but I’ll bet it’s a lot) that are employed by this, the largest university library in the UK, what are the odds?

The Final Hours

With all of the rush and busyness of this last week, wrapping up a great number of projects, it’s been easy to forget that these are my very final days as an employee of SmartData. As I mentioned last month, I’m soon to start a new job with the Bodleian Library here in Oxford, and my time with SmartData must come to an end.

This, then, is my last day. It crept up on me. In a teleconference with my boss and with the representatives of a client, today (a regular weekly “check in” on a project I’ve been involved with for some time now), we came to the point in the call where we would set an agenda for the next meeting. It took me a moment to remember that I won’t be at the next meeting, and I had to stop myself from saying “Speak to you then!”

In accordance with tradition, we SmartData boys should knock off early this afternoon and go down to the pub to “see me off”. But, of course, I’m not with the rest of the SmartData boys – they’re back in Aberystwyth and I’m working remotely from here on Earth. Instead, I shall try to arrange to visit them – perhaps on one of the upcoming long weekends – and we can go out for our traditional “goodbye pint” then.

I shall be knocking off early today, though! There’s nothing like taking a few days off between jobs, and what I’m doing… is nothing like taking a few days off between jobs. My weekend will be spent in Lancaster at the North-West Regional Conference of Samaritans branches, representing Three Rings. Three Rings now represents the rota management interests of over half of the branches in the North-West of England (and getting-close to half around the UK and Ireland in general), so I managed to wing myself an invitation to go and show the remaining 47% what they’re missing! Then it’s back down here in time to start my new job on Monday morning!

It’s a good job that I’m of the disposition that would rather be busy than bored!

On This Day in 2002 (New Job!)

This will be the first time I’ve ever written an On This Day post where I haven’t been able to link back to a blog post that I actually wrote in the year in question. That’s because, in 2002, I was “between blogs”: the only thing I wrote about online that I still have a copy of was the imminent re-launch of AvAngel.com, my vanity site at the time. In that post, however, I did mention that I’d re-written my CV, which was relevant to what was going on in my life in March 2002…

Looking Back

On this day in 2002, I first began working for SmartData, my primary employer for the last nine years. A few months earlier, Reb – my girlfriend whom I’d moved in with in 2001 – and I had broken up, and I’d recently found the opportunity to visit Aberystwyth and visit friends there (the trip during which I first met Claire, although we didn’t get together until a little later). On that same trip to Aber, I also met Simon, who at that point had recently accepted a voluntary redundancy from the Rural Studies department of the University and was getting started with the launch of his software company, SmartData. He’d recently landed a contract with the National Dairy Farm Assured Scheme and needed an extra pair of hands on board to help out with it.

Sorting out premises was coming along somewhat slower than he’d planned, though. As part of the SpinOut Wales scheme, SmartData had been offered cheap accommodation in a University-owned building, but they were dragging their feet with the paperwork. On our first day working together, Simon and I crammed into his tiny home office, shoulder-to-shoulder, to hack code together. The arrangement didn’t last long before we got sick of it, and we “moved in” to the room (that would eventually be legitimately ours) at Peithyll, a former farmhouse in the village of Capel Dewi, near Aberystwyth.

The entrance to Peithyll, where SmartData established itself for much of the first six years of its life. It was quite a cycle to get out there every day, but in the summer it made for a great office: not many people can sit at their desk and watch red kites hunting outside, or go for a lunchtime walk up a hill with a picnic.

Over the last nine years since, as the company has grown, I’ve always felt like a core part of it, shaping it’s direction. As we transitioned from developing primarily desktop applications to primarily web-based applications, and as we switched from mostly proprietary technologies to mostly open-source technologies, I was pointing the way. By working with a wide variety of different clients, I’ve learned a great deal about a number of different sectors that I’d never dreamed I’d come into contact with: farm assurance schemes, legal processes, genetic testing, human resource allocation, cinema and theatre, and more. It’s been a wonderfully broad and interesting experience.

Looking Forward

When I began making plans to move to Oxford, I initially anticipated that I’d need to find work over here. But Simon stressed that my presence was important to SmartData, and offered to allow me to work remotely, from home, which is most of what I’ve been doing for the last year or so. Thanks to the miracles of modern technology, this has worked reasonably well: VoIP phones keep us in touch, tunneling and virtual networks allow us to work as if we were all in the same location, and webcams help us feel like we’re not quite so far from one another.

But this wasn’t to be a permanent solution: just a way to allow me to keep contributing to SmartData for as long as possible. Last week, I was offered and accepted a new job with a new employer, here in Oxford.  Starting in April, I’ll be managing the administration and the ongoing development of the website of the Bodleian Libraries, the deposit library associated with Oxford University.

My new office, right in the heart of Oxford. It looks a lot less green, and a lot more prestigious, than Peithyll.

It’s a huge change, going from working as part of a tiny team in a West Wales town to working with hundreds of people at one of the largest employers in Oxford. I’ve no doubt that it’ll take some getting used to: for a start, I’m going to have to get into the habit of getting dressed before I go to work – something I could get away with while working from home and that might even have been tolerated in the office at SmartData, as long as I threw on a towel or something (in fact, I have on more than one occasion taken a shower in the SmartData offices, then sat at my desk, wrapped in towels, until I’d dried off a little).

This feels like a huge turning point in my life: a whole new chapter – or, perhaps the completion of the “turning a page” that moving to Oxford began. My new job is a brand new position, which provides an exciting opportunity to carve a Dan-shaped hole, and I’ll be working with some moderately-exciting technologies on some very exciting projects. I’m sure I’ll have more to say once I’m settled in, but for now I’ll just say “Squeee!” and be done with it.

Oh: and for those of you who follow such things, you’ll note that Matt P has just announced his new job, too. Although he’s a sloppy blogger: he’s actually been working there for a little while already.

This blog post is part of the On This Day series, in which Dan periodically looks back on years gone by.

The Week of Balls

Early this week, I’ve spent quite a bit of time knee deep in the guts of Phusion Passenger (which remains one of the best deployment strategies for Rack applications, in my mind), trying to work out why a particular application I’d been working on wouldn’t deploy properly after a few upgrades and optimisations on the development server. Ultimately, I found the problem, but for a few hours there there I thought I was losing my mind.

This lunchtime, I decided to pull out all of my instant messenger logs (being out of the office, my co-workers at SmartData and I do a lot of talking via an IM system). I’d had a hunch that, so far this week, “balls” would be amongst my most-frequently typed words, chiefly uttered as yet another hypothesis about why the development server wasn’t behaving itself was blown out of the water. A few regular expressions (to strip it down to just the words I typed) and a run through a word-counter, and I had some results!

Here’s my top words of the work week so far:

Position Word(s)
1 – 18 the, to, I, a, it, that, of, in, and, on, but, have, what, is, you, just, so, for
Positions 1 through 18 contain some of the most-common conjunctions and pronouns that I use on a day-to-day basis, as well as some common verbs. Nothing surprising there. So far, so good.
19 Rails
Between the projects I’ve been involved with and those my colleagues are working on, there’s been a lot of discussion about (Ruby on) Rails around the office so far this week.
20 IPN, do
One of the projects I’ve been working on this week has used a payment gateway with an Instant Payment Notification service, so it’s not surprising that “IPN” appeared in the top 20, too…
22 was, this
24 my, know, at
27 up, don’t
Over 50% of “don’t”s were immediately followed by “know”: Monday was one of those days.
29 I’m
30 yeah, be, [name of troublesome web app]
Not unexpectedly, the name of the project that caused so much confusion earlier this week came up more than a little.
33 there, one, if
36 we, see, problem, get balls, back, all
These seven words never all appeared in a sentence together, but I sort of wish that they had. There’s the key word – balls – apparently the joint 36th most-used word by me between Monday morning and Wednesday lunchtime.

Other common words this week so-far included “jQuery“, that great JavaScript library (there was some discussion about how we can best make use of the new features provided by version 1.5), “payment” (again; a lot of talk of payment processing, this week), “means” (mostly where I was explaining the results of my investigations into the troublesome server), “tried” (a disappointing-sounding word), “error” (I saw a few of those, to be sure!), and “somehow” (not a reassuring thing to catch yourself saying).

Also pretty common this week was “boiler”, as I explained to my workmates the saga of the boiler at my house, which broke down at the weekend, leaving us with no hot water nor heating until it was repaired on Tuesday. On the upside, I did get to poke around inside the boiler while the repairman was taking it to bits, and learned all kinds of fascinating things about the way that they work. So, a silver lining, there.

Bits of our boiler: the hip bone's connected to the... leg bone.

With the boiler fixed at home, and the development server fixed at work, it finally feels like this week’s turning into the right kind of week. But for a while there, it didn’t look certain!

Hectic (so let’s look at Paul, instead of writing a proper blog post)

Between SmartData work, Three Rings work, freelance work, strange new bits of voluntary work, and the rapidly-looming wedding between Ruth & JTA (along with handling all of the crises that come with that, like the two mentioned on the wedding blog and the threat of rail strike action on the weekend of the event, which may affect the travel plans of guests from Aberystwyth), things are a little hectic here on Earth. And I’m sure that I’ve not even got it the worst.

So in order to distract myself from it during this 5-minute moment-to-breathe, I’d like to share with you some photos on the subject of “living with Paul“. As usual, click on a picture for a larger version.

Paul – Single Lemon

Our shopping trips have become in different ways both more and less organised, thanks to Paul (seen here posing under a “single lemon” sign). More organised in that Paul does a sterling job of making sure that our shopping list whiteboard is up-to-date, and less organised in that we’re even less likely to comply with it… not least because it’s cute the way that his little head explodes when we deliberately and maliciously make minor deviations in our shopping plans.

Paul’s current status, according to WALL-E.

Well-known as somebody who outright rejects Twitter, Facebook and the like, Paul’s come up with his own mechanism for sharing his current status with those he cares about: the low-tech alternative – note cards. Held up by a WALL-E figurine at the door to his room, Paul keeps us up-to-date with a series of about half a dozen pre-written messages that cycle in accordance with what he’s up to at any given time. They’re quickly out of date (right now, it says “In. Please wave.” but he’s clearly not here), limited in length, and mundane, just like the vast majority of Twitter posts… but at least he’s not attempting to subject the world to them. I’m still not sure, though, whether this tiny protest against social networking (if that’s what it is) is sheer genius, complete insanity, or perhaps both.

Yorkshire pudding!

Paul is now officially in charge of all Yorkshire pudding production on Earth, after we enjoyed this gargantuan beast.

Right: my break’s over and I need to get back to my mountain of work. If you’ve not had your fill of Paul yet, then I point you in the direction of a video he’s just uploaded to YouTube

Roman Typesetters

When ancient Roman typesetters or web designers were showcasing a design, and didn’t want the content of the (dummy) text on their mock-ups to distract the client… what did they use for their lorem ipsum text?

These are the kinds of things that bother me most when I’m doing typographic layout. That, and Internet Explorer’s consistently fucked-up interpretation of CSS.