A while back, Steve Loper, Director of Innovation here at Amadeus Consulting wrote a blog about The Risks and Rewards of Third Party Development. It was a really interesting comparison of what things you can expect when using 3rd Party Tools. A similar, related concept that we get asked by a lot of clients is how you know when to use a fully custom solution vs. a platform or even an out-of-the-box solution. Our answer, quite often, is “it depends.”
Steve told a great metaphorical story about cooking and why you would use a 3rd Party tool similar to why you would use store-bought flour instead of grinding the wheat yourself into homemade flour. A fully custom solution would compare to something like this. However, the reasoning behind building something fully custom would obviously differ than the reasoning for making flour. I can’t think of anyone that would recommend making flour yourself unless there was some sort of strange flour shortage (I suppose it could happen).
So how do you know when to build something fully custom? Ultimately it is best to get with an expert custom software development company and talk about your business goals and what is most important to your unique situation, but here are a few points to consider when making the decision.
Custom is better when…
1. There is nothing like this anywhere on the market. Meaning – there exists no platform or third party tool available to simplify the process.
2. There is an existing platform that meets part of the needs your company is looking for, but it maybe doesn’t offer the right tools necessary to customize or modify to fully meet your needs.
3. There is an existing platform that meets part of your needs, and has tools that allow customization, but the scope and effort required to customize and modify the platform would exceed building the whole thing from scratch.
Again, this largely depends on the goals your company has laid out as the way to measure the success of your software project. But it is a good idea to really evaluate why you want something so completely customized. Are you offering a truly revolutionary idea that hasn’t been thought of before? If that is the case, then custom is probably the most appropriate solution. But if you can meet the business needs with something that leverages a platform or 3rd party tools, you will probably get a successful solution that doesn’t break the bank.
Custom doesn’t always mean custom
You might be building a custom software application, but rarely is there ever a solution that is developed without integration of some other tools, features or functionality that is leveraged through a platform. It is rarely necessary to totally reinvent the wheel.
You might be building a pretty complex custom e-commerce site that just can’t really utilize the semi-custom platforms that are available on the market right now. However, if your site needed to track purchase behavior or patterns, you probably wouldn’t develop a reporting and tracking system completely from scratch, you would likely utilize Google Analytics through API integration. Same goes with payment processing; you would probably utilize a 3rd Party Payment Processor like PayPal or Google Wallet.
Still not sure what the difference is? Or need help deciding? Contact us for more information!