MontanaMenagerie - View topic - Open Core: The Worst of Both Worlds
It is currently Tue Sep 07, 2010 6:51 am




Post new topic Reply to topic  [ 1 post ] 
 Open Core: The Worst of Both Worlds 
Author Message
I Have Powah
I Have Powah
User avatar

Posts: 1655
Joined: Sat Jun 09, 2007 11:13 pm
Location: Meadowbrook, CA
Post Open Core: The Worst of Both Worlds
Open Core: The worst of both worlds
by Sander Marechal

A lot has been written recently about so called “Open Core” software ever since Andrew Lampitt coined the term back in August of 2008. Many analysts have been critical about it, such as Richard Hillesley from The H Open in his recent article “Open core, closed heart?”. Many are also very positive about it such as Matt Aslett from The 451 Group. However, I think that most them are missing the elephant in the room: Open core is not sustainable in the long term because it represents the worst of both worlds. Open core tries to find a middle ground between proprietary software and free software, but it reaps the benefits of neither and inherits the problems of both.

Let me show you by example. SugarCRM is one of the more popular open core software products available. The company offers the Community Edition for free under a GPLv3 license but also offers a Professional and Enterprise edition under a proprietary license. SugarCRM has been around since 2004 but it is already showing many signs of not being sustainable.

Proprietary versus Free Software

Proprietary and Free Software are developed and commercialised in totally different ways, each with distinct advantages and disadvantages. Feel free to skip this part of you are thoroughly familiar with it.

In the proprietary world you develop your software in-house and sell licenses and support contracts to your customers. You bear 100% of the development cost yourself but usually the license sales alone generate much more revenue than the service contracts. The real trick is getting people to buy or update. Usually that means adding features to the product so it becomes more attractive. This way new customers will choose your product over the competition and your existing customers will part with their cash for new licenses to get the updated version. This also means that proprietary software has feature creep. Over time, more and more features get added to the product to stay ahead of the other proprietary vendors. This happens at the cost of quality. Developer resources are limited and with the pressure to add features, bugs go unfixed and corners are cut.

Over in Free Software land it is very different. The source code and the entire development process are completely open and aside from the in-house developers there is a community of external developers working on the product. This is why much free software is of such high quality. There are plenty of resources to fix bugs and to get it right. But making money from it is much harder. It’s mainly about support contracts which generates less revenue than closed source license sales. Also, customers don’t need so much support thanks to the high quality of the software itself. There is also the risk that someone can fork the project. This is great for the software itself but not so great if you are a business that is trying to keep its customers.

The “middle road”

Let’s see how his works for open core and specifically SugarCRM. If you go to their website you can download the latest SugarCRM Community Edition for free under a GPLv3 license. You can also see that it lacks many features that the Professional and Enterprise version do have, such as team management, advanced reporting and an Oracle back-end. What you will not see however is a source code repository or developers mailinglist or forum. SugarCRM is developed completely in-house with no community involvement. They have a patch submission form but when that went down it took weeks before SugarCRM noticed it. That not only tells you how much SugarCRM cares about patches but also how many people use that form to submit a patch.

What simply happens is that SugarCRM develops a new version of their system and they throw the code “out there” as a teaser so that people will hopefully shell out for the Professional or Enterprise edition. SugarCRM generates revenue in the same way as a proprietary vendor: by selling licenses. That means it is on the same feature treadmill as proprietary software. It needs to keep adding features to stay ahead of the competition and to make people upgrade.

So far this “Open Core” vendor looks suspiciously like a proprietary vendor. But the problem only starts here. SugarCRM does have quite a developer community around it, but it is not working on the open core part. It’s busy building add-on modules, plugins and offering customisation and support. One of the things this community does very well is creating add-on functionality that provides the features normally found in the Professional and Enterprise editions, such as team management and advanced reporting.

SugarCRM has to compete feature-wise not only with the competition but with their own developer community as well. They have to add new features to the Professional and Enterprise editions faster than their own developer community can re-implement them as add-ons to the GPLv3 edition. If they don’t then their customers will switch to the free Community Edition, which is very likely since the Professional and Enterprise licenses need to be renewed every year and they are not cheap. It’s like the feature treadmill of proprietary products but in overdrive. And it takes a far larger toll on quality… and it shows.

Buggy, buggier, buggiest

A quick look through the SugarCRM forums and bug tracker can confirm that this is exactly what is happening. New Sugar versions are appearing at a rapid pace with ever more features while the bugs pile up and never get fixed. users keep asking for more quality control and an opportunity to fix bugs themselves by opening up the development process but this is not happening. And it’s not small bugs that go unfixed. There are bugs in the currency formatting that have existed since version 4.2 from 2006 that have still not been fixed in the latest version. This bug causes the financial forecast to be off by several orders of magnitude. That is a critical part of sales force automation.

As a PHP developer I can testify that the quality of the SugarCRM source code is low. I am reasonably familiar with the source code, having deployed it on several locations and having developed custom modules for it. The source code is as bad as old PHP-Nuke versions, full of spaghetti code, hard-coded special cases, inconsistent design and lots of bugs.

SugarCRM is not just an exception here. Even open core projects that do have a more open development model, like Alfresco suffer from quality problems.

The bottom line


In the end open core software is driven by the same incentives as proprietary software is. Therefore it suffers from the same problems: too much focus on features and too little on quality. That’s the downside of proprietary software. But it also inherits the problems of open source software. Because of the open source community editions you have to worry about forks taking your customers (e.g. vtiger). To top it off they also need to compete against their own developer community who will reimplement the closed enterprise features as add-ons for the open source edition. This magnifies the problems caused by the feature treadmill and leads to a rapid decline in quality.

http://www.jejik.com/articles/2009/10/o ... th_worlds/

_________________
Linux. Don't fight it. You will be assimilated.
*******
Gulf War Vet--2nd Squadron, 2nd Armored Cavalry--Fort Polk, LA


Fri Oct 09, 2009 12:41 pm
Back to Top
Profile YIM
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 1 post ] 


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron


Powered by phpBB © phpBB Group.
Site by Zoll Technologies | Template by Vjacheslav Trushkin.