Sunday, April 27th, 2008

OpenEXT: The fork

Category: Editorial, JavaScript, Sencha

<>p>OpenEXT is here. It is a fork of Ext JS 2.0.2, which was under an LGPL license (kinda…. with some invalid, non-open source licensing).

The crux of the fork is:

Ext are claiming that a fork of the existing 2.0 version is not legal, due to the way they applied the LGPL. This is likely to be incorrect, and if correct then their use of the name LGPL was grossly misleading.

At this point, developers are getting increasingly passionate, and Jack needs to make a big effort and come clean to his community to save the reputation of the project. If not, it will probably always be in a cloud of darkness as people are both confused and wonder about motives. This is not about personal attacks, but due to not having clarity on the core issues.

You will notice that most of the detractors are members of the Ext community. They aren’t out to spoil some of the work that they themselves put into the project. You see the opposite in fact when you read posts such as this one from Jason Sankey:

The saddest part about this is that the Ext team really have built a fantastic library, and a vibrant community around it. The library had all the hallmarks of an open source success story. Now, however, Ext have committed the cardinal sin of an open source project: they have undermined the trust of their own community.

There are others too.

I actually believe that Jack has been given really poor legal advice, which hasn’t helped his thinking on the issue. It has thus spiraled out of control, and needs a big humble gesture to steer things in the other direction.

If I were Jack, I would call a meeting (phone, irc, whatever) and get all of the parties together. Hash it out with an open mind, and end up with the right answer. Again, this is for the sake of the Ext JS community, customers, as well as the entire open source JavaScript community. If this doesn’t happen, you are keeping the cloud around the project, and handing contributors to other projects. No-one wants to see this happen.

In my opinion the way to protect your business and the project, isn’t through a license to protect the forking. If you have a healthy strong community, any fork by someone wouldn’t put much of a dent in you… as who would go with BobsExt when they can get the real deal. Of course, the reverse is also true, and tearing the community apart will lead to a world where you will never find the true potential.

Related Content:

Posted by Dion Almaer at 2:07 am
51 Comments

++---
2.3 rating from 277 votes

51 Comments »

Comments feed TrackBack URI

I think FORXT would be a better name ;-)

Comment by andytesti — April 27, 2008

Developers: 1

Looks more like a stunt by a single disgruntled user.

Comment by patspam — April 27, 2008

Mark your calendars. This is a sad day when the once proud Ajaxian stoops to this level and promotes this rip off as news worthy. I truly expected more.

Jerry Brown

Comment by jerrybrown5 — April 27, 2008

This is completely and uterly shameless. I can’t believe you would even cover this. EXTJS is the best framework out there. PERIOD. any attempt to fork will fail. Why?? Not because some license issue, but because Jack and Co won’t be apart of it. Jack and Co are the drivers that make EXT so special. I would rather PAY for EXTJS than use openext for free. This is rediculous.

Comment by RobertV — April 27, 2008

It’s a shame Jack has decided to go and spread FUD about how open source works, and is promoting falsehoods.

For instance he claims that if your (back-end) project in any way shape or form opens and reads a file that does a src=”extjs.js”, the project must be GPL too. This is blatantly incorrect, just as incorrect as compiling a commercial .c file with gcc doesn’t make it GPL, and opening a GPL based file with a commercial editor doesn’t make the editor GPL either.

To be clear:

