Software and application development is a complex process. A single project may involve tens or even hundreds of people spread across dozens of teams and even multiple continents.
Like any major discipline accounting for millions of jobs, software development has many different methodologies and techniques, ranging from Agile development to Waterfall and Prototyping.
However there is one area in which little has changed over the past two decades, software development projects have always been, and continue to be, ‘discreet‘ projects, following a set cycle of develop, sell, develop, sell. In recent years some companies have been rethinking this approach.
From Desktop App to Web App
Google is probably the biggest online brand out there, and with their suite of office-like products, they have created a brand new market for applications. The main difference between Google Docs and Microsoft office however, has less to do with their feature sets, or storage models and far more to do with the development of these products.
For many years Microsoft has shipped a new version of its products every three or five years, adding features and generating vast sales as businesses scramble to get the latest version. Google on the other hand have, despite not charging in the first place, yet to release a new ‘edition‘ of their Docs. They’ve added features, altered the UI and even changed the way they’re accessed, but there is still only one version of Google Docs.
The Shift in Development
Moving from a versioned development cycle to a version-less development cycle poses a number of issues that need to be addressed, however the most important issues are both why, as web developers, we should be looking to the version-less cycle, and how we can still make money in the process.
Like any change in how we work, moving to version-less development takes time both to get used to and to reap the benefits of, however it is a tried and tested method for developing online applications and any developer should seriously consider why they’d choose a versioned development model over a version-less one.
Why Move to a Version-less Cycle
First, let me clarify, I’m not suggesting that an entire industry has been working the wrong way for two decades, that would be, to put it mildly, inane. Rather what I am proposing is that rather than follow the crowd, when developing web applications and websites we should be aware of how the past influences both our own methodologies and the expectations of our clients.
When developing for the desktop there are numerous issues to overcome, the code resides on the users machine and as such when we need to push out an update we’ve got to persuade the user to install the update, or at least manage to get the update onto their computer.
With a web application this isn’t an issue, the code is on our servers, and whilst that means that we have to pay for the application to run, it also frees us up to push updates as often as we want, without needing to wait for our users to connect to the internet or agree to restart the program.
The critical component of this argument is that by moving to a version-less development cycle we are able to continually update and improve the user experience as well as the functions available to users, we have the ability to continually improve the product. This in turn provides us with a good basis for the next issue, or opportunity, that arrises with version-less development.
How to Make Money Without New Releases
Many readers may well be wondering how they would make money, and why they’d want to try to make money, with a version-less development model. The answer is simple, the majority of successful web applications generate profits, not revenues, profits, of around 70%, far more than any of the more traditional software development companies can even dream of.
The reason version-less development can be so profitable is because of the pricing model that it is most often coupled with. Instead of asking users to spend hundreds or thousands of pounds on each release, the company instead asks users to spend a fraction of the amount each month. Once a user has both learnt the new software and migrated their data over, a state of ‘lock-in’ is achieved, meaning that the cost of switching is now the most important cost to the user, rather than the monthly billing.
Whilst web applications may be the ‘next big thing‘, the majority of designers and developers will still be working on fairly regular, HTML, CSS based websites. There may be a store or admin panel attached, but for the most part, many readers will be wondering how version-less development can apply to the average developer on the web.
Imagine for a moment you are a website owner, you want a new site and you are looking around at companies to create it for you. You have a vague idea of what you would like but your instincts tell you not to let that slip or you’ll end up financing the next Facebook or twitter. You draw up a complete brief and send it to a few friends and local agencies you think would be able to meet your needs, then you wait for a reply.
The problem with this process is that it assumes a website to be a standard application, the only updates ever utilized by the client is often the content management system, and because they paid so much upfront we often neglect to help them understand how we could be of service throughout the life of the site, rather than waiting for a few years until they decide to redesign.
If instead clients where offered the option to have regular updates, and consultations, regarding their site’s design, the performance of their site and any other industry trends which might be relevant to it – not to mention the occasional brief re-working of their content to fit the design – it may just prove the basis for a longer, more profitable relationship for both sides.
At first this may seem like a crazy idea, but if executed successfully, it would not only transform your revenue stream but also provide far more ongoing work, something both agencies and freelancers alike always seem happy to accept.
What do you think? :)