At Atomic Object, we make custom software. But what is custom software, really? When do you need custom software?
I field all kinds of inquiries for our services. Sometimes it surprises people when they find out they don’t need custom software at all and they can solve their problem some other way. Here’s how we decide whether custom software is right for you.
What is custom software?
Let’s start with a basic definition: custom software is computer code written to make computers do things. We can do a broad range of things, but it usually involves showing things on a screen, enabling humans to interact with those things, storing data, analyzing data, and sending data from place to place. The goal of any software project should be to solve a problem or help the user do something better or more efficiently.
How do you know if you need custom software?
When we’re talking about building custom software, one key question we ask is, “Has somebody already built software to do this thing?” Good, reliable software is a big investment. There’s a cost upfront to build it and a cost to maintain it long-term, including security fixes and adding new functionality. It’s important that the business value the new custom software will unlock is far greater than the cost it took to build and maintain that software.
A Case for Using Off-the-Shelf Solutions
The good news is that we live in the 2020s. Software has now been a part of the business landscape for the better part of a century. Further, web-based software (one of the most common types) has been a part of our everyday lives for almost two decades. A lot of software already exists out there, and often it’s available for sale or as a subscription model (also called “software as a service” or SAAS). If you’re looking for software to help you with your business, your first stop should be a Google search for “software for _______.” Fill in the blank with your business need. For example, software for:
- restaurant reservations
- dog groomer scheduling
- lawn care business management
- inventory management
- online learning content delivery
- … you get the idea.
In most cases, you’ll have the ability to customize certain aspects of the software. You can put your logo on it, change the colors, and set up the workflows the way you want. We call this process “white labeling.”
It’s always cheaper, quicker, and less hassle to buy or license existing software than it is to make new software.
The Case for Creating Custom Software
Sometimes, software to do the exact thing you need doesn’t exist. For example, there’s plenty of software available to help with inventory management. You can even find software to manage your business (called “Enterprise Resource Platforms” or ERPs). But maybe your business does things a little differently than what the software is designed to do. Or maybe it does some of what you need, but not all of it. Sometimes, you can connect one or more off-the-shelf SAAS tools to satisfy your business needs. Sometimes, nothing quite hits the mark.
At that point, you need to choose. Will you change your business processes to match the software or do you really want to spend the time, energy, and money to build your own? A good IT consultant can help you analyze whether this makes sense for your business.
Only build custom software if you are prepared to invest thousands of dollars into building and maintaining the software long-term. And only build custom software if it will make a big difference for your business or unlock a new opportunity to make more money. Custom software is worth building when you’re doing something in an entirely new or revolutionary way, and when old methods won’t work. Otherwise, it makes sense to use something that’s tried and true.