Published by Mijingo

movie icon image

EE Insider Blog

Spend your time learning and developing sites with ExpressionEngine and we'll use this blog to keep you informed of all the news related to ExpressionEngine and CodeIgniter.

» Read more in the Archives.

» Have a tip? Send us your EE news.

Learn ExpressionEngine Today

Over a series of 8 videos, watch and learn as Ryan builds an entire ExpressionEngine website from beginning to end. Get started now.

The Matrices

This is a rare editorial piece on the recent dust-up over the release of “EE Matrix” which is a fork of the Creative Commons licensed FF Matrix by Brandon Kelly of Pixel and Tonic.

These are my views and I encourage you to dispute them.

FF History

Not everyone has been in the loop on this issue, so a recap is in order. First, back when Brandon was developing add-ons as a hobby he released several add-ons for free. One of these was the very popular FieldFrame extension, which allows you to easily create and install custom fieldtypes for ExpressionEngine. FieldFrame was released with a Creative Commons license. Along with this, Brandon began bundling FF Matrix, which is a fieldtype that allows you to create a, well, matrix of data.

Fast forward to 2010 and Brandon is in the early days of running his own business; he is earning all of his income only from the EE add-ons he builds.

At the end of February Brandon re-launched as Pixel and Tonic. One part of this launch was the “parting of ways” of FieldFrame and FF Matrix. Brandon noted the reason for this was because FF Matrix took up a lot of his time for support and, well, you can’t really earn a living spending your time supporting something that is free. Economics, math and all that.

Creative Commons to the Rescue

Before it became a commercial fieldtype, FF Matrix was still under the Creative Commons Attribution-Share Alike 3.0 Unported license.

This license allows one to share the code (“to copy, distribute and transmit…”) or to adapt it (“remix”). You are required to give attribution as specified by the original licensor (Brandon Kelly) and if you share your version of the work, you have to use a “similar or compatible license.”

This license is clearly stated at the top of the FF Matrix fieldtype file (ft.ff_matrix.php), so the intent is obviously there.

EE Matrix

So today, EE Matrix popped up. It is a re-release of the free version of FF Matrix (Brandon pulled public access to FF Matrix when he launched his new company). Alex Gordon is the person behind the re-release or “fork” of FF Matrix and stated in an announcement post on his blog his motivation:

Now the new version of FF Matrix is commercial, which is really sad.
So I’ve decided to improve the situation. The distribution of FF Matrix with Creative Commons Attribution-Share Alike 3.0 licenses up to the version 1.3.5 ensures the right of distributing this version respecting license rules. You can always download the original version 1.3.5 from here. Besides, I’ve decided to create the fork with the same license and support and develop it for free.

So, Alex is offering FF Matrix as a free download to anyone who wants it. He made no indication that he planned to charge for it, which would be a violation of the Creative Commons license.

From my read of the Creative Commons license and what Alex did, it seems he is legally on solid ground (as legal as you can be using Creative Commons. I couldn’t find an actual test of the license in a US court).

But is Alex Gordon keeping within the spirit of the license that Brandon set for FF Matrix? That’s where it gets tricky.

Creative Commons Revisited

Each CC license has a set of understandings. You can look at these like the fine print of an agreement. One of the understandings is that the license would not affect the “author’s moral rights.” In the full legalese copy of the license it states:

You must not distort, mutilate, modify or take other derogatory action in relation to the Work which would be prejudicial to the Original Author’s honor or reputation.

I don’t think this is being violated here. If the add-on was renamed something derogatory or somehow impacted Brandon’s other products, then, yeah, I could see it being an issue.

So, technically, Alex Gordon is in the clear. But this isn’t really about that, is it?

Let’s go back to Alex’s original statement:

This whole extension used to be free… till the end of February.

Now the new version of FF Matrix is commercial, which is really sad.

Although he later claims that he plans to continue developing the add-on for free, the spirit of his decision to re-release FF Matrix appears to be to keep it free, not to improve it. He seems to be upset that Brandon slapped a $35 price sticker on FF Matrix.

