Archive for November, 2008

Good Open Source News for a Change

Wednesday, November 19th, 2008

With all the negative news related to Java-based open source in the past couple of months and Sun’s cloudy forecast, the announcement that SmartGWT has arrived is a ray of sunshine.  However, the comment about it using standard LGPL is a little worrisome, and the code license on the project home links directly to gnu.org instead of a clarified version.  I hope that the SmartGWT/SmartClient people follow through with their promise of an explicit LGPL non-contamination clarification within the license itself to match GWT-Ext.

http://abotar.com/blog/2008/08/20/smartclient-to-outsmart-ext-with-smartgwt/#comments

GWT-Ext license

http://gwt-ext.com/license/

In the aftermath of the recent open source turbulence, it seems foolhardy to evangelize any open source framework unless it inspires absolute confidence.  After all, open source frameworks not from a foundation seem to be increasingly likely to change their terms of use unfavorably as they gain popularity.  The creator of SmartGWT has a good record so far with GWT-Ext though, so I will give SmartGWT the benefit of the doubt.

Meanwhile, I will continue with my cautious evaluation of SmartGWT.  If everything works out as well as I hope, it may become a key framework in my RIA toolkit.  So far, SmartGWT looks good from my early evaluation.

Alpha Release

Tuesday, November 18th, 2008

In case anyone is reading this entry from http://abotar.com/blog/feed/ or http://abotar.com/blog/comments/feed/, please change your feed bookmark to http://abotar.com/blog/category/technology/?feed=rss.  Thank you.

Getting off the Grails and Groovy Train

Wednesday, November 12th, 2008

Previously, I wrote that Groovy and Grails are too risky to use, and this idea is now supported by G2One agreeing to be acquired by SpringSource.  The backing of a common venture company for G2One and SpringSource probably facilitated this acquisition.  Considering that SpringSource publicly praised MySQL as having a good business model, SpringSource may add additional restrictions to its offerings just like MySQL.  Ext is another company that endorsed the MySQL model and ultimately followed the same path.  Both companies spout quid pro quo often when it benefits them and sometimes refuse to give straight answers to simple questions.  Will SpringSource pull an Ext and make the switch at a minor release after most Spring users convert their code over to Spring 3?

Even if the terms of use for Groovy and Grails do not immediately change, Grails will not support any fork of Spring Framework in the future.  The FAQ indicates that Grails may use the same maintenance policy - apparently meaning limited free minor releases - as Spring Framework.  The venture capitalists behind SpringSource will probably not tolerate Groovy and Grails making a lot less in returns than Spring Framework indefinitely, especially as all venture-funded companies are tightening their operations.  This suggests additional restrictions, license change (an FAQ is not legally binding), or cancellation for Groovy and Grails down the track.

So if Groovy and Grails are no longer attractive options for some Java developers, what other choices are there?  Given the massive performance issues of Groovy and Grails, Scala and Lift augmented with something like JavaRebel could be a better solution since Scala may actually run faster than Java on the JVM.  JRuby on Rails and Django on Jython are other options.  If you have to learn a new language anyway to use the next generation JVM frameworks, it seems better to stick with overseer organizations that are more trustworthy and less controversial.

If you really must stay with a Spring Framework stack, it might be safer to use Spring Framework with annotations as a substitute for Grails.  There are many established examples like AppFuse that you can use to get you started.  If you are only using Spring Framework for dependency injection, transactions, and maybe AOP, it should not be too hard to migrate to another solution like Guice.  Considering how quickly Free Spring (formerly freespring.org) was organized, Spring Framework probably has a 100% chance to be forked successfully if necessary.  Right after the Free Spring announcement, SpringSource may have realized the threat and therefore suddenly claimed to embrace community opinion.  However, Groovy and Grails have much smaller communities and low chances of successful forks, so no threat of a Free Groovy/Grails there.  As for using Groovy by itself, there are so many arguably better dynamic languages running on JVM that it makes little sense now to use Groovy unless you absolutely need the stronger Java integration.