Ten things budding software entrepreneurs should know
By Graeme Frost, CEO Brilliant Software
The first in a series of articles aimed at helping budding software entrepreneurs avoid some of the pitfalls that are out there waiting for you!
Graeme Frost has previously been the CEO of two software start-ups, one of which grew to $NZ30m annual revenues and was listed on the London Stock Exchange AIM market. Brilliant Software is a custom development company specialising in developing world class software for New Zealand start-ups. Further details are available at www.brilliantsoftware.co.nz Brilliant Software is resident at the Icehouse.
As the saying goes “those who fail to understand the lessons of history are doomed to repeat them”. So the first thing an aspiring software entrepreneur really needs to do is to read, talk and learn from the experiences of others. And not the PR legend, but the real dynamics behind great software successes – and failures.
As a case in point, the legend is that Bill Gates founded the Microsoft Empire based on his ‘invention’ of the MS-DOS operating system. But history tells us that Gates originally licenced the MS-DOS operating system to IBM, having just quietly acquired the code for it from one Tim Paterson, the initial developer, for $50,000. While $50,000 would have seemed a lot at the time, the licencing to IBM of MS-DOS was the foundation on which the Microsoft company fortunes was built. Microsoft peaked at a market cap of $616 billion in 1999.
The lessons a budding entrepreneur can take from Microsoft are many. First, it’s just as much about being in the right place at the right time as it is about the software itself. Second, it’s very often not the inventor or developer of the software that reaps the benefits, all too often they become just a footnote in software history. And, third, qualities such as determination, drive, persistence – and blind luck – are heavy factors is entrepreneurial success. And if we consider Facebook, perhaps there are other less savoury characteristics that I’ll leave it to the reader to assess and judge.
I don’t want to put you off though, the rewards can be gigantic and nearly every successful software company started where you are. And for a lot of very good reasons we are ideally placed in New Zealand to develop world leading software, and from an enabling technology perspective, your timing is great.
There may be obstacles in the way but if you know, having properly researched the market, that there is a huge worldwide opportunity then you should absolutely go for it. Software companies can definitely be rocket ships – and once they are in orbit it’s a great ride. The trick is overcoming gravity.
Ten things you should know!
- Developing world class software is an iterative learning process. Even if you are a really clever bugger – you won’t get it 100% right first time. Not even close. Your goal should be to get something out – really to start the iterative process. This is called a minimal viable product. You need to get your vision at least partially developed so that others can understand it. Then you can start learning. If it is business software you can start demonstrating it and getting feedback. If it is personal software – you can give away free “alpha” or “beta” copies (code names for software that isn’t finished and doesn’t work proper) and then watch closely how people interact with it. One thing you will learn is that some of your seemingly great ideas are not as highly valued in the market – and you can put them on the back burner before you invest in them. New, better ideas will take priority.
- Software as a Service (Saas) is the best thing that ever happened to software entrepreneurs. It means that you can let people from anywhere in the world try the software, and if they decide to use it the just have to pay a monthly amount. Not having to commit to a big licence fee means that it’s a small decision and therefore can be made relatively quickly. Because there is only one copy of the software you can make changes and fix problems really quickly. You can trial new ideas and easily track how users interact with the software. If it doesn’t work the way you hoped you can change it back. Remembering the goal is to learn – you can learn things real quick, and put those learnings into place just a quickly – so you can learn some more! You may meet the occasional old guy who doesn’t want to have their valuable data “in the cloud” – you need to explain to them that with modern security it is much safer there than in their office. Refer to it as military grade security and that will do the trick!
- Think global from day 1. New Zealand is a fabulous market to learn from, but that is pretty much it. If your business plan says New Zealand is quite a good market for you – you probably aren’t thinking big enough and chances are someone who has launched a rocket ship somewhere in the world will eat your lunch. Your business plan should have you being a gazillionaire within 5 years or you probably aren’t aiming high enough. It will take longer – but if you don’t aim the rocket ship on a high trajectory it hasn’t got a hope of getting into orbit. Don’t think, though, that because your software is on the web that you have therefore launched it worldwide. Technically you have – but nobody knows – so you haven’t. They won’t find it without you somehow marketing it to them.
- Don’t underestimate New Zealand as a place to learn though. It is perfect. Particularly for business software it is a great market to learn from because the companies are small enough that you can talk to people who know how their whole company works. In the bigger markets the companies are so big – no one person has that degree of understanding. And because the New Zealand market is so small for them too they need to manage their business tightly to survive. This makes them very receptive to time and cost saving innovations. When it comes to implementing your software the companies are small and nimble enough to make the changes often – ideal for your learning. You want to have a pretty solid proposition before putting it in front of the big companies in the big markets.
- It’s your job to innovate – not your customers! Listen closely to your customers’ problems but not so much to their solutions. They may have what seems to them as a really simple way to address their issue, but it may well be a patch-up and a little more thought may make it more eloquent and quite possibly the seed for a whole new idea! You also need to be prepared to draw the line. Customers will want the software to make the coffee if they can sucker you into it (Very hard to do unless you are programming a coffee machine!) While your early prospects and customers are a very valuable source of great ideas – validate every idea to make sure the rest of the market really needs it as well. Otherwise politely tell them that you will put it down for a future release and then wait until you start hearing the request often.
- There is no finishing Line. Get used to the idea that your competitors can see exactly what you are doing. Daily. The only compensation is that you can also see what they are doing – but if you are that clever bugger that won’t be very interesting! You need to keep innovating at pace. If you think you are a one trick pony – don’t even start. But it is amazing how when you see your great ideas up and running and you are out in the market talking to people, the creative juices keep flowing. Remember too, that your other edge is your ability to execute. Millions of people have great ideas. You are the one making it happen.
- Most developers are weirdos. I can say this with confidence because I have worked with them for longer than I care to report. They can spend days, weeks or even months down a hole trying to solve a problem that only really exists in their mind. When you ask them what the issue is they can only explain it in technobabble. Even another weirdo can find it impossible to understand. They are uncommercial and resent pressure. They seem to think that they are some bloody Picasso and they shouldn’t be rushed. Software is a science not an art. If you insist on getting a promised delivery date an experienced weirdo will make it as far away as possible. That may be ok if they then delivered. But they don’t. Under promise and under-deliver more is the norm. An inexperienced weirdo will stupidly tell you how long it should really take – and then under-deliver horribly! There are exceptions however! I call non weirdo developers “super-stars”, because that what they are. One super-star is worth 10 to 20 or more weirdos, but there are very few superstars in the world. They are difficult to spot because many weirdos think they are superstars. But if you can find one grab them with both hands. Not only will you deliver each iteration faster, they will provide a lot of additional ideas and smarts to make you software even cooler.
- If you can’t find a superstar and don’t want to manage wierdos (I can understand that!), you may decide to engage a software development company. This can be very successful but you need to have a very special trust based relationship with them. The very nature of iterative process means that there can’t be a fixed price fixed specification approach. If you do that they will either swamp you with change requests (for extra charges) or deliver very mediocre software and you will be disappointed. Your software partner needs to be focused on helping you deliver world class software, but still with value for money at the forefront. The ideal software development partner will have developed packaged SaaS software for world markets before and will contribute heavily with additional ideas for your project. SaaS software is architected quite differently than traditional software, and must be scalable up from your first customer to many thousands of customers. They must also be able to be very reactive. You need to learn at speed and they need to iterate at speed.
- First the sale, then the delivery. Occasionally the really huge opportunity that will really boost the rocket ship will come along but you absolutely need to make promises that you don’t know how the hell your developers are going to deliver. If you are a true entrepreneur you will just commit anyway (and you must). This is when your super stars come into their own – because will put in the hours to make the impossible happen. They love doing that! A really good software development partner will make it happen also. If you have wierdos – start worrying.
- Funding is going to be an issue. A big one. If you have money in the bank to cover you for the foreseeable future, you have to wonder if you are going hard enough. Because developing world class software is an iterative process it will cost you much more than you ever thought. The best investors before you have revenues are friends and family. While you need to give them a fair share of the company (a la the initial trade me investors), if you bring in a venture capitalist early you will most likely be eaten for breakfast. A bit initially – but far more down the track when you need more money. VC’s understand that rocket ships never leave the launching pad smoothly and their goal is to take advantage of this reality and have a controlling interest by the time it really takes off.
Building a global software company is a lot of fun – you have to be up for a lot of travel (embrace it!), and probably relocate into your best market. But the rewards can be life changing and the ride is fantastic.
Certainly a far better life than working for some corporate where a good day is measured by how many emails you have left in your inbox! And you won’t die wondering!