- Having a closed source back end + ExtJs = ok under the GPL (it’s not linked (in the sense of libraries linked at compile time) or derived work

- Having ExtJs in your web page + closed libraries in your web page, is ok, as long as the closed source libraries don’t actually call extjs (if this was untrue having different licensed files in one directory would make everything gpl too, its nonsense to think so!)

- If you make javascript (or whatever) that does ‘link’ to ExtJS (ie extends its functions, calls its functions, etc) then -that- code is GPL too.

So if you want to use ExtJS in a closed source program what you do is:

- backend that loads html / template files and outputs them, with data available either output in javascript array’s or through json etc.

Comment by chabotc — April 27, 2008

(continued from above. reached max post length it seems)
- a small bit of javascript that feeds the data to ExtJS, and only this bit of code is actually now GPL, but none of the other code is.

I take some offence to Jack claiming in his forums that you have to ‘distribute your source code’ of your back end or front end as soon as you include ExtJS in the page, this is not how the GPL works or is intended, and a back-end that reads and output’s templates is not GPL because that template includes some GPL work.

I wish Jack would ‘get’ open source and it’s licenses, it would make all our lives a lot more pleasant ;/

Comment by chabotc — April 27, 2008

A small addendum btw, the GPL also states that if you use a GPL project’s standard interfaces (the JS API in this case?) the viral clause doesn’t count.

This is akin to using GCC to compile your closed source program… the command line is the standard interface, and it doesn’t affect your source code.

The same for running your commercial program (say oracle) on a GPL linux kernel .. using the kernel’s standard interfaces (kernel calls) doesn’t make the product GPL either.

Jack’s misconstruing of the GPL and it’s nature shows his lack of insight in the nature of open source, and him using it to scare his own contributers, supporters and customers is … bad business sense really ;/

Comment by chabotc — April 27, 2008

To report on this as though it is a valid project, even mentioning you have questions as to its legality, goes to show your complete lack of ethics. Jack and the EXT team have the right to declare whatever licensing agreement they want in whatever capacity they see fit. These continued posts on the change in the EXT license are starting to sound more like sour grapes and have only solidified my original opinion of open source zealots.

Perhaps one day when you pour the better part of a year into a commercial project you’ll understand the desire to protect your IP from theft.

Comment by Sean Foushee — April 27, 2008

I don’t like the way that ajaxian suddenly has turned political. Strong personal opinions like this shouldn’t be posted as news. We need an opinion column for that.

Comment by systemaddict — April 27, 2008

@RobertV: relax. You can still use openEXT just as you used to – it’s not going to disappear because somebody forked it.

@chabotc: nice summary.

@Sean: It’s a big deal if the OpenEXT guys want to claim that their software is LGPL or GPL when they won’t in fact abide by the terms of those licenses. The Free Software community sees a challenge to the legality of such actions as very important and newsworthy indeed. it’s not unethical to fork a GPL project, and neither is it unethical in any way to report on such a fork.

If OpenEXT does not in fact abide by the GPL license, then it *is* unethical for it to distribute source code claiming to abide by the same.

@Dion: nice evenhanded post, don’t let the haters get you down. Here’s Resig on OpenEXT, this should interest you: http://reddit.com/info/6gli8/comments/c03s6s9

Comment by llimllib — April 27, 2008

To all concerned about this posting, this development is an important, and certainly newsworthy, event in the JavaScript world. Ext is one of the most notable frameworks and a possible fork is cause for discussion. Dion is posting his perspective on this issue and Ajaxian bloggers posting their viewpoints is nothing new and has been done on many occasions. Ajaxian.com is most certainly entitled to posting editorial content, as much as any other news source.

Comment by Rey Bango — April 27, 2008

I’m concerned about this statement: “At this point, the walls are crumbling, and Jack needs to make a big effort and come clean to his community to save the reputation of the project.”

This is a completely undocumented and pretentious statement. We’re talking about a few people complaining (compared to 35.000 extremely satisfied users).

It seems to me that this posting from ajaxian is an attempt to accellerate the crumbling of the walls, and destroy the reputation of Jacks project rather than saving it. Ajaxian is a powerful player in this area and with this comes great journlistic responsibility.

Comment by systemaddict — April 27, 2008

@systemaddict: the walls *are* crumbling on extJS’ claim to be GPL. If they disallow this fork, then they conclusively prove they’re not writing GPL software. (Which is fine! but then don’t claim to be writing GPL software.)
It is not the job of a journalist to defer to projects because they are “powerful players”, it is the job of a journalist to write the truth as he sees it.

Comment by llimllib — April 27, 2008

My first reaction was bad… very bad… mainly because of my ignorance on licensing. I really hope all this ‘noise’ helps a lot of us real understand legal issues a little better… so far i’m even more confused… many discussions, many opinions… so called experts on oss licensing are the one who confused me the most…
The only thing i’m not confused about is my love & respect for the amazing framework that Jack and the Ext community built and made available to us. (excuse my english)

Comment by Miguel Benevides — April 27, 2008

@llimllib
There is nothing preventing a fork of the 2.1 GPL code. Anyone is welcome to fork it. It is free and open source.

@systemaddict
I agree with that statement entirely. If CNN reported that the white house was on fire, much of the US would believe the white house was on fire. I consider Ajaxian to be the CNN of our arena.

Everything is fine at Ext JS. We are still happy about the GPL decision. For the (

Comment by jackslocum — April 27, 2008

(continued)

(less than 10%) of people upset by the license change we are trying to find alternatives (such as a FLOSS exception) and new programs (such as start-up, small business and educational) to make the transition easy.

Comment by jackslocum — April 27, 2008

@Jack Slocum
http://ajaxwidgets.com/Blogs/thomas/extjs___l_gpl__jack_slocum__bu.bb
;)
Have a NICE day :)
Thomas

