I believe the greater issue that’s been exposed is the rift between the initial add-ons that were created by the EE community, and the current batch. There’s a shift that’s happening, a shift that’s like that fable about the frog in a pot of cold water that’s slowly being heated.
In the beginning, there were plugins, and then extensions and modules. They were usually free, and they were pretty good. Some were VERY good… Reeposition, Freeform, LG Add-On Updater, FieldFrame, Pages/Tome, ImgResizer... they were hard to find sometimes, but the support was OK, especially if everyone who used it pitched in on the forums.
And then Tag came along.
SolSpace started selling Tag for $39.95, and it was also good. Good because it was a big, useful module, and also it seemed good because it was a supported commercial product that you paid for and could get help directly instead of through a forum ... well, OK, through a forum, but the SolSpace forum, which was different. Tag wasn’t the first commercial add-on, but it certainly was the MOST commercial add-on to come along, if you know what I mean.
And ExpressionEngine let SolSpace sell Tag through their store. And many EE developers liked this idea, of getting paid to write code instead of just giving it away.
And so, for this reason and because EE developers were getting more experienced and were starting more ambitious add-on projects, lots of EE developers started charging for their EE plugins, extensions and modules. They charged for big projects, like Structure ($65), but also for medium ones, like LG Better Meta ($39.95), and for small ones, like onSubmit ($5) and Landing Page ($14.95).
Today, of the 784 add-ons listed at Devotee, 90 are commercial. That’s 12% and growing. Individually, each developer feels he or she has justification for their own commercial choice. Together, this migration towards pay hurts the community in two significant ways:
1) If the total cost of ownership of ExpressionEngine must now include the many additional commercial modules necessary to develop robust, powerful websites, and an EE install realistically costs $100, $200, $300 more than it used to, then CMS shoppers will be less likely to choose ExpressionEngine—not just because of the additional cost, but because of the complexity of assessing, buying, installing and maintaining the necessary add-ons.
A good example is Eric Miller’s recent article about building BMI, where he talks about using User ($100), Related Entries ($70), Primary Category ($25), LG Polls ($40), Super Search ($85) and Importer ($80). That’s $400. A recent site I worked on required Tag ($40), Rating ($50), Tracker ($33), Forums ($100), LG Polls ($40) and Low Variables ($40); that’s $300. This added cost of an EE site is especially apparent when a previously free add-on becomes paid, like FF Matrix or Repeet. It’s the classic “How many grains of sand is a heap” problem. One isn’t a heap, and adding one to that isn’t a heap, and adding one to that isn’t a heap, but at a certain point, you’re buried in a heap of sand, though no individual grain of sand can be said to be responsible for the heap.
2) EllisLab so far seems to be restricting how they improve their base product, if it means integrating functionality that others are now charging for. They were happy to create or integrate first-party versions of Pages, FieldFrame and JQuery for the Control Panel, likely in part because those add-ons were free; other additional site improvements were made in ways that made free add-ons obsolete.
But I can’t think of a single case (nor could anyone I asked remember one) where they’ve co-opted the functionality of a third-party commercial add-on into their core product. Please correct me if I’m wrong. This indicates that once a third-party developer stakes out a commercial product to fill a need—like Structure, FF Matrix, Tag, LG Better Meta, or the commercial plug-ins, EE is not going to expand to include that functionality in the base product. Therefore, as more developers charge for more expanded functionality, that leaves less development space for EllisLab, and a restricted core offering.
I know the counter-argument. You can say, look the EE ecosystem is thriving because more and more people are selling add-ons successfully. And 12% paid, that’s hardly a problem. It’s the trend that worries me. The move towards commercial add-ons as the default will stifle the growth of the core product, and the core product’s wider adoption, which hurts everyone.
So, what’s my solution? First, I should be clear—I’m not calling for add-ons to be open-source; I’m talking about the price point of add-ons, not their licensing model. That’s a post for another day.
I think EllisLab has to be more cold-hearted and realistic about taking the best ideas and either buying them or doing their own version and integrating them into EE. I know this is sad for the individual developer, but it’s better for all developers, and better for ExpressionEngine’s health itself.
I’d also like to see EllisLab offer more support to the developers of add-ons. The fact that devot-ee is a third-party effort is surprising to me—it’s so clearly needed, and of such value to the community. EllisLab in 2007 adopted the EE Wiki and brought it into the company to the tremendous benefit of the community; I’d love to see the same thing happen now with Devot-ee.