Summary: Application development is becoming more and more important to the modern business. Your ability to create and deploy applications quickly directly impacts your competitive advantage. But, most businesses can’t afford a team of developers on staff. How can these businesses create the applications they need without breaking the bank?
It’s a growing trend. Application development now plays an important role to the modern business.
A study from Forrester explains, “The software you deploy, and especially the custom software you create, will increasingly be part of your competitive edge.”
As businesses move to the web, those who can innovate quickly and cost-effectively with software will have a competitive advantage.
The problem is, web application development is becoming more complex. It requires knowledge in a variety of areas, such as: security, integration, responsive design, user interface design, backend databases, programming languages, and more. Most businesses can’t afford to bring in a team of developers with skills in every area.
The question: How can you keep up without breaking the bank? How can you create cost-effective applications that drive your business?
1. Always create clear specifications
Too many businesses go into a development project with a rough idea, rather than a clear requirements specification.
This is one of the biggest money-wasters in the development process.
Why? Because the goal isn’t clear. Or, the goal is constantly moving. When your developers don’t know exactly what they’re aiming for, you waste time and money.
“Clearly define what you want up front,” says Brooke McIntyre, Founder of Inked Voices. “Make your requirements as clear and specific as possible. Let your development time be spent building and creating instead of sorting out confusion on what’s wanted.”
2. Get something out, fast
“Every web app is built to solve a problem and the 80/20 rule is in effect,” says Eric Scott, CEO of Dolphin Micro Custom Software. “Only 20% of the features, solve 80% of the problem. Identify them, prototype them, and start testing them in the real world with real users as fast as you can. The sooner you get feedback on your 20%, the sooner you’ll know if you picked the right 20%, and what else you need to add to deliver high value with the software.”
It’s the common problem of trying to build everything perfectly before releasing the application. When the users finally get the completed app, it’s not what they wanted. What’s the answer? Figure out the bare minimum you need, and get it out to the users.
“Building a Minimum Viable Product (MVP) first has been the main key to success for us,” says Michael Riley, Co-Founder of Boxter. “Building the bare minimum to validate an app idea costs a fraction, and gives you valuable feedback sooner. This lean startup methodology can be applied to any size project or company. And it basically ensures there will not be a massive failure. If the assumptions prove flawed then you can learn faster and cheaper, so it’s possible to iterate towards success or move on.”
3. Give your developers the tools they needIt’s a common (yet ironic) problem: Companies give their developers inadequate tools (or none at all), just to save money.
In reality, the productivity lost with inefficient tools far outweighs the cost savings. What if a tool would cut development time in half? What if it simplified maintenance? If you have in-house developers, make sure they have the tools they need to do their job efficiently.
“The most productive developers understand the importance of good tools,” says Tyler Wassell, Software Development Manager at mrc. “The right tools will not only eliminate repetitive coding tasks, they will also fill gaps in their skillset–letting them accomplish more than they could coding from scratch.”
4. Look long term
Now, I’d like to give one note of caution to the previous point: Not all tools are a wise choice. Some lock you into a vendor. Others limit you to a specific database or platform. Others make you learn a proprietary language.
In short, they limit your future options. Avoid those tools like the plague. Before investing in tools (or business software in general), ask the questions listed below.
“I have a general question I ask when looking at these sorts of problems,” says Dale Baldwin, Social and Destination Marketing at Adventure Tasmania. “Does the technology I choose give me control of my strategy going forward, or will my technology end up dictating the limits of my strategy? If my strategy is limited by my technology, is the technology here to serve me or am I here to serve the technology?”
5. Invest in a template or a framework
When we redesigned our website, we had a choice: Do everything from scratch, or pay $20 for a pre-built template and modify it to fit our needs. It’s a no-brainer. The template provided a design and a mobile-ready foundation. Rather than spending weeks building it from scratch, we simply modified the template to fit our needs. This is a great money-saving approach for both web site and front-end web app development.
“There are many people who make a living selling templates and pre-built frameworks on sites like Theme Forest,” says Trevor Ewen, Software Engineer at Neosavvy. “Wordpress has as huge template community, and just about every blog engine is from there. Focus on modification over ‘ground-up’ creation.”
6. Integrate before building from scratch
Do you need a specific feature in your web application? Chances are, it’s already been built. For instance, suppose you need to add reporting to your internal system. Sure, you could build it from scratch, but…why? Instead, look for an existing solution that integrates with your current applications. You’ll save time and money in the long run.
“These days there are hundreds of web apps and platforms for CRM, invoicing, payroll, analytics, etc,” says Gabriel A. Mays, Founder of Just Add Content. “If you find an app that does some, but not everything you need, you can use the API to integrate it with another app or two to do the rest. If your apps can’t integrate directly chances are they can integrate through a service like Zapier or IFTTT. If your app doesn’t have an API consider looking for another app.”
7. Find someone else to pay for it
I know what you’re thinking: “Why would someone else pay for my development?” The answer: They will, if it also helps them solve a problem.
Let me explain.
I know of some developers who spend nothing on development. Rather, they sell the concept to prospective customers first. They find paying customers before they even create the software. This does two things: It validates the idea, and finances the development.
I know of other companies (without developers on staff), who get low cost development in exchange for equity. They sell the concept to a developer, who creates the application in exchange for a portion of the proceeds. As explained below, this approach helped one company get software up and running at a fraction of the cost.
“We traded equity in exchange for the product team doing the work at cost,” says Sean Si, CEO and Founder of SEO hacker. “It extended our runway dramatically while making sure we’re still building what’s best for our customers.”
Now, I realize this doesn’t apply to every business. But, selling the concept before creating the software is a great way for some to dramatically reduce costs.
So, what do you think? Is there anything you would add to this list? If so, please share your thoughts in the comments.