I can still remember as a child when Duke Nukem 3D came out. It was two years after South Africa did away with apartheid and had become a democracy. The international barriers had come down and the censorship of the old days was no longer there to prevent violent games such as Duke Nukem from reaching our shores. Duke Nukem was the first multiplayer networked game to make it big in South Africa, or at least that was my experience of the whole thing. Every kid that was fortunate enough was able to explore the world of computer gaming in ways never before imagined. Internet Cafe’s were littered with young delinquents just itching to kill each other virtually.
The Duke Nukem success was of course not only limited to South Africa, it was a worldwide sensation so massive that it made the founders profoundly rich. What was to come is widely documented so I won’t delve too much into the whole story. But in a nutshell it would take about 15 years for the team to complete the next Duke Nukem release (known as Duke Nukem Forever) from when development started in 1997. Now there are numerous reasons as to why this was the case but one of the main ones that I have always been fond of is the fact that the project was lead by one of the original creators whom for the first time in his life had the resources to build the game that he felt was worthy. The founder and his team wanted to build the best game the world had ever seen...
They wanted the graphics to be the best, the game play had to be seamless, beautiful, a work of art. It needed all the childish humour and darkness of the originals but only quadrupled this time around. It had to make the previous Duke Nukem success stories look like tiny blimps on much large radar cast by Forever. The problem however was that the pace of technologic evolution. Every time the team completed a module using techniques based on a certain technological limit, the industry would present a new improved technology with better techniques making what they have done look antique in their eyes. The situation was further magnified by the fact that the team had such deep pockets for the first time that they could very well toil on for years-and-years continually rewriting and improving what they have done. And that is just what they did, for years the team would chase perfection never to achieve it. They would get lost in the world of ideas and possibility. Not being an infinite resource pool the project would eventually run out of funds and get declared dead. This led to the rights being purchased by someone else who managed to eventually ship something that was a far cry from a perfect game, but was at least something.
Now software development is an amazing space where one can get to live oneself out in ideas and solutions. However being the problem-solving ideas people that we as keyboard cowboys are, it is very easy to start drifting from one’s original focus of things that need-to-be-done to things that are not deal-breakers but nice-to-haves. Nowhere in the industry is this more magnified than in the life of a tech start-up. Tech start-ups generally have limited resources and cannot afford to have teams that get stuck in the nice-to-have ideas world. They need teams that can identify a critical path possessing of just enough innovation to differentiate one’s product in the marketplace but that won’t exceed the limited budget of the venture. This is a delicate balancing act that over the last few years I have struggled with myself. So I want to share my personal technique for ensuring that there is no mission drift.
Whenever you have to make a feature or design decision, first ask yourself whether what you are doing is a nice-to-have or a must-have. If the answer is that it is a nice-to-have then shelve the idea on the backlog and refocus on items that are deemed to be must-haves. This is an extremely difficult habit to cultivate for both software developers and entrepreneurs alike since both these personality types generally live in the world of ideas and possibilities of which the tech world has too much of. But there is a reason that in excess of 70% of projects and 90% of start-ups fail. Teams need to focus on shipping something out the door that will start to make money before they can allow themselves to be distracted by the nice-to-haves we all like to gravitate to. Unfortunately a tech start-up lives in the world of shrink wrapped software, written just well enough with just enough features to create a market for itself. With time the system will eventually get to grow and evolve into a place for implementing nice-to-haves, but one should never start out a venture by focusing on what would be great...