Comment by polterguy — April 27, 2008

> There is nothing preventing a fork of the 2.1 GPL code. Anyone is welcome to fork it. It is free and open source.

Ah, my bad. the argument is over the previous code, and whether it was in fact LGPL or not. I apologize for any misleading comments.

Comment by llimllib — April 27, 2008

@JackSlocum: Dion categorized his post as an editorial. You can see it directly beneath the title where it says “Category:”. It’s the equivalent of a newspaper editor posting his own views on a presidential candidate. It’s no different than the countless times he’s posted very positive statements about Ext (and other frameworks) on this blog using his own style of writing.

Comment by Rey Bango — April 27, 2008

@systemaddict: Your rationale is so unfounded. If you read Dion’s countless posts praising Ext, you will see that he works hard to be fair across the board. You’re way off base in thinking that he wants to accelerate anything.

Comment by Rey Bango — April 27, 2008

Rey is right; Dion has been fair towards Ext mainly stating facts more than opinions.

Comment by RobGonda — April 27, 2008

@Rey: I’m sorry, but if Ajaxian wants to write an editorial, then they shouldn’t hide behind some tag in a post in the “NEWS” section of their site. Click on News in the main menu and tell me this isn’t positioned as such. If Ajaxian wants an editorial board making opinionated assumptions, thats fine, make a section for editorials, just don’t mark it as such with a tag in your news section. Or better yet, if a separate section is impractical, just mark the post as “EDITORIAL: OpenEXT: The Fork”. Simple, with far less confusion as to the article’s purpose and intent.

My issue with this argument is that it once again exposes the open source zealotry on the web. People who want everything to be open source need to step back and realize people need to make money to continue living to produce great projects from which we can learn. Besides, Jack hasn’t made EXTJS closed to all but paying customers, far from it, but these posts do nothing but make developers new to EXTJS believe they can’t learn the framework without forking over money for a license.

Comment by Sean Foushee — April 27, 2008

@Rey
I welcome Dion’s opinion on our license as I stated in the the post on my blog. The only issue I have is with the statement “the walls are crumbling”. A statement like that creates doubts about the viability of Ext JS which has a direct negative impact. That may not be Dion’s intentions, but that is still what it does.

Go to http://extjs.com/forum . Click on the “New Posts” link in the middle of the page. In the past 24 hours there has been 100s of posts, and I could only find one about the license change. Our community is alive and thriving. “The walls are crumbling” is far from accurate.

As I stated above we are still happy about the switch to the GPL and feel it is a great decision moving forward. We are working on ways to help the small percentage of users (both commercial and open source) who may have been negatively affected by the change.

Comment by jackslocum — April 27, 2008

I think its fair to say this whole issue could have been avoided by a little transparency on Jack’s part. There is nothing wrong with wanting to make money from your hard work, but having an open user base contribute to that hard work and build projects around that framework under the principle that there will continue to be free upgrade options sets certain reasonable expectations with that user base. As much as Jack has put a lot of time and effort into this product, there are many others that have as well and there are alternative libraries out there that community members could have chosen to implement in their projects that will continue to see support without monetary commitments.

If Jack had the courtesy simply note his concerns about the license and milestone the change giving plenty of notice for new or existing projects to make a conscious decision to continue with the library or move to another library then it would be a lot less of a problem. Changing the license at a mid-level update is frankly bad business and its not surprising people are upset. Personally I feel that this should have come up at Ext 2.0 with plenty of warning during the alpha/beta stages.

