These questions never stop coming: Hey, it’s open source, right? Isn’t it supposed to be free? Why would I pay for your subscription? Well, one of our customers put the answer this way: “I have a tight budget; therefore I bought a subscription.”
This answer may sound counterintuitive but it brilliantly summarizes the professional open-source model that eXo has adopted. eXo Platform was born open source, and our company was formed because some people wanted to become customers. They had their own agenda and needed professional help to save time and money.
In an attempt to give straightforward answers, we have built a comparison table that is supposed to help you compare the free and paid editions of eXo Platform. But it tends to raise even more questions, so I have decided to write a more in-depth comparison.
This is going to be long post, but if you’d like the top reasons to convince your boss to buy a subscription, you could summarize them like this:
eXo Platform comes in two editions. First is the Community edition. This is licensed under LGPL, a permissive open-source license that emphasizes the freedom to use and alter the software. As an open-source software vendor, we believe in the value of free software, and we are proud to offer this software to the world. We are dedicated to the community, and we strive to help everyone be successful with eXo Platform with no hidden agenda.
But eXo Platform also has an Enterprise edition. This is licensed under eXo’s terms and conditions. You can download a 30-day free trial package, but after the evaluation period you must decide whether you want to purchase a subscription.
We believe this dual license is the best of both worlds. On the one hand, you keep your freedom to study and modify the software and then distribute it. On the other, you are protected from vendor lock-in but you also have a professional interlocutor that is responsible for what gets shipped to you.
While both the Enterprise edition and the Community edition are based on the same open-source code base, the binary packages that we build do not contain exactly the same features. At the time of this writing, the Enterprise edition package for eXo Platform 4.3.0 ships with the same features as the Community edition plus these additional features:
In fact, all of the above can be installed on the Community edition in the form of add-ons.
So why didn’t we include them in the Community edition package? Since we have introduced the add-ons manager, we have been able to offer better modularity by making full-feature sets and apps easily installable on top of the eXo Platform.
And because open source is all about freedom, we let anyone decide what fits their needs.
We recognize that one size does not fit all and that the eXo community comprises a wide and heterogeneous audience. So we think it’s important to not overimpose a single vendor’s vision.
On the other hand, the Enterprise edition is designed for eXo customers. We strongly believe in the value of open source, but we have a different mission here. So when it comes to spreading social collaboration through an enterprise, we tend to make more opinionated choices, like when we decided to deprecate the Answers app.
Besides freedom of choice, there are sometimes subtleties that prompt us to make a feature an add-on rather than a native core feature. Here are three recent examples:
The Community edition is community-supported through the community website and in particular through the forums. It’s a very popular way to get quick answers. Many people sign up and drop a few questions there. Minutes after, they get the first answers. eXo employees are actively monitoring the forums and try their best to help. But sometimes you are the first to encounter a specific problem or there is something to troubleshoot in your environment.
That’s where professional support fills the gap. An Enterprise subscription comes with an associated support service agreement that defines response time and various channels to contact us. As soon as a ticket is assigned, a support engineer will spend all the time necessary to get your problem resolved. There is no risk that he will be interrupted by another urgent matter because supporting you is his full-time job.
When a bug is fixed in code, it’s immediately available in the code repository. All bugs are tracked per their jira ID and thus can easily be tracked in the commit logs. So when you are using the Community edition, you are free to grab the fixes you need and build the source code. But what if you are not a developer?
eXo provides a maintenance program associated with the Enterprise subscription. Basically, it means we put a lot of engineering effort to triage, review, integrate, and test those bug fixes (and a few other improvements) against the supported environments.
When you are using the Community edition, you can build the source code and include the fix. We make bug fixes available in source format to anyone, but eXo has dedicated staff to integrate and test them meticulously on the supported environments. The maintenance program also ensures backward compatibility and dedicated binaries (known as maintenance releases).
Upgrading eXo Platform is usually a simple task. In general, when there is some data structure change, a small upgrade routine is shipped with the code and can be activated at startup via a simple property in upgrade.properties. All the upgrade instructions are provided in the release notes.
Upgrades on the Community and Enterprise editions work the same except that Enterprise edition come with a stricter release management. Hence, upgrade instructions are verified to work smoothly from one version to another.
With the Community edition, if you grabbed an intermediary build or applied some custom patches, you will need to be careful to make sure you run the necessary upgrade routines.
Finally, if you are a bit late and need to catch up with several versions, you will have to craft your own upgrade recipe or upgrade successively with all versions that you missed. It is not impossible, but it may represent quite a lot of work if you skipped many versions.
For the Enterprise edition, our support engineers have your back. They have special procedures to upgrade Enterprise editions from older versions of the eXo Platform Enterprise edition.
The eXo Community edition is not eligible for eXo’s professional services. Sometimes we get calls from people who are using the Community edition who would like us to help them in their custom development or with integrating eXo in their company.
As much as we’d like to do this, we can’t. We can only deliver professional services to subscribed customers and on the enterprise edition. It may sound unfair, but we have a very good reason for doing it. In order to deliver on promises, our consultants need reference points. When they have a problem to solve, they have a set of solutions and workarounds that are available according to a given version. So as we strive to provide excellence, we have to map our professional services to a predictable version for predictable success.
I have outlined the differences between the Enterprise and Community editions. There are valid reasons to use both. I would like to leave you with a few final bits of advice on when one or the other makes sense.
Use the Community edition when you want to do any of the following:
OK, I know it sounds demotivational. Many people are happy using the Community edition and living this life. We are perfectly fine with that, and we are even proud that something we built found some use. Simply put, however, do not underestimate the cost of supporting open-source software yourself.
Use the Enterprise edition when any of these conditions apply:
I hope this clarifies the differences between the Community and Enterprise editions. But in case you have even more questions, feel free ask in the Users forum.