I'm often approached by new business owners inquiring about the differences between building software and assembling software. In today's rush-to-market atmosphere, most prospective web entrepreneurs look at the variety of available software packages and begin to put together a project much like a lego set. Only, these pieces don't necessarily fit together!
Is this pre-packaged software right for you? It depends on your project and your goals. If you are setting up an informational website with static content, then there are definitely advantages to using software like Drupal or Wordpress to run your business. The litmus test usually exists with this question:
Is your site a stand alone property or supporting another business?
If the answer is the latter, then you can easily get away with a pre-packaged solution. However, if you are building an online-only business, you will save money in the long run and build value for your enterprise by having a solution custom built for you. So, if you are running a local real estate company and you want to opine on market conditions, or if you are looking for a fairly static site without many moving parts, then off-the-shelf is the way to go. But, if you are developing a complex social network, or a video sharing site, you may want to consider building something yourself. Ask yourself if your idea or concept is already being done elsewhere on the internet. If not, then its highly unlikely any combination of pre-packaged software will work exactly as you want it to!
Here are the key points to consider when making your decision:
Will pre-produced software add or subtract from my company's overall value?
Start up businesses are valued on many levels, from content to infrastructure. What would the value of a Drupal-based site infrastructure be, as compared to a custom-built solution that you own? What is the value of using a service like Brightcove, versus your own custom-designed flash player running on your infrastructure?
Is complete control over the software of any importance?
When you use an outside framework, you are relying on outside forces to control your destiny. You will be dependent on other parties for upgrades, security concerns, and other factors that change on a near-daily basis. When you own the software, you can easily adjust settings, add features, or enhance security whenever you wish! Try to think months into the future: perhaps you sign up with a partner who needs access to your data, and you can't produce it because of a limited framework. Or you wish to build a custom system to track analytics and user performance, but you have limited options.
Even though it's off the shelf, will I need technical support anyway?
Most likely. Even though these packages are pre-configured, you will always need technical support to make sure all of the components work in unison. Would you rather the man-hours are spent making your software work, or spent increasing the value of your custom-built solution?
The biggest concern I typically hear from those engaged in this debate with me is cost. If something is built for me, it must cost more! Not necessarily. It's important when pricing out packaged solutions to consider all of the costs that may sneak up on you. For example, there are many companies out there that offer all-in-one video solutions. They charge you ongoing costs by the month based on usage. A little research will prove that you can do the same thing yourself for a fraction of the cost. A start up business could save money by developing it's own flash player and then finding cheap hosting, rather than using a service to do the entire thing for them. And it is just as easy to operate!
If you are considering a large project, and leaning towards purchasing software, definitely spend some time with an independent developer comparing solutions. You'll thank me later!
(Side thought: I like to think about the US Army when talking about the benefits of custom-built applications. When the army was building the Amphibious vehicle, they didn't take a rowboat, a jeep, and just mash them together. I'm pretty sure they investigated a new, custom solution! )