I’d also like to note that a lot of the time people comment “its a great library you should pay for it”. This is reasonable in a lot of cases, however not everyone can. Jack’s library in my opinion is reasonably priced, nevertheless budgets are setup for projects ahead of time and with a tight budget this unexpected expense is understandably making people upset.

Comment by OwenL — April 27, 2008

@jackslocum – “I consider Ajaxian to be the CNN of our arena.”

Have you actually seen CNN (on TV) lately? At least a third of their daily programming is editorial in nature, if not more. I think Ajaxian can be forgiven for posting an editorial piece every now and then, especially since — unlike CNN — they clearly mark it as such.

Comment by michaelhart — April 27, 2008

Sounds like a mess. I’d recommend Evan Phoenix’s talk on his experience and desires for leading an open source community:
http://mwrc2008.confreaks.com/01phoenix.html

They use distributed version control (Git, or others like Mercurial or Bazaar). Forking and merging those forks becomes technically easy. Free software is about sharing, which means letting go of ownership.

As humans we care a great deal about what we create. It’s natural to want to protect it, and a hard step to say this isn’t mine, it’s ours.

Comment by nathany — April 27, 2008

I wish I could help pay to feed the developers of ExtJs. It’s the best AJAX library I’ve seen on the market and the LGPL for non-profit companies REALLY helped get my work done. I tried to show that through submitting bug-fixes where I could. Unfortunately most of my projects don’t have the money for an Ext Commericial license and we are unable to open-source our code (This was th reason we choose Ext in the first place).

I’d like to say that even though my (not-for-profit) company could benefit from an LGPL version of Ext, I still question the legality of OpenExt, and refuse to use it. I’m hoping a better licensing alternative comes from Ext soon, otherwise we’ll have to choose a new library.

Comment by JoshSuereth — April 27, 2008

This has been a public relations trainwreck for Ext, and I think OwenL accurately points out the underlying cause. No one has ever denied Jack & Co’s skills as developers. The only area where they seem to have trouble is in effectively communicating future plans (as exemplified by the foot-dragging on putting up their roadmap, which by the way, would have been a good place to announce an upcoming change in licensing). If there’s anything to be learned from this experience, its the importance of transparent processes. No one likes surprises.

Comment by scottmartell — April 27, 2008

1. Its so sad to see people dissing Ajaxian for an _Editorial_. It’s a bloody editorial, people. And the people behind Ajaxian (a _Blogger_ site), have all the right to post their opinions on any matter.

2. IANAL, however, if ExtJS was in fact, LGPL before 2.1, then everyone and their grandma can fork it. And that is a big IF. Furthermore, if ExtJS circa 2.1 was not LGPL, the validity of its license would be highly questionable.

3. There is nothing wrong with creating a fork of an OS product. If we look back, there have been countless forks of various software. Some of these forks happened for the same reason, OpenEXT vs ExtJS (XFree86 vs Xorg is a prime example). That being said, people are free to choose which fork to support. There is no need to spread hate in any one direction.

Comment by urandom — April 27, 2008

Did anyone actually read the description of OpenEXT?

“OpenEXT is a non-fork of ExtJS. This project will release patches on top of ExtJS 2.0.2 rather than redistributing full modified versions. This is to bypass any legal issues in face of conflicting license claims by ExtJS vendor.”

Comment by Dylan Schiemann — April 27, 2008

I still question the legality of OpenExt, and refuse to use it.

Unless Ext, LLC’s lawyers say otherwise, Jack (perhaps inadvertently) gave permission for OpenEXT to exist in another licensing discussion:

My understanding is that as long as extensions are not being distributed with Ext included, and assume that Ext is already there (similar to a shared library) then they can be under any license they choose.”

The OpenEXT project, which describes itself as a “non-fork”, includes no portion of ExtJS itself, and assumes the prior version of ExtJS is already there. Its purpose is to distribute patches and extensions to those who are already licensed to use that version.

Comment by michaelhart — April 27, 2008

@Dylan Schiemann

Yet here we are, discussing spoons and forks in all previous comments. Regardless of what the article says, since OpenEXT effectively splits the development path of the ExtJS project (they will provide patches on top of an existing version, which in some way or another introduce incompatibilities with the main branch), it is a fork. The term ‘fork’ was not chosen for this type of action, because it can be used to eat food, you know.

