Open Source: It's Just a License?

by Matt Hamilton on Jul 14, 2009

I've just read an interesting article over at CMS Watch by one of their Analysts, Adriaan Bloem, entitled Open Source: It's Just a License.

In it Adriaan discusses TCO costs for Open Source vs. Commercial and mentions that there are a lot of gray areas between Open Source and Closed Source systems. In the end he sums it up pretty well with a great piece of advice:

"There's only one thing you can generalize: open source is a specific kind of license. And discussions about which license is better are rather academic. What you'd want to decide on is what your software should do, if and how you want to customize it, and how easy it is to get support when you need it. That means doing your homework, and finding out the real story: you'll certainly want to know what's behind the facade. And that's something that applies to software under any license."

I'd like to actually take this even further, as there is a point further up the article in which he talks about costs with some example numbers:

"Get out your calculator and tell me this: what's more expensive over the course of three years. Software that's $30K up front, with a 15% annual maintenance and support fee; or software that's "free," but with $15K a year in "gold support"? Or, if you're planning on doing it yourself, one FTE?"

You could pretty much pick any numbers out of the air to make this argument and you could make it go either way pretty easily. However it misses a pretty big point for Open Source, and that is control.

Those costs above are a pretty small part of the equation if we are talking about Enterprise-level content management systems. And indeed its a point Adriaan makes:

"It's just an example, but you get the point -- it's very hard to do an enterprise implementation cheap, whichever way you turn it."

Anyone who has done any kind of CMS deployment in a large organisation know that the CMS they procure 'out of the box' is only going to be about 20% of the way towards their end goal. The rest is going to be customisation towards their specific business requirements, processes, branding, etc; and working out what they actually want to do. The key point is how easily does the CMS that you procure allow you to customise it to get the remaining 80% done?

With Open Source you get the choice of how you want to spend your budget. Make no mistake, you are still going to have to spend some money (see above, you have 80% still to do) but you get the flexibility to spend it how you want and when you want. You could start off with installing and evaluating an Open Source CMS with very little initial outlay. Then, as you build the system up and start to implement your requirements, you have the choice of how to do it: you can do it with internal development resources or you can hire in external help (or contract the development out). You can do it with a mix of these at different points in your project as you deem fit.

Furthermore with Community Open Source (as opposed to 'Commercial Open Source' in which, usually, a single vendor produces a system then open sources it) you have a choice of development partner. This is a pretty critical point. You can choose if you want a small local one-man-band with lower costs, or a large consulting company with full-on project management and offices around the globe. You get to pick what fits best in with your organisation... and even better... you are not locked in to them! Should for whatever reason you need to move development partner, then you can pick another one. Each of these companies will (should) have equal access to the core development of the system you have chosen and be able to make changes and fixes on your behalf. With closed source systems you might have a choice of VAR/Integrator/Developer, but in most cases these companies will still be one step removed from the software and have to go via the original software vendor to make any changes.

You also have lower risk with Community Open Source systems. There is no one central company that could go bust or be bought out by another vendor and end your CMS. Just look at the number of vendors acquiring other vendors in the commercial CMS space (there has been quite a flurry recently). These acquisitions are often to bolster an area of the portfolio that the vendor is weak in, but as a side effect they often acquire pieces that are superfluous to their current offerings and may be dropped. And when they are you are in trouble. The same risk is also present with 'Commercial Open Source' too if Alfresco, Hippo or Magnolia went bust then whilst their code might be Open Source, you have just lost the single dominant force in the development and may also have lost support, mailing lists, bug trackers, etc with them too.

So back to Adriaan's advice: "What you'd want to decide on is what your software should do, if and how you want to customize it, and how easy it is to get support when you need it." Do your homework, look at the different systems out there and make an informed choice. Just make sure that whatever system you choose gives you the flexibility and security that you know that you will be able to make the changes you need not only now, but three years down the line when you inevitably procure that new sparkly CRM/ERP/HR system. ;)

Adriaan Bloem
Adriaan Bloem says:
Jul 14, 2009 02:06 PM

You raise some interesting points -- actually, I wanted to address those and nuance them, as well, but I ran out of space; so if you don't mind, I'll add some here :)

Your main two points are that community open source allows you the choice (of customization) and is a safer bet (because it's supported by a community). But...

Customization, especially when you're customizing the software itself, rather than adding on top, can be risky if you don't know exactly what you want. And it can give you great flexibility -- but at the price of having to run software development. Even when you bring in outside help, you'll have to manage at least part of that process. And let's face it, not everyone is up to that task (or would want to be). It's something you wouldn't want to take lightly: it has to be a very conscious choice.

As for software vendors being acquired (or going bust) and the products being left dead in the water -- it's an argument I've often heard, but seldom seen supported by examples. In reality, support for commercial software rarely disappears (as long as there's revenue to be gained from it).

On the other hand, there's a lot of extinct communities. I think this mailing list screenshot is a nice example: farm4.static.flickr.com/3408/3610947680_8c251ebfd7.jpg

Yes, community open source can have a lot of benefits. But again, it's hard to generalize the benefits -- there are too many exceptions. It all depends on what the community is like. Some are small, some large and active, some are very regional (what use is an active German community for an implementation in Australia?).

So I think you can certainly have these benefits with specific community open source, but certainly not all projects that are community open source. And whether they're real benefits or not depends on your specific scenario...

As always, the good part is that there are so many options. But the problem is that, well, there are so many options ;)

Matt Hamilton
Matt Hamilton says:
Jul 14, 2009 02:34 PM

Adriaan, Yes you have a very good point there, and customising software is often not for the lighthearted especially for larger systems. A very good piece of advice given to me many years ago by Paul Everitt was 'Software is not an asset, it is a liability'. Again, I'm not saying you have to do this. All I'm saying is that you have the choice to do so if you wish.

So many times I've come across in-house developed systems in an enterprise in which the original developer has long since left the company and bitrot has set in.

I'm still not entirely sure how your point "Even when you bring in outside help, you'll have to manage at least part of that process." differs with Open Source or Commercial. Commercial software companies are not mind readers ;)

I agree that often communities can be very regional, but again this is exactly that same with commercial software. There are products that have very dominant share in certain countries and virtually unheard of in others.

I think we are actually agreeing here :)

And yes, there are lots of defunct Open Source projects and dead communities out there, due to such a low overhead in starting some of these up there are no doubt many that never made it beyond scratching one person's itch. That said, that is where CMS Watch come in, by providing analysis of the different systems out there and pointing out which ones have traction.

I agree that support for commercial software rarely disappears as long as there is revenue to be gained from it, but that is exactly my point. If revenue does stop for it then so might the support. ie. you are placing your ability to get future support in the hands of (often a single) commercial entity.

-Matt

Commenting has now closed on this post.

Follow us

— via Twitter

Is proudly sponsoring #BlueLightCamp today. If you want to come talk Open Source content management @HammerToe is there #blcamp
last month