To me, this violates the spirit of the license. But even more importantly, it violates the spirit of the community.

Community, Community

It sounds like a cliche front-loaded with bullshit, but one of the greatest things about ExpressionEngine is the community.

The people who use ExpressionEngine have a lot of professional respect for each other. This is fostered by EllisLab, who shows a lot of respect and support to all of the EE professionals (myself included).

The EE forums are full of people helping each other. It’s where we all cut our teeth when we first started using the software. We all know how important the community was when we were getting started. This remains true each and every day as the community slowly grows.

Beyond that there is also a solid embrace of the “EE economy.” Unlike other CMS communities where everyone wants (or demands) everything built for the CMS to be free, we actively support and grow the EE economy with our money.

We’ve seen this with several add-on developers earning significant revenue from their add-ons. We’ve also seen this with education and training materials, like books, screencasts, classroom training and even our very own conference.

By investing in our own community, we help ourselves build better sites, get bigger clients and serve Filet Mignon on Fridays instead of frozen pizza.

When Alex Gordon took FF Matrix and made it free again, he may not have violated any licenses or laws but he certainly violated the trust of a community that puts a lot of value in supporting the people that build the stuff that makes EE so much better than other content management systems.

And with that I have a real problem.

What We Learned

Today was a nice exhibit of community support for Brandon, Pixel and Tonic and the work he does. It was a loud “thank you” for all of the free stuff Brandon built that we all benefited from (and still do with FieldFrame). The most outspoken members of the community came to Brandon’s defense and offered their opinion of what Alex Gordon did by re-releasing FF Matrix.

We also learned that you have to be careful about what license you use when you release your software. Right now you may have no intention of ever selling your add-on commercially, but slapping a free-for-all license on it may come back and bite you. So, be careful.

Finally, Brandon shouldn’t worry about this. He’s successful because he puts a lot of work and care into his add-ons—even the free stuff. People that do excellent work will find the support of—and be rewarded by—the community.

Add-on developers that create the most useful, user-friendly software will almost always win out. Anyone who values their own time (not to mention that of their clients) would rather shell out $50 for the well-designed add-on than use a free version that has a horrible user experience.

Posted on Mar 26, 2010 by Ryan Irelan

Filed Under: EE Add-ons, Life as a Web Professional, Software

Adam Wiggall13:38 on 03.26.2010

Nicely summarized Ryan, Brandon has quite rightly earned the respect that he has from all of us, and Alex has unfortunately over stepped the mark.

There will always be those that want everything for free and morals are often forgotten, that is a shame.

Anyhow, I think I just heard the microwave go off, can’t let the pizza go cold…

TYPESETT13:52 on 03.26.2010

Nice job on the editorial. I didn’t love the tone of the original EE Matrix post. It sounded like he was betrayed or something.

Sure, you didn’t violate any laws (maybe) but you’re not even gonna go talk to the dude even a little bit?

Anyway, I hope he and Brandon can resolve it off-air. Either that or fight to the death.

Leevi Graham13:52 on 03.26.2010

Just a little more background information.

A “Matrix” custom field has been around for a while in at least two previous incarnations:

1. Mark Huot’s Multi Text
2. LG Data Matrix (my version)

Brandons version was created to allow easy addition of matrix field types something that wasn’t easy with the two addons above. This was later extracted as the FieldFrame framework by Brandon.

Ryan Irelan13:57 on 03.26.2010

Thanks for bringing that up, Leevi.

Brandon Kelly14:10 on 03.26.2010

Thanks for the post, Ryan.


Jonathan Matlock14:20 on 03.26.2010

Oddly enough I just put a frozen pizza in the oven for dinner tonight before reading this. Maybe that’s because I’m spending all my money over at Pixel and Tonic for those great add-ons. (Or I just like frozen pizza)

Good write-up Ryan.

Sean Smith14:30 on 03.26.2010

good summary.

wishing there was a way to subscribe to comments without commenting.

Justin Kuntz14:32 on 03.26.2010

Good write-up. As much as I go back and forth on this it really comes down to one thing: Does this feel right? No (thus feeling like being kicked in the nuts). No worries Brandon - just keep on doing what you do.

