This isn’t the typical argument that Expression Engine should be GNU and “free” because it is too expensive, rather my argument focuses on the fact that the EE pay wall slows its growth and inhibits innovation. As far as Content Management Systems go, Expression Engine is an efficient, functional solution for both developer and clients. But unfortunately, snappy functionality isn’t the only factor you need to consider when choosing a CMS. Compare EE with two of its “competitors”, WordPress and Drupal, and you’ll find that EE falls short on a number of other issues including: price, smaller community, less updates, and an unfortunate licensing situation. Price on its own shouldn’t be listed as an “inadequacy”. If the world’s greatest CMS charged a fee it would be well worth the extra money for the service. But there is a hidden cost to charging for a CMS. My argument is that many of EE’s inadequacies stem from its price wall. EE has a flawed business model which limits its growth and long-term sustainability. Therefore, Expression Engine should be free!
Issue #1: EE Has A Smaller Community
EE’s barrier for entry is high – a commercial license fee of $299 per install – leading most developers to seek alternative solutions. As a result the Expression Engine platform has a much slower growth rate and a smaller user base than its rivals. If there are less people using the software, then we can assume the following. EE has… *a smaller community of developers *a smaller amount of people offering support in their forums *a smaller amount of add-ons (i.e. extensions & modules) Despite anecdotal evidence that EE enthusiasts provide, “I think the support is fine”, and “There are plenty of modules”, the hard numbers prove that Expression Engine has a much smaller user base than Drupal and WordPress. It has less developers to share support question with, and less add-ons being developed.
Issue #2: Less Updates & Less Code Proofreading
Expression Engine has been slow to release new versions of its software. (See corresponding version release dates for: EE, WordPress, Drupal.) Why is this important? Technology changes everyday – it’s important to constantly evolve. Furthermore, in my experience it has been much easier to upgrade WordPress and Drupal installations to new versions than with Expression Engine. Even now as the latest EE version 2.0 has been released my admin panel is still only alerting me of version 1.6.9 – which must be downloaded and manually installed on the server. WordPress, on the otherhand, has automatic upgrades announced the day they are released. Historically a smaller user base tends to suggest that hackers are less interested in hacking the code, but in the case of software development it also means that there is less distributed proofreading of the code – and therefore a smaller likelihood that vulnerabilities are going to be found. To put that another way, the larger the community, the more likelihood that someone will come across a security flaw, and that the bug will get patches more quickly. Lullabot blogger Nate Haug recently did a comparison on the level of security between EE and Drupal. His assessment begins,
You can see that ExpressionEngine has had only one security advisory over the course of 3 years. Over that same time period, Drupal has had over 80. It’s easy to draw the incorrect conclusion there that ExpressionEngine therefore is more secure.
But as Haug concludes, fewer reported vulnerabilities does not mean less vulnerabilities! It only means they haven’t been reported. Point in case Haug was able to find 3 security vulnerabilities in version 1.6.2 of Expression Engine. Secondly, Haug explains that EllisLabs quietly fixes security vulnerabilities, further leading their customers into a false sense of security.
Issue #3: Licensing & Ownership
Expression Engine is a proprietary product. And as is with all property, law determines that one particular person (in this case, EllisLab) has the authority to decide how the product will be used. Therefore, nothing stops EllisLabs from discontinuing EE development or refraining from issuing licenses in the future. This is in contrast to WordPress and Drupal which are “in the commons” (aka. in the public domain). No single person has exclusive control over the use and configuration of these CMSs. If the lead developers of an open-source project decide they no longer want to develop the product, the community goes on, and the product can be used freely by anyone; forever, without a license, and without having to report to a central authority.
A Better Business Model for Expression Engine…
Expression Engine would be a better CMS if there was a free version! Revenue Idea #1: Sell Support EllisLabs insists that the price is justified because they have “a team of committed developers and technical support specialist”. In my experience developing CMSs I don’t feel that the EE community has any better support than an open-source community. EllisLabs’ stance on this issue rubs up against a very old (and famous) argument addressed by the Richard Stallman’s 1985 GNU Manifesto,
If people would rather pay for a [software] service than get [software] free without service, a company to provide service to people who have obtained [software] free ought to be profitable.
Stallman went on to found the free-software movement which was immensely influential in spurring software innovation (Linux, Unix, Wikipedia, WordPress, Drupal, etc), and subsequently, profitable organizations that were developed to support the free software (Red Hat, Crowd Favorite, Lullabot, etc). Revenue Model Idea #2: Sell A Fully Hosted Version EllisLabs could give away a basic version of EE for free, while selling a fully hosted version for non-developers. (Similar to the WordPress business model.) Revenue Model Idea #3: Sell An Enterprise Edition EllisLabs could give away a basic version of EE for free, while selling an enterprise version. (Similar to Movable Type’s business model.)
To recap, the Expression Engine pay wall inhibits the project. Looking forward, I don’t believe that Expression Engine can gain the same market share as WordPress or Drupal (at least not anytime soon - Movable Type still hasn’t recovered from their pay wall). But, it will help develop a wider community. And it will make Expression Engine a better product. Capitalism breeds capitalism: whereas 99% of WordPress and Drupal plug-ins are free (giving back to the community!), in addition to the $299 Expression Engine start-up, EE users typically tack on another $350 for plug-ins (Wygwam $35, Matrix $35, Playa $75, BetaMeta $40, Structure $65, SolSpaceUser $100). Why have all of these separate niche communities developing proprietary code? Let’s reuse code! Let’s work together! — By the way, I’d really love to hear a counter argument in favor of the $299 licensing fee – do you believe the fee makes it more valuable than if it was open-source?