Comment by urandom — April 27, 2008

I think some of the commentors here need to research the real meaning of open source. It is “free” as in “free speech” not as in “free beer”. If you are not free to fork a project, then that project is not open source. So either openext is legal or ext.js is not open source. You can’t be half pregnant and free speech should not be conditional on what you say!

One of the main points of open source is that your use of the software is non discriminatory. I note the following words from Jack Slocam:

Ext JS 1.0 is released under the LGPL, minus the Assets license as mentioned above. Shortly thereafter 2 major publicly traded corporations (names withheld) embedded Ext JS into their development frameworks. With no mention of Ext JS except in credits files that no one ever saw. No support for all the work that had been put into the framework. Neither one of them even contacted us. How can that be possible?

Welcome to the dilemma of an open source business: if you open source it, you can’t stop people using it for free, but if you close source it, then nobody will use commercial software from a small company. It appears that ext.js was trying to have it’s cake and eat it too. It was trying to get the benefits of opensource, but without granting the full freedoms of open source.

However, it now looks like ext.js has switched to using the full GPL without any extra conditions. Excellent! If that was as a result of the fork, then the fork has done a good thing of pushing ext.js to be really open source.

For those that criticize Jack’s ethics or business practices, let me say that it is very very vary hard to run an open source business, so give him a break and the benefit of the doubt. I expect he is more motivated by keeping his head above water rather than raking in the millions. I believe he may have made some optimistic interpretations of the LGPL to help to that end, but hopefully the switch to GPL will have resolved that. For those that want LGPL, the openEXT fork may be for them?

I expect (and hope) that Jack will find that his business now goes better with a real open source license, as large commercial users are much happier working with standard open source licenses than working out the details of special cases. I hope the commercial users respect the effort that Jack and community have done and consider support contracts and/or commercial licenses.

But Jack has to realize that the open source business model is about making a return out of

Comment by Greg Wilkins — April 27, 2008

Jack,

I apologize for the terminology used and I changed it. I don’t want that to be the main issue.

I believe that between this post and the one right before it, I have been pretty fair.

I repeat the fact that I think you have done outstanding work with Ext JS, and I can’t wait to see it continue.

it is *your business* and not mine or anyone elses, so you can of course do whatever you feel is right. Just as you have that right, others can disagree. I am hopeful for a coming together because I want to see Ext JS grow to its full potential, and I worry that it will never be able too if people keep pulling up the license issue.

I also personally do believe that this issue has spiraled, as these things can. I have nothing bad to say about you, and I do like to believe that there is no conspiracy theory here.

I look forward to a time where we can grab a beer and remember the crazy time that must have truly sucked for you…. but at least it is behind us.

Cheers,

Dion

Comment by Dion Almaer — April 27, 2008

I am the maintainer of OpenEXT and would like to share a comment about its motivations as well as invite everyone here to participate. First of all, I would like emphasize that the intention is not to steal Jack’s work or tell him what he can do with his code. My primary purpose of starting the project is to comply with terms of LGPL, which states that I must make my changes to the licensed work available under LGPL with no additional restrictions.

In any normal situation, this would be accomplished by contributing patches back to original author. However, Jack blocked this possibility by dropping LGPL license option from the official ExtJS version. I am not allowed to distribute my patches under GPL, as it constitutes placing additional restrictions over GPL.

Baring contributing the changes to the official release, another commonplace solution is distributing the modified work with the contributors changes included. I tried this first with OpenEXT and Jack told me to “talk to licensing lawyers” and that “his legal department” told him that his license only permits redistribution of “assets” – images and CSS – with unmodified ExtJS.

Unfortunately I am not at the stage in my efforts to start a company where I have license lawyers or a legal department. I have no interest to fight with Jack, legally or otherwise. All I want to do is finish and distribute my applications on terms that any reasonable person would understand from ExtJS 2.0.2 license. If I have to make some concessions, fine, as long as they do not involve me discarding 9 months of my hard work.

I can not use commercial license because I frequently ask friends for free or low cost help with my code. Per Jacks terms, I would have to buy 20 licenses for one full time developer (myself). I do not have this kind of money.