Cliff Wegner14:54 on 03.26.2010

It’s not cliche. There’s respect among and between the EE community that is very unique, and valued by those of us in it.

The premiums we pay for certain add-ons help show and maintain that respect. It’s a thankful respect for what those add-ons help us as developers do to make a living. EE Matrix and Alex’s attitude* is a sign that the level of respect may slowly decrease, or become more niche, as EE gains popularity and less-professional (or less-respectful) developers clamor for free stuff

Paul Burton15:19 on 03.26.2010

Fortunately, Brandon, even if your nuts weren’t made of steel ... You’d still have a very large cup protecting you.

The Community

Christy Collins15:47 on 03.26.2010

Brandon, I hope that in addition to feeling kicked, you’re also also feeling all of the affection and support out there for your work in response to this.

Folks developing professional quality sites for their organization or for clients either know or quickly learn the value of using software from a trusted and experienced developer.

I think a big problem with this is going to be the name.  Some site owners aren’t going to know that the software isn’t Pixel & Tonic’s Matrix.  It should have a unique prefix. “EE” is too generic.  May I suggest “WTF Matrix”.

Brandon Kelly15:56 on 03.26.2010

Absolutely, today has been a great reminder of how great the EE community is

Bona16:14 on 03.26.2010

An interesting point of view - Gerry Springer presents: The ExpressionEngine Matrix showdown

Ryan Battles16:48 on 03.26.2010

I feel bad for the first newbie who posts a question in the forums about how to use EE Matrix.  I’m guessing the answers won’t be pleasant.

James Buckley18:49 on 03.26.2010

The idea of an unwritten code overriding the clear and detailed license that Brandon chose himself for earlier releases is a bit on the silly side. Treating someone badly for it is inexcusable.

Brandon, I’ll still happy buy your product when it meets my need, but I also don’t feel wrong in using the free version that YOU licensed as such in the past if it fits the budgets of my non-profit clients or evolves to add abilities that are not currently in FF Matrix. Frankly I’m a little annoyed that you are claiming the moral high road on this one. You might remember me as the guy who tossed you a donation (lunch) after helping me with a FF issue.

You are within your rights to charge for new versions of the code that you have a new license on. You have the right to pull down the old version off your servers. You don’t have the right to change the license on old code that you published that specifically allows forking because it’s now inconvenient for you. I’ve bought hundreds of dollars in addons, I’m happy to pay. This was just the wrong way to deal with this.

Anthony DeCrescenzo19:11 on 03.26.2010

One thing that I did not see mentioned is the fact that Brandon essentially “grandfathered” existing users of FF by allowing the old version of Matrix (which I still use) to work with the new version of FF (still free.) He did not strong-arm anyone into upgrading by making their install of Matrix fail once they upgraded FF. So, essentially, Matrix ceases to be free *going forward*, in which case there should be no great outcry from anyone.

Am I missing something here?

I’ve said it before and I’ll say it again: the add-ons available for EE allow a developer like me to promise the world to a potential client and then be able to deliver.
At my laptop.

God bless the add-on developers, and thanks to Brandon for the truly *tremendous* work he’s done for all of us for so long. I would gladly pay $75 for Matrix.

When the time to upgrade comes, I will have no problem supporting BK with a purchase.

Wes Rice20:20 on 03.26.2010

I don’t have a problem with still using FF Matrix 1.3.5 if you personally have a copy, but simply changing the name of it and redistributing it is being a total dick to Brandon, whose extensions have saved all of our asses on multiple occassions. Is this how you want to thank him, by doing something just because you can?

All things are permissible but not all things are beneficial. There is a complete lack of ethical regard here.

Carl Crawley00:50 on 03.27.2010

I have to say, this whole debacle is an extremely sad day in the ExpressionEngine community and one which I think is going to have a long reaching impact as a whole.

I have to say, at the EECI conference in Leiden last year this very thing was brought up - there are a number of add ons that used to be free, which, as their features and support increases slowly became a commercial model.

