16 March 2008

Homegrown Software

It's very tempting to think that your piece of software is very unique. In fact, why would you have a need for this software, if someone else thought about it already?

As the old saying goes: "There's nothing new under the sun." And it's quite true. There is almost never any new ideas or thoughts. They're just packaged differently.

The same goes for your piece of software. All, or most of the concepts are not new. You just thought of a new way to package them. And there's nothing wrong with that.

Think of Google. They are making billions of dollars each month with two main ideas: Search engines and targeted advertising. Neither of these are new concepts. They just packaged them in a better way.

Let's come back to your web application. It really frightens me to see people writing something like a CMS from scratch. They tell me that they have talented PHP programmers that can do a complete new CMS site in under two months.

TWO MONTHS! Are you crazy? Why would you do that? Consider the following:
  • You can probably create the same site on an existing CMS in 2 to 5 days
  • The best CMSes are Open Source. That means it costs you nothing to get that code
  • They have literally hundreds of plug-ins available. You can add something like a poll to your site in 5 minutes flat.
  • There are thousands of sites on the net using this CMS, so it's tested really well
  • There are dozens of programmers working on this CMS as we speak
  • That means that they are fixing things that are not quite right
  • They are also looking out for security breaches, and fixing them, often before it's hit your site
What would happen when your two talented PHP programmers leave you? No-one knows how their code was written. Suddenly your CMS sites are unmaintainable. A new PHP programmer will take weeks to understand their code, and more often than not want to re-write everything. It's in the nature of programmers to do this.

If there is a vulnerability in the code your two PHP programmers wrote, you will only know about it when it hits your site, because no-one else is using that code. Now the programmers have to rush like mad to get the code fixed. Let's say it takes them a week, that's a week your CMS site is out of service. You are losing business.

In the world of the pre-built, open-source CMS, the vulnerability is probably found before it hits your site. And the dozens of programmers working on it has fixed it in a matter of hours. What's more, they send you an alert as soon as it happens, and another one as soon as it's fixed. Now all you have to do is click one button, and your site is fixed. No loss in revenue.

So I think it's a much better idea to use existing software modules, and just package them differently. It makes much better business sense.

1 comment:

Olympia McEnhill said...

Couldn't put it any better!

Once we invented the wheel, we tackled the car, we didn't spend hours re-inventing it!