Finding an existing solution to customize can often (but not always) save you time and money versus building from scratch. Try and look at your needs from different angles to decide which is the right way to go.
What’s the Difference Between Customized & Custom?
A customized solution is based on something that already exists. You take this pre-existing piece of tech (or anything else) and you adapt it to better fit your needs. A simple example of customization is an email template from an ESP: you get the pre-built template, then swap logos, colors, etc. to get what you want. A slightly more complex example is building an ecommerce store with Magento: you start with their platform, but then add your own product attributes, categories, themes, etc. until your store looks completely unique; but you are still leveraging work that’s been polished and tweaked by someone else.
A custom solution is something that is built completely from the ground up to suit you. That doesn’t mean every part is completely new, but it does mean that the pieces have been chosen based on your requiremenets and put together specifically to suit you. Let’s use an email example again: you decide that the templates from your ESP aren’t good enough, so you have your designer code a template from scratch using your dimensions, CSS optimized for the screens your customers use most and able to use assets from your CDN. For ecommerce, you decide that your shop needs a new way of doing everything, so you build it from scratch: you might use PayPal for payments like Magento and do a similar layered navigation but you put together the payment processing and the nav logic based on your own architecture.
The Advantages of Customized
If you’ve seen it in the wild, then it’s probably been done before. You can take advantage of this to get the product, service or result you want without having to reiterate the trial and error of the original creator.
This doesn’t mean you won’t have to do some work, but if a pre-existing solution already handles 80% of your needs, then you only have to invest and work for the last 20%. The differences in time and cost of getting that last 20% versus having to do the full 100% can be millions of dollars, a happy marriage or a faster entry to the market.
Ways to Find Out If What You Want Already Exists
A Google search will often reveal the exact tool you need. Start by using the most natural short description you can, e.g. “auto callback”. If that doesn’t seem to be a good fit, then try adding a little more detail: “automatically call customers back”. If that doesn’t work, then try using a different angle, e.g. “missed business call handler” or “auto-redial missed calls”.
Depending on your Google-Fu, this may take a while. But it will save you a lot of time if you can adopt an existing application, product or service to fill the need. Of course, you will come across a lot of garbage BUT if it’s out there, then you’ll probably find it.
Look (Again) at Your Current Stack
If the functionality you want is related to something you already have, then there is probably an add-on, script, upgrade or template that will get you what you want. Ask your vendor reps or department head to research it for you and come back with some options. Your vendors might also have a marketplace or directory where you can search for what you want.
Other People’s Sites
Visit your competitors, your partners and other sites in your vertical and see how their tools work. If you find what you’re looking for, then click View Source to see what they are running. Plugins like Firebug will let you see the source files for scripts. YOu can also download the source and examine it in your editor of choice.
The web is filled with folks sharing things they’ve found in the deepest, darkest corner of the web or things they’ve built in the deep, dark corners of their apartments. Visit forums for your industry; big, general ones like stackexchange; or programming-centric ones like stackoverflow. Find the right topics and ask people to help you find the solution.
If you’re a programmer or comfortable with tech speak, then GitHub may be the place where you find your foundational technology. It’s a platform for collaborating on code projects where enthusiasts and companies share and develop code together. Browse through the projects and you’ll find all sorts of open source goodies you can work on and adopt to help you.
Many organizations are siloed to the point that people do similar tasks with totally different tools. Ask people in other departments if they’ve seen or used something that will do what you need.
Advantages of Custom
Sometimes the idea is too new to be built off an existing framework. You may be putting together pieces of disparate technology to create something unique like Apple did with the IPhone or addressing a desire that no one (yet) has perfected like Facebook (remember Friendster?). Even if your vision isn’t so bold, it still may be beyond what anyone has done. In this situation, you have to go custom in order to get what you want.
Another possibility is that customizing existing pieces will require more work than building it from scratch. All the pieces might be out there, but that doesn’t mean they play well together or can be made to work well for your purposes. Build from the ground up if putting the puzzle together is going to be equally costly as building from scratch or will create an unmanageable mess in the long-term.
Last, you discover that building your new service or product will align with another strategic goal or provide an asset for use later. If building your idea from the ground up offers synergies or other benefits to your organization, then it can be worth doing the custom work. On this one, you’ll want to have some measurement approach like NPV or opportunity cost to prove that it’s worth it.
It’s a Thin Line
You can customize something so much that it bears no resemblance to the original material and becomes one of a kind. Alternately, you can build something from scratch and discover that most of it had to behave like other tools and so you only took a small step forward.
To get your idea out there, you have to be willing to make a decision. Discovering that you made the wrong call can be costly, but it’s better than standing still until someone else has the idea, implements and reaps the rewards. Try to think about your options and see alternatives. Remember equifinality, but don’t get paralized by the choices.