The general consensus was that the community supported the natural conclusion of commercial addons - we’re all in this business to make money and at some point there’s a line to be drawn when the support becomes so much that it impacts on other revenue opportunities.

I wonder whether Alex would be prepared to do his work for free as well? Since he’s not prepared to pay for someone else development time - would he give his time away so freely? I very much doubt it.

I sincerely hope that the ExpressionEngine community show their gratitude and support to Brandon’s amazing work with his addons by not using this, as far as I’m concerned, substandard and now out of date, unsupported version.

I have recently done the same thing as Brandon, by leaving the confines and stability of a fulltime job to set up my own agency again - and part of this is to launch a collaborative brand offering some of the addons we have created under Creative-Commons License. It has certainly made me rethink that strategy for a moment.

At the end of the day, we’re all developers and know how difficult it is to bugfix and test our own work - it’s a damn site harder to do it with someone else code - so, how Alex expects to be able to support the product to the same level and competency as Brandon is beyond me.

James Buckley04:55 on 03.27.2010

Carl, why would you choose a license that allows forking for your free product when you don’t want that to happen? Just pick a different license for your product that allows free use but no forking and this won’t be a problem. If Brandon made a mistake when choosing the license, he should just admit that (hey we call make mistakes). I’d be less inclined to use the free version if he did, as then it wasn’t him changing his mind to go commercial, rather an oversight that is understandable.

Brandon Kelly06:27 on 03.27.2010


The license choice was intentional. At the time that I released FieldFrame and FF Matrix, I hadn

David Sims08:25 on 03.27.2010

Maybe instead of simply keeping someone else’s product “free”...Alex might consider doing what Brandon did - namely, ORIGINAL work.

For instance:

- look for problems that haven’t yet been solved and code original products to solve those problems (ie, create your own addons)

- look for original ways to improve upon existing methods of accomplishing tasks within EE (ie, create addons that improve upon base EE code)

- look for alternative ways to accomplish tasks (ie, create addons that provide alternative methods to base EE code)

I’m sure there are other areas in which ORIGINAL work could be carried out, but you get the idea.

I’m brand new to EE and haven’t even gotten my EE site online yet - and so far I’ve paid for all of Brandon’s addons, several by Levi Graham, and Travis’ Structure, among others.  And I feel with all of them that I’m the clear winner.

I’ve never, ever felt “sad” that these addons aren’t free.

Maybe it’s just me, but I think it’s a lot, lot harder to create something original that’s great than it is to appropriate others’ content and distribute it.

One of the reasons I chose to go with making an EE site is because I just love the vibes of the EE community…and to me the idea that an addon has “gone commercial” is a testament to quality, reliability, and support.  To me, that’s a GOOD thing.

Right on Ryan…a well spoken editorial…and thank-you, Brandon (and others) for some really outstanding addons!  I, for one, am pleased as punch to be able to pay for quality workmanship such as yours.

Travis Smith16:27 on 03.28.2010

I wrote a similar post, before I ended up reading this—and found it very interesting that we covered a lot of the ground but came to different conclusions.

I think Brandon could have avoided the situation entirely by continuing to make FieldFrame 1.3.5 with FF Matrix available for download for free from his own site; the fact that he removed it shows that he essentially wants to revoke the license he offered it under, and that’s really the nutshell of the conflict.

There’s an interesting thought experiment: Imagine if Microsoft had done the same thing—released an EE extension as a CC-licensed product for a while, then took away part of it and started charging for it.


Jack Tse22:05 on 03.28.2010

Travis - there is a big difference. EE2 API now has built in features rendering it practically useless. Pixel and tonic has to maintain a level of quality so he can’t release something and not support it and he has said that the time he spends supporting it is not supporting him…

Djive02:32 on 03.29.2010

I think that developers like Brandon dont need to worry about things like this..

I will allways and sure many other people in EE community buy good add-on from developers who develop add-ons with care, even free clones where avaible.

And this is additional call to me to support even more developers like Brandon, Solspace, Levi and all others people who put their time and effort in developing great add-ons.

Money is made for flowing, so make it flow to all this great people smile

