I am one of those people that doesn't watch much television. Besides live sport events (mainly US football), I find it somewhat a waste of time. I was at a recent party with some friends and they were all talking about the 'hit' show 'The Walking Dead', a show about how humans are surviving a zombie apocalypse. The show is pretty much filled with how many ways to kill zombies and then how to kill humans who piss you off. To me this 'investment' of my time to consume such a show in order to be entertained and then in turn more time socializing about it, doesn't really give me the ROI I am looking for. I mean life is short right? I don't have time for such nonsense, I would much rather write some code or spend my time reading. Novels are not my thing, so I fill up my reading with lots of small online articles that will ultimately help me in some way. Of course being a developer, I read lots of technical based articles, but the articles that I absolutely can't get enough of, are ones that can be applied across all aspects of my personal and professional life. Come on what's better then a 10 minute read that you can then apply to everything you do. That is the ROI I am looking for.
What does all of this talk about zombies have to do with 'sunk cost fallacy' and how you write code. Well so glad you asked. You may not have heard of the term 'sunk cost fallacy' before, so I strongly urge that you read this fascinating article that is rooted in the topic of decision making. What fascinated me the most was realizing that this concept has controlled major life decisions of mine in a negative way, without even realizing it. Talk about being a zombie. How could I let this happen.
Take for example one of many 'ah-hah' moments from the article:
Let’s pretend you have three projects going on. You have $1,000 invested in one project, $5,000 invested in another, and $25,000 invested in the third. I tell you that you have to eliminate two of the projects, and only focus on one.
Which do you choose?
Well, if you’re like most people, you’d answer this question without even asking for more information. You don’t even know the expected value (EV) of each project or your level of enjoyment from them. Not only would most people answer the question with no hesitation, pretty much everyone would choose the project they’d invested $25k in, even if the expected value or happiness from the other projects were higher. Sunk cost bias has enormous control over most people’s minds, influencing them to make incredibly flawed decisions.
The definition of a 'sunk cost' is a cost that has already been incurred and cannot be recovered. So, why is this important? So let's say we invested the past 2 months in developing the next killer application, but then we realize that it has been architected completely wrong or that it has severe usability issues. Let's say the 2 months equals around $10,000 in time and money. What would you say the "value" we should put on those costs will be in factoring our decision for moving forward? You would probably say $10,000. Right? Why would it not be? Well the value we should be putting on this 'sunk cost' should really be $0. That's right - zero dollars - as in nothing, zilch, nada, zippo. Stop and read this again until it sinks in. Our brain is so wired that we believe the time or money we already have invested into something, should be factored into our current decision making. This is flawed logic.
How could this be true? Wouldn't it cost more if I have to throw away all of that precious code I have been working on tirelessly over the past two months and start over? Think of all of the Red Bull I wasted. What about the weekends I spent coding instead of going to a party talking about the last 'Walking Dead' show I never watched. But my deadline is in another 4 weeks, I can't possibly throw it away and start over. Pretty painful to think about isn't it?
Now take a deep breath - clear you mind - go sit on a yoga mat if you have to for 30 minutes. Now let's think about this another way. What will be the cost of your app being released and no one buys it because it is not even usable? Or worse yet, a large company decided to deploy it to 1000's of users and all of them report it has killed their productivity or their inventory database is now corrupt. This in turn causes the company who just bought your app to lose money, which in turn costs you your reputation, future sales, not to mention time spent dealing with an angry executives and fixing the problems that you should have fixed in the first place. Pretty painful to think about isn't it?
So what decision would have been a better way to go. Well you be the judge - do the math. Don't have your emotion be any part of the equation. Your emotions about your 'investment' is the part of your brain that does the decision making process for you without you even knowing about it. Basically turning you into zombie. If you eliminate this from your equation, you will be able to realize the true costs and more importantly the expected value you will ultimately get from an alternative decision. Don't let your choices that you have made in the past dictate and be control of the choices you need to make in the present. Whatever you have spent prior to today is gone - it cannot be recovered - it cannot be unearthed from the grave. Don't let your app get sunk by being a zombie coder.