So what I am going to do is follow restrictions that Jack claims on Ext 2.0.2 license, although I do not think they are legally enforceable or ethical. Instead of distributing my patches together with Jack’s assets or stripping additional restrictions from his license, I will make my patches work strictly on top of a virgin 2.0.2 distribution. Fortunately, dynamic nature of Javascript means that this does not pose any restriction in practice as any class or individual method can be trivially overridden.

I do not see how this can be objectionable if one concedes that ExtJS 2.0.2 license allowed it to be used with regular programs, as programming techniques for overriding methods are identical those for subclassing Ext classes or specifying OnClick handlers. At the same time, I am satisfying LGPL by releasing my patches accordingly. Jack will be responsible for compliance with LGPL of his own library for any of my downstream customers.

I will even package my patches as part of a usable AJAX application licensed under LGPL so that Jack does not complain about me distributing “development libraries”.

The only thing is, I don’t see how making me jump through all these hoops benefits Jack any more than just admitting the mistake in composing previous license and allowing us to use old versions of ExtJS on terms widely understood from the license document. If he is so “creative” with old free license terms, will people trust his commercial license? Given that users will anyway use and contribute to old versions of ExtJS, although having to jump through the hoops, wouldn’t it be better to just relicense old versions under BSD license? In this case, he can at least reapply any bug fixed and enhancements to his GPL+commercial new sources.

Comment by catplusplus — April 28, 2008

@Sanji
You ARE allowed to apply ANY license you WISH on your own Intellectual Property which means that you CAN release your own work as GPL or whatever license you see fit as long as you also apply to the license of the code you’re building derived works of…

Comment by polterguy — April 28, 2008

We need Obama to deliver a landmark speech on this open source controversy.

Comment by ladder — April 28, 2008

