Thursday, 29 January 2015

Lucee

G'day:
OK, here it is. Today it was announced that Railo has been forked, and there is a new CFML engine in the community: Lucee.



I am currently at the product release event, and Pixl8 Interactive's offices in Clapham, London (", England", for my USAn readers).

What's most interesting about this is that the lead dev on Railo - Micha - has moved onto the Lucee project. And I understand Igal is also moving from Railo to Lucee too.

Lucee is available now. I've had the briefest of plays with it, and it seems as solid as one would expect of a product Micha has been working on.

The strapline from their site says this:

Lucee is a light-weight dynamic scripting language for the JVM that enables the rapid development of simple to highly sophisticated web applications. Lucee is made for the web environment, it simplifies common tasks for this environment.

I've been able to ask the Lucee Team a few questions, trying to second guess what the community would be wondering.



Why did you decide to fork Railo, and start Lucee?

The most important thing for us with Lucee is that now the community is in charge of maintaining ownership of the source. And Lucee encourages active participation with various levels of association membership.

"Lucee"? Where did the name come from?

I watched the movie Lucy the evening before and I like the Beatles song.

From my point of view a name should not be designed on the drawing board. The best names are made spontaneously... take Groovy, Starbucks or Railo (ugly Star Trek dog)

How do you see this impacting the CFML community?

Since Lucee is community driven, CFML will finally evolve in a direction that the community expects it to.

What's your target market?

Are you going after Railo's user base? ColdFusion's? Other? (This question came up when Railo came out, so it will definitely come up again now)

Lucee has no commercial interest in exploiting CFML users. The members of the Lucee Association will be providing support, training and consulting.

Lucee is v4.5

So I presume it's - at least loosely - equivalent to a Railo 4.5. What happened to the much anticipated Railo 5? Will there be one? Or will it be Lucee 5? When?

The first release we've done is Lucee 4.5, which is a fork from Railo 4.2 with additional support for multiple datasources in ORM.

We decided to go with that first, in order to have a stable release for you when Lucee kicks off.

The community driven model gives us greater control over the release schedule and you can look forward to more information regarding Lucee 5 soon.

How smooth is the migration from Railo to Lucee?

Let me quote Sean Corfield here:
"I was extremely impressed that migration was as simple as dropping in the new JAR and it migrated all of my previous Railo config! Awesome job on that."

There is a entry on our wiki that explains it in detail, but it is really simply a matter of replacing the railo.jar with the lucee.jar and restart the engine. What happens is explained in the wiki entry "Update from Railo".
The members of the Lucee Association will provide commercial support if need be.

What is the relationship between Lucee and Rasia?

And Pixl8 (given the launch is being held at Pixl8)?

Lucee or better the "Lucee Association Switzerland" is a non profit organisation (sorry I'm repeating myself) that owns the Lucee IP and like any association this one is lead by its members. Rasia, Pixl8, Ortus Solutions and Daemon are members of the association and they also have a seat in the technical advisory committee. We have chosen this organisational format because it is extremely flexible but also very powerful.

We are expecting additional members to join the association, which has only the purpose of promoting and maintaining the Lucee project.

Will there be attempts to keep Lucee compatible with Railo? ColdFusion?

For sure, this is very important for us! Especially because it is also important for our members that do projects that relies on compatibility.
However we will be lead by our community to take Lucee in a bolder direction.

What are the URLs?

For the community forum, bug tracker, etc? How do we participate?

What you need to know is one URL
http://lucee.org or if you like it shorter http://luc.ee

You will find all the links there, the project itself is hosted on Bitbucket in a Git repository, we decided Bitbucket over Git because it has a close integration from Jira the bug-tracking system.

So on Bitbucket you find the bug tracker and the wiki, you are more than welcome to participate. The mailing list is at http://discourse.lucee.org/.

What's the vision for penetrating beyond the existing CFML community, and winning users who might usually err towards PHP, Ruby, Node.js etc?


  • Excellent documentation
  • More relevant deployment options (Heroku, Docker, more buildpacks, enhanced CLI)
  • Deployment and package management
  • Being bolder about backwards compatibility deprecating old style CFML and pointless frontend tags

How do I sell to my management the switch?

At the moment Lucee is just a derivative of Railo, so you do not change the technology, you just go for a different flavor of the same technology. See and sell it more like a update from one version to another.

Now the community has the direction of open source CFML in their own hand. Decisions about the future of CFML or features that need to go into a project are driven by the community deciding what is important and what not.

I could imagine a public product backlog where everyone can see what we are working on, when it is scheduled and what is implemented next. Ala Scrum.


The question I didn't ask them because I think it would put them on the spot a bit is... where does this leave Railo? Out in the cold a bit, I think. As far as I can tell, Micha and Igal pretty much were Railo. Most of the commits seem to be his. I can't see anyone else stepping up to take their place. So I think Railo is pretty much toast.

That said, let's be realistic: Lucee is a fork of Railo, so it will be easy enough for people to simply migrate over. Obviously if you do this, use all the usual precautions of regression testing everything first, before going live.

Another question: how does Gert fit into all this? He's at the presentation, but as an audience member. I'll have to get to the bottom of this.

All in all... pretty interesting news! I think Lucee is going to have a slightly different direction from that of Railo, and sounds like it might be prepared to take more of the lead on CFML language progession than Railo seemed to be. This can only be good for the CFML community as a whole. Provided Adobe do the decent thing and follow Lucee's lead with language decisions (success here has been mixed, unfortunately).

So, to quote myself, I do think this is "The most significant thing to happen in the CFML community since 12 August 2009" (which, btw, is the date Railo went open source)! Hopefully you're not kicking your desk and going "bloody Cameron and his 5... 4... 3... 2... 1... 0... bullshit".

Anyway, time for me to get back to my beer.

Cheers!

--
Adam