All software that has a market will inevitably and inexorably find itself in a race to the bottom with respect to price.
To clarify, if you haven't heard this expression before - all commodities drop in price over time (as rarity disappears) to eventually hit a bottom price per unit. As the skills to write code are now very common and there is effectively no price per unit for production or distribution, the natural floor for any piece of software is basically nothing. Nothing other than time and inclination anyway.
Linechart (image (cc) Andreas Levers)
Don't believe me? Think your bit of software is the exception? Let's look at some big names quickly:
- Windows Server -> Linux (various flavours)
- Windows Desktop -> Ubuntu (specifically)
- MS Office -> Open Office, Google Docs
- Oracle DB -> MySQL / PostgreSQL
- IIS -> Apache, nginx
- MS Visual Studio -> VSE / Eclipse
There are many reasons for this but the one I want to focus on is the commoditisation of software and what the implications are if you build it. Why this is pertinent right now is one of my favourite start ups, XMarks is about to close down. Xmarks was the first cross browser app (to my knowledge) to allow users to synchronise their bookmarks between computers - a great feature for those of us with machines at home and at work.
However in the face of all major browsers now having this feature out of the box and at least one operating system able to do it (Ubuntu) it appears as though they no longer have market position and indeed have no revenue current or likely to arrive in the future.
Software and programming code is extremely malleable, it is often just a novel application of something existing already and even without seeing your code I can at least guess at how you did something in an attempt to implement it myself. This is a lot of the reason why software patents are ridiculous (though that is another post).
So not a great day to be working at Xmarks.
This happens all the time in the software world, so often in fact that we are accustomed to it and have habituated to it. Technology is based on the notion of better, faster, cheaper at every point. The only way to survive is by innovation, brand or value added services, use one channel to fund another.
Having worked for and with businesses that have addressed this exact problem here are my top tips on how to end up at the bottom but still with a revenue stream:
Innovation - be first every time
People will pay for new, and they'll pay to have an edge if it gives them some sort of market benefit. The reason Adobe has been so successful is that they are very good at innovating, so are Oracle in some divisions. This is why PhotoShop in particular is still the jewel in Adobe's crown. As software goes it's hard to replicate and they have some of the brightest developers working on it constantly. Adobe are KNOWN for this piece of software few people think of going anywhere else.
Contrast this with MS Office. Productivity software is dead boring and the innovation has largely stopped (unless you consider new slide transitions in PowerPoint innovative), this has opened the door for Open Office to catch up and become a viable alternative. Similarly Google Docs are now becoming commonplace due to the innovation they brought to the market (edit docs collaboratively from within a web browser).
Being first every time is hard work, it takes a lot of investment but commands the highest returns and guarantees a revenue stream.
If the innovation is slowing or worse, has stopped, it's time to reassess and start dropping price in order to keep your customers happy.
Create a great brand - The Apple approach
Anyone that knows me knows I'm not a big fan of Apple products but I am an admirer of the Apple business under Steve Jobs and their ability to create a technology brand so strong that it is almost unassailable. The Apple business over the last decade hasn't been the most innovative - they haven't needed to be, others made MP3 players, phones and laptops first, even tablets have been around long before Steve delivered them to us this year. What Apple did that no one else did was market the benefits not the features, they made people want their devices and they owned the space in their respective markets by sheer marketing and brand force.
This is a very FMCG style approach that is at odds with most of tech but if you look at any part of FMCG you'll see space that has been crafted out of commodity goods by businesses positioning themselves as "premium brands".
Microsoft did this in the 90s with it's Office suite. How often do you hear documents referred to as "PowerPoints", "Word docs" and "Excel docs"? MS still push this brand heavily as it is worth millions of dollars and in light of little innovation is a good path to revenue in the future.
Deliver service not software
This isn't about going all Cloudy, though it could be part of it. This model embraces the idea that you aren't charging for your software you're charging for your expertise around it. Open Source businesses achieve this well most of the time. A good example is Red Hat who have eaten so heavily into Windows Server licences with their Linux distribution.
Red Hat have a very profitable support division because they provide expert knowledge around Linux that isn't supplied elsewhere. Canonical are following a similar model now they are targeting enterprises.
This is very akin to the Freemium model where your baseline offering is free but if you want additional, useful services in some instances then you pay for it.
My advice is that any new software project starting out should adopt this model. Open Source your code but then be the experts to offer support and consultation around it (who's going to know it better than you? And if someone does, it's time to offer them a job!)
Fake to the left, fund to the right
I'm a data oriented guy and helped start up a business that succeeded at exactly this model. This is very focussed at Web based applications but can extend to mobile and desktop apps too. The notion here is that everytime your users do something with your software it creates data that is worth mining to create insight and can be sold to others (in specific or aggregate fashion).
Google and Facebook are two clear examples of this. Google searches the Web but provides contextual ads, Facebook is the biggest repository of social connectedness and profile information on the planet - a marketers dream - which they'll pay for too.
The critical things with this model are to try and work out beforehand what might be useful information to sell up front (whether through whitepapers, ad space etc) and constantly mine your data for anything new that comes up.
These days it's easy to build, release and market software - there's no physical media or distribution channels to have to worry about so you can just post and go. This raises many interesting challenges for the next generation of software entrepreneurs and the traditional methods of revenue generation (license per seat) are simply not viable any more in most instances.
All software is racing to the bottom in terms of price - the question is, have you planned for that and embraced it or are your fervently telling yourself not to worry, you'll find revenue somewhere.