RobertV said above, that he would rather pay for Ext than use openext for free; I had been on a fairly big (but local) web developer conference, where the main GWT guy’s first reaction to the licensing issue was that he would fork the code and live happily ever after. Instead of paying; in a big, commercial project :((

Comment by deadcabbit — April 28, 2008

@DeadCabbit
I once talked to a guy which rather would want to have free beer at bars and night clubs than to pay for them himself…

Comment by polterguy — April 28, 2008

Hi, i don’t know a lot of licencing but i think that you should can fork the ExtJS library from is last LGPL version, and if it was an “altered” version of the licence it should never had use that name… or it means nothing. Maybe FSF should see what developers are doing with their licences. Or its changable and redistributable or it simple had used LGPL ilegally… not that i have something to do with this… i love prototype/scriptaculous, but i i think that thanks to Jack Slocum developers are losing is trust in opensource licences… and they should… a lot of them are changed and distorted of its original meaning. Maybe FSF is only doing licences to do it, or maybe ExtJS is simply not important enought for them.

PS: That ExtJS rest in peace.

Comment by mangaru — April 28, 2008

@polterguy

I once heard about a guy who walked into a bar and handed out free mugs of good beer to everyone. He told each customer that the beer was provided under BNBBL (Brewer’s not Beer Beverage license).

Later, the guy changed his mind and said that he will only distribute his beer either under BNBL or under a commercial license. BNBL granted him full “Quid pro Quo” access to anyone who let him buy her a drink, while the commercial license made you pay $200 for yourself and $200 for anyone who had even a small sip of your beer.

Most people were cool with that and planning to just drink the beers they already got and head home. After all, it’s his beer and plenty of people buy us drinks without implying any obligations. However, the guy then started going around the bar and trying to pull out half-consumed beer mugs from everyone’s hands. He was muttering about how the mug and the drink holder were actually licensed differently from the beer itself. He said that his “beer licensing team” was on the way to make people give back the beer or else.

At this point the guy who was telling the story erupted in profanities and fell asleep, so I don’t know if the beer guy won his fight. I guess a lot depends on weather anyone in the bar was a bigshot with a bigger and meaner “beer licensing team”.

I do doubt very much than anyone wanted any of this guys free or commercial beer ever again. But if he came back to the bar with an apology and one final round of cleanly licensed free beer for everyone with no strings attached, we would certainly consider paying for his future products or support services again.

Comment by catplusplus — April 28, 2008

@catplusplus
Hahahahahaha!!!!!! :P
BRILLIANT! ;)
Well, I don’t agree with the process Jack has done in regards to changing license, though I DO agree that it is HIS work and that people are trying to “outsmart him” by creating “walkarounds” the legal clause he has behind denying people to fork his previously “kinda LGPL license” I don’t think is ethical to do…

Comment by polterguy — April 28, 2008

catplusplus, Just for fun:

I once heard about a beer brewer who walked into a bar with beer and handed out mugs of good beer to everyone. On every mug of beer was a label with the recipe. In his hand he held a sign:

“Free beer.”

Soon, many people heard about the beer and the bar started to fill up – so many people he now needed help brewing and pouring the beer. Many people were now helping to pour the beer but he was very particular about the taste of the beer and needed to hire connoisseurs to help with brewing it. After discussion with the beer drinkers, he changed his beer policy to something they mutually agreed. Since he was now responsible for the people he had hired, he was advised to give his recipe some protection so people wouldn’t use it to create a duplicate beer. So he made a new sign and stuck it up on the wall.

The sign read: “This beer is free for you to consume. But if you sell it and make money off it, please kick in on the brewing. You may use the recipe on the mug to produce beer for yourself but you may not give beer produced with the recipe away.”

The bar continued to fill with people who had all heard of the free beer. Many of these people were not around when the initial discussion took place, did not bother reading the sign stuck on the wall and all they heard was all the talk about the free beer.

Then some expert beer drinkers, armed with sign readers came in and started saying the beer wasn’t really free beer because the sign made it so you couldn’t even give beer produced with the recipe away for free. Free beer couldn’t have those restrictions.

So the brewer changed the beer policy again, this time instead of asking that those that sell the beer to kick in on the brewing, the are now required. He took down his sign and replaced it with a neon billboard to make sure the message was clear and visible to all.

The sign read: “This beer is free for you to consume. However, if you plan to sell it to someone else and make money off it, then you are required to kick in on the brewing. You may use the recipe on the mug to produce beer for yourself and if you want to give the beer you produce to others you can as long as you create a sign like this one.”

Some beer drinkers, now drunk, decided that the brewer had scammed them into thinking they were getting free beer. They called him names, said his first sign was BS and decided to use the recipe and start a brewery anyway. The brewer, advised that his first sign wasn’t BS tried to deter them from making that mistake. One beer drinker, who also liked cats, decided to instead create preservative for the old beer attempting to make it last forever.

Comment by jackslocum — April 28, 2008

@Jack
Hahahahahahahahahaha…..!!
Your was WAY funnier Jack :)
I think that was a pretty accurate description of what’s happened, yes indeed ;)
BTW, I think we’re writing “free beer” history here… ;)
Get a hold of Stallman, his “Free Beer” quotes definitely needs revision :)

Comment by polterguy — April 28, 2008

I actually don’t mind the second version of the story. All I want to do is put a piece of lime in my beer mug and consume thus modified beer for my own use. The only trouble is that the free beer sign also required me to disclose any cocktail recipes I come up with to the public under BNBBL license.

I have no intentions of starting my own brewery. Perhaps the original brewer can take up derivative brewers directly and leave me out of the loop. I do see it as my right to make use of any other cocktail recipes that other contribute under the required BNBBL license.

Comment by catplusplus — April 28, 2008

[DISCLAIMER: the following represents a personal opinion and in no way reflects the opinion and approach of either my employer or any open source project I contribute to. You have been informed :)]

You know, not for nothing (and I know that some of my colleagues will not be happy I’m posting here), but…the question isn’t one of “it was free and now it’s not”. The real questions surrounding the license change (and Jack’s interpretation, at least from the rest of the controversy around this) is *what kind of limitations these terms impose upon your own software development, should you choose to use this codebase*.

Jack has every right (and should–we all need to eat) to determine how and under what terms his codebase is released. And for many, the viral nature of the GPL is there, in theory, to encourage releasing code as open source. And it is extremely discouraging when others (particularly companies formed to profit from your work without sharing either revenue or credit) simply interpret an OSS license as “I can use this without reservation”.

However, the reality remains–I would like to have some modicum of control over any source code I write, whether or not that means I’m giving it away under something like BSD or I am releasing it under a commercial license. If I write a CMS (as an example) and decide to base my administration on Jack’s code, having to release under the GPL can make sense–as long as I’m aware of those terms before I make the choice to take advantage of Jack & Co.’s fine work. If I’m not keen on the GPL (and personally I’m not), then I have every right to decide to use something else that fits better with my own goals.

