The One Last Job Fallacy

2 minute read

Today I found myself falling for a common problem in bioinformatics. It’s probably common in other data sciencey roles where you have a combination of reports, reading, coding and long, computationally expensive jobs to run. I call it the One Last Job Fallacy. It goes something like this.

Suppose you’re in a bioinformatics role or similar and as part of this you have some code to run that takes a while. Maybe it runs on your laptop or desktop, but chances are it runs in some kind of high performance computing cluster. It’s an intensive job so sometimes it sits in the queue for a few hours, but even when it runs straight away, it still takes hours or days to complete. It won’t be your only one either - you have lots of these types of jobs to run all the time, and you need and want to run them - they generate the results you need for further analysis, presentations, reports, papers etc. So far, so normal.

The issue is that you also have all those same reports to write, papers to read, presentations to make, but for past projects. You have deadlines to meet and you should really crack on with them. But the jobs on the server take so long to run, that it just makes sense to spend a few more minutes getting a new job to work, and submitting a different version with slightly altered parameters, or running a secondary analysis that could make it into the supplementary, maybe. Only a few minutes stretches into a few hours, or even a few days of debugging scripts, realising extra analyses that need to be done, resubmitting new jobs after seeing interim results which showed you needed different parameters etc. And now you haven’t done those reports, presentations and more because you’re always doing one last job. Like Nic Cage and almost every other car thief in Gone in 60 Seconds, we’re back for one last job.

There’s no fancy solution the the One Last Job Fallacy (or at least I don’t have one). You just have to recognise it’s happening, remind yourself that there will always be another job, and start doing non-coding things. You can set extra restraints on yourself like sticking to coding only in the morning, but they all still rely in some way on realising you’re getting trapped and using some willpower to escape it.