ExtJS 2.1 AJAX Library Switches To GPL
Vandre writes "The popular AJAX library ExtJS released a new version today. There has been a huge controversy among the Ext community. Previously Ext had been accused of not being open source and trying to restrict its users' rights." It seems be boil down to whether the developers like or dislike the GPL, under which the library's new version is available -- the comments illustrate a long-standing divide when it comes to licensing. The foundation which oversees development explains why they've chosen dual-licensing at all.
How can JS not be open source?
Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
This is a perfect example of how blurred the lines are when using extreme copyleft licenses in a distributed computing world.
The argument made by the ExtJS team is that by having a web page that includes the ExtJS library constitutes a close binding, and that thus your entire web back-end must be GPL'd. This is, on the face of it, ridiculous.
Web pages are specialized programs, written in HTML, JS, etc, that are compiled and run on the browser. My back-end is a tool for generating these programs, which I distribute for free to all users. My back-end does NOT use, require, or in any other way depend on the front-end libraries - rather, it works in harmony with them, and with an expectation that they behave in a certain way.
That the ExtJS team is making the first argument, and that they changed the license (from the LGPL) during a bug-fix point release, is a real indication that ExtJS is not a platform on which to build a long-term business. Especially given the lack of forward communication surrounding the change.
I've enjoyed working with Ext, and will probably stick with the LGPL'd 2.0.2 release for a while, but they have garnered a heck of a lot of bad will with this potential client.
Looking for a Rails developer in Chapel Hill?
Appears that maybe Ext's forums are /.'d already.
I've been actively participating in one of the licensing threads started on Ext's forums. Try http://extjs.com/forum/showthread.php?t=33096 a little later, once the database recovers...
Since discussing licenses seems to be nothing new on Slashdot, maybe some "experts" from here can bring some light into the above thread.
In the spirit of things done by MySQL in the past the Ext core developers have decided to change their license suddenly. There is another big problem here. They are also claiming the community can not fork because they added terms onto their license to restrict who was allowed to have 2.0.2 to under the LGPL. This is absurd and against the LGPL, but it is what they are trying to do. Technically anyone who meets their requirements and then distributes 2.0.2 can then hand it off as LGPL without their added restrictions. I really hope someone forks, but as a commercial user I am scared that it will not be possible keep using Ext, especially if they take action against forks.
For anyone who is missing the point, when this was LGPL anyone could use it and have their code under whatever license they pleased. Changes to Ext had to remain LGPL, but your own application could be anything. Now GPL is used, so your application must be under the GPL. Of course that doesn't require distribution in a lot of web app cases, but it does require the license to be GPL. In many businesses this is just not acceptable. Core Ext devs know this and are probably hopeful it will lead to more license sales. I am hopeful it will tear the community apart and force them to revert their decision.
I do believe it is acceptable for the core team to change their license on their code, but it is an extremely bad business practice to do it without warning. They have managed to alienate tons of their users. I see their anti-forking clause as the most dangerous thing to the well being of the community.
I was considering buying a commercial license to support Ext and the core developers, but this kind of bad business move makes me think it may be better to look elsewhere for JS libraries. I used to be a dojo user but when they switched to 1.0 and weren't reverse compatible I decided to abandon them completely. Their lack of decent documentation and examples was frustrating to which helped that choice. I am thinking now maybe trying to go to Dojo and help the community their may be a better route than sticking with Ext. I would be much happier with an Ext fork though. The quality is a little higher than Dojo. Dojo does have some big corporate backings and BSD license. I'm hopeful it will eventually evolve into something of more quality, but it really isn't there just yet.