Creating a custom web application is a big investment for a small business. Getting it done requires a lot of work, starting with discussions about needs and specifications and followed by coding, demos and adjustments. It’s tempting to say that everything is be over and done after all this and that nobody should need to touch that piece of software again. Consulting engagement are also often structured this way and not as a retainer, but that’s a flawed approach: software is a living thing that needs to be adapted again and again to stay relevant.
Here are some of the reasons why you need ongoing investments in your software to get the best out of it and keep your clients happy for many years:
New features are needed
You may think that you’ll never need a new feature, but something always comes up sooner or later:
- A new social network or other application comes out and you must absolutely support it for marketing purpose or for your users.
- New law and regulation comes out, forcing you to revise how taxes and rates and calculated.
- An existing tool you were using closes down, for example your payment processor, forcing you to move to another one.
- You’re doing a new promotion, special offer or program and need to add something to support it.
Those reasons may not be related directly to the core functionally of your software, but in most cases you won’t have any choice if you want the business to keep working it.
Technology keeps moving
Technology keeps progressing at a neck-breaking speed. Less than 5 years ago, few people had a smartphone: the first iPhone with was launched in 2007, and it had a tiny screen by today’s standards. Tablets are even newer: the first iPad was launched in 2010, and the first Android version made for tablets in 2011. But right now, you cannot ignore mobile if you’re building web applications: users will access it using their mobile devices whether you like it or not.
What’s going to be the next big thing in the next five years? Watches? Virtual reality? It’s pretty hard to plan for things that don’t exist yet, but when they happen your software may need to be adapted to it as users ask for it.
Servers are updated
All web applications must runs on web servers. Those servers have their own software, and those are also updated for security reasons and to add new features. Over time, this may also require modifying your web application as older versions of the software they are running on are no longer supported. Staying on the old software is not a very good option: over time, it stops being updated so it will be more and more insecure as time goes it. It’s not worth betting the privacy of your business and your customers on old technology.
New browser versions comes out
Before, web browsers were updated slowly and a new version was a big thing. Nowadays, browsers are automatically updated with the newest features every day. It’s rare, but a small update can break your site even if it was done well if a browser changes a small detail in a feature or introduces a bug. The web standards also evolve all the time, and browsers adapt to those changes: new features being added all the time and old ones are no longer supported. Over time, those needs to be adapted so the application keeps working correctly on all browsers and devices.
For all those reasons, any application needs to be cared for during its lifetime to make sure it stays healthy. If you’re not ready to make that kind of investment, an off-the-shelf application that requires less investment but that is harder to customize may be the better way to go. It will also need to be maintained and may not have 100% of what you need, but it is less work because others will be in charge of evolving the core of the application. But if you want to have a custom application and take care of it, you need to be ready to do what’s needed.