I think the reality here isn’t so much the license change (as much as I personally don’t like the GPL, and I went through a bit of this when I wrote the ye old f(m) toolkit, which I released under the LGPL and regretted)–it’s the timing of it. Had it been me, I would have considered this license change to be worthy of a major release number (no matter if the actual functionality changed a lot), and I would have given plenty of warning to my existing user base before making this change.

Oh well. Lessons learned, and all that. For my part, I hope that the controversy does not make a discernible long-term impact on Jack et al, and that everyone as a community can learn from the experience.

(btw, it really drives me nuts that you can’t put p tags or at least line breaks in these comments…)

Comment by ttrenka — April 29, 2008

LOL @ Beer Story!

I think Jack/Ext simply did the inevitable; there are simply too many tire kickers wanting the world for free; and just as many thieves ripping your IP without any legal consequence. There have and always will be such people, those that complain as this “elucidation” of terms are just a manifestation of this crowd’s lamentations.

GPLV3 is only restrictive in the fact that you cannot redistribute Ext with a closed source license under this license’s umbrella. Ext has that if you want to redistribute in a closed source app – you should have paid up for a commercial license in the first place. The gripe seems to be “confusion!!!”, this has always been clear on their license page IMO.

We actually donated $$$ from the get-go before the verry first license change, and Ext/Jack actually forwarded twice what we had donated towards the price of the commercial license. That’s the kind of folks these guys are.

Continuing, I think that maligning Jack/Ext or qualifying it as “crumbling” is absolutely ridiculous. This article reads like a forum troll’s scribbles.

Where Ext is concerned, having wasted tons of time on absolutely every other AJAX framework out there, Ext is simply superior. If you are profiting from a commercial project that uses Ext, I don’t see why you would be so agitated as to pee in Ext’s cereal with license woes. Pay up. It’s cheap.

Comment by Saeven — April 30, 2008

I have to say this was to be expected ever since Ext started offering “commercial licenses”. Considering Jack’s hard work, I wish him the best at turning Ext into a viable long term business. Though I must say I wouldn’t be surprised if Ext gets into further IP issues. Since Ext evolved from yahoo’s BSD code and I fail to see any copyright notices left. I wonder how much ‘theft’ was there as well. I personally feel Ext should stay LGPL and rather focus on support and services. Time will tell what the good choice was…

Comment by jbondc — May 2, 2008

I was using ext for one of my projects and was updating some stuff when I came across the ext licensing brouhaha all over the internet. I must say the licensing terms appeared sneaky from the beginning when I started using the library, but since what I wanted to use it for appeared to be LGPL licensed, I decided to go along with it. One of the major reasons I decided to use it was that ext appeared to do some pretty amazing stuff and with a really nice interface. BIG MISTAKE. The library was horrendously hard to learn and to use and debug, not in the least because:
a) For a lot of the stuff in the API (which appeared to be well documented but was really not because a lot of it was just repitition of not very helpful comments) there was no contextutal information which can quickly tell a developer how to use the api (to get an idea regarding what I’m talking about, see jQuery API). Even YUI docs are better than ext.
b) Second, but more importantly, noobs were treated like crap in the forums.
Anyways I went along since the benifits seemed to outweigh all that. With the benifit of hindsight, it is now clear why it was not in the best interests of the Ext team that the developers learn to use the library easily and on their own – or how else would they make support money? Also, lacking the budget for as big a testing/development team as the open source comuunity, it was in the ext owner’s best interests to keep the real nature of their motives hidden until they had a commercially viable product ready.

This licensing fiasco is really the last straw. I really don’t have a problem with paying, its the sneakiness on the part of ext people that annoys me. I don’t care how many hours I spend porting over my code, but as of now, I have thrown out the ext-js library from my project.

Comment by digitalwarrior — May 25, 2008

and what is it with Jack dragging his kids into every discussion?

Comment by digitalwarrior — May 25, 2008

After one year now, what is the status of all theses fork ?

Joking :)

Comment by franck34 — April 18, 2009

Leave a comment

You must be logged in to post a comment.