Researcher as software engineer

When you go into a career in research, you imagine that you’ll spend all your time thinking, reading and coming to know. In fact, whenever anyone talks to you about your job, it’s clear that that’s exactly what they think you do all day: think, learn, gain wisdom.

My experience of my PhD so far has been pretty different to that imagined paradise of dressing-gown-sporting chin scratching. In actual fact, the general pattern has been something like this:

Step 1

Have a meeting with a colleague for an hour about how your super-interesting model should work. Bash through the details, make the regrettable but inevitable simplifications, write down some maths.

Step 2

Spend 22 months configuring UNIX servers; building web interfaces; learning to code in Python, R, Latex and Javascript; setting up a Postgres database and sweating over the various command line tools that come with it; configuring Latex installations; picking integrated development environments, network visualisation software and text editors; learning the intricacies and idiosyncrasies of Web frameworks, Latex packages, Python packages, frameworks for testing, tools for documentation and even blogging sites (you know who you are, wordpress.org), all in a desparate bid to get the results of step 1 working, interactive and documented.

Step 3

Write down the maths you discussed 22 months ago, once in Python, and once again in Latex. This is a five-minute job, depending on how thoroughly you completed step 2.

Step 4

Realise that despite the fact that step 2 is where for all practical purposes all the chin scratching and coming-to-know has taken place, there’s to be no credit given for it whatsoever. The PhD is earned (or otherwise) by the one hour of step 1 you did, and you did that so long ago, that you can’t remember what any of it means anyway.

No, there is nothing gained from those 22 months of toil but the skills you learned in the process.

This is not quite what people have in mind when they talk about learning for its own sake. They’re presumably talking about coming to know a subject for the pure joy, or adding to the sum of human knowledge because that’s a noble aim in itself.

What’s happened to me feels much more like a self-study tutorial in becoming a whizz coder, engineer and software developer. Which is great in itself. But it’s not quite what I signed up for somehow.