Money then will flow back to you greatly in some other amazing ways smile

Paul Burton08:48 on 03.29.2010

A short lecture for the EE community (to cap this episode):

Much, if not all, of the furor surrounding the release of EE Matrix could have been alleviated if Alex has simply shown Brandon the professional courtesy of letting his intentions be known. Legalities aside, I have to attribute his decision to a lack of experience.

We should all step back and learn something from this experience. Namely, that we all need to be very cognizant of how our individual responses can impact the broader EE community.

Angry, ill-consideed responses will do nothing more than hurt our efforts to build a larger, more ethically responsible community around the CSM we love. If we act like thugs protecting our turf, it will eventually turn off new EE adopters and probably some veterans.

We are all part of a remarkable and unusual community. Amazingly, it seems to go without saying that we have one another’s backs. 

So, the next time something like this occurs, consider the impact of your response before flaming someone. We aren’t a political opposition group.

Matthew Pennell04:18 on 03.31.2010

I wasn’t aware of any of this until I read this post (not keeping up with RSS or Twitter this week), but in general I have to say I agree with James Buckley and with Travis’ comment above. If you release code under a license that allows it to be re-issued by someone else, then you have no right to complain - regardless of your ‘standing within the community’ - when that happens.

Licenses are there for a reason, and Brandon chose the wrong one in light of how his career within EE has evolved. We should all accept that and move on, not villify Alex for choosing to re-release the code as he is permitted to do.

The commenters attacking Alex for “not creating anything original” are ignoring the sentence Ryan quoted in his article: “I

E.T.Cook15:35 on 04.06.2010

I sympathize with Mr. Kelly for wanting to finally capitalize for many countless hours of work - however, I think he approached it in the wrong way.

Typically, when people go commercial with a product that was free prior, the prior version will still be available for free - with no support.  A newer version with enhanced capabilities - and - support, should be available at a premium price.

I am beginning to detest the license whores though that seem to think they have free reign based on some precept of open source that has become some kind of non-sensical mantra.  Don’t get me wrong, I am absolutely a supporter of open source projects, having been on a number of large ones myself - but damned if I’m not getting tired of the nonsense.

This quote sums it up perfectly - hat tip to DF -

“This was the weekend those of us with high standards lost their remaining residue of patience for ideologues who hyperbolize about open systems without actually creating something people want to use.”

Juca Ralho17:41 on 05.15.2010

Hummm..this situation its a little bit surreal. CC License is CC License, huh?

So, who is the guilty in this case? Brandon. For your inexperience or because he not planned your future.

He shared freely your best product and now, wanna to stop the seeds from internet, like the girl with wanna to remove all your nude pics from the cyberspace. Impossible! When she take the pictures, she knows all the consequences of your act…so…

Brandon, when released your software like CC License,

Better planning next time, Brandon.

lebisol14:57 on 06.29.2010

Well, I re-discovered this when trying to find FF matrix again.
To offer a different perspective…what do you think that the very same Community felt when it was pulled? Exactly, the same kick in the nuts only there was a lot more nuts in community that got kicked. Now throw in the fact that there is no official ‘gallery’ module in EE2.0 guess what ELab suggests to be used as alternative…and what other product ‘goes well along with it’? Hmmmm…fish-ee.

I don’t think it is fair to use community for your own beta testing and then just raise the price flag on your ship.
I have to agree with Juca Ralho above…a bit of mistake on both sides so no need for tears just be upfront about your plans.

Personally I wish EllisLab would ‘buy out & make optional’ (as forum module) highly popular and rather LARGE addons like Brandon’s.
1st…since they don’t bother to do it themselves despite the obvious need and they let 1 man ‘outsmart & outperform’ their whole team.
2nd….To give us peace of mind (certify?) and also support these in one location. Now I see posts people asking for help but get sent to developers’ sites and it gets really hard to truly evaluate the quality and cause of plugins…is it EE or a certain plugin? There is no “demo” in addons world only “x days guarantee” - not the same.
Also, they loose support of Community since no one from community can answer questions without having purchased the addons.

Just a voice from the same Community.