My wife and I seem to be locked in an endless struggle with the dirty dishes. We try to split chores equally (although the more grubby tasks always seem to fall to me) so tend to alternate washing up responsibilities from one day to the next. No we don't have a dishwasher, so this leads to inevitable to discussions of the ilk "Who's turn to do the washing up is it?" and comments such as "I thought it was your day :("
There are various things that complicate this - sometimes we skip days because we're lazy, sometimes we're not there, sometimes we trade turns for favours and so on. The thing that really annoys me above all else though is a very devious activity whereby you take your turn early, for example by doing the washing up at lunchtime while the other is out at work, (sometimes unfairly) reducing the workload on their part.
As the opposite pair in this arrangement this can be galling, especially as our pregnancy progresses and leaving dishes to sit overnight can be met by apoplectic rage. You get home to find that - surprise! - your turn has come around sooner than expected and you get the treat of doing the washing up yet again.
"Overall the system is improved when everyone involved is essentially racing to do the washing up first."
But is this really such a bad thing? Well for one thing, if both of us starting doing the washing up as frequently as possible, say, right after eating with them, the house would be clean and clear of dishes for the longest amount of time. Not only that but you'd only ever end up washing a small amount each time and generally only need to wash up things that you actually used. Not only that, you have more dishes at your disposal ready for eating.
Of course, there are certain factors that need to be mitigated such as differing schedules, tastes and penchant for curries that will affect how the workload divides up but these will balance themselves out over time. Overall the system is improved when everyone involved is essentially racing to do the washing up first.
So why, I hear you ask, am I wittering on about domestics on my software blog? Well as developers we can learn a lot from this scenario about dealing with bugs and issues in our code. Gamification is a whole topic in itself, but we should all be striving to tackle bugs, stories and technical debt when they are as small as possible, and ideally as soon as they are created.
"In software - as in washing up - tackle issues when they are small, as soon as they arrive and as frequently as possible. Your team will be less stressed and your codebase will be much tidier for more of the time"
We all know this is sound logic, yet all to often we leave this stuff to pile up ad inifitum. It can be difficult to convey to those making the decisions exactly why this is important. Putting everything in terms to analogous household chores is not necessarily going to sway your boss but in this case it does make it painfully obvious why we would want to work in this way, and what the benefits are.
So in software - as in washing up - tackle issues when they are small, as soon as they arrive and as frequently as possible. Your team will be less stressed, your codebase will be much tidier for more of the time. It doesn't really matter who picks up the complex or 'fun' stories, it will balance itself out over time. You'll have more resource available to provide value to your customers, and everyone will feel like they have less on their plate.
Pete is a software consultant, speaker & writer living near London, UK. He started off with C# and Javascript, and nowadays likes to code in Scala. He enjoys running training courses and speaking at conferences. Sometimes he works on OSS, and one time he even finished something.