Well, the cat is out of the bag now.  Railo, the free open source alternative CFML engine to Adobe's ColdFusion Server has been forked and reborn as a new product called Lucee.  I was lucky to be part of the launch party (via webcam) that happened this morning in London.  This is a major event in the tiny CFML eco-system and it's understandable that there's a  lot of questions floating around and confusion on just exactly what has happened.

There are a lot of large open source projects that have forked before.  For instance, MySQL spawned MariaDB, OpenOffice, begat LibreOffice, Hudson turned into Jenkins, and even recently Node.js was forked int IO.js.  In some cases, the original project continues alongside the new one.  In other cases, the old project basically sits there and everyone stands up, shuffles over to the new one, sits down and continues as if nothing happened.  I personally think Lucee is going to be more like one of those.

I'm throwing together this post to address some questions that have come up over and over again today.  Hopefully they will be answered more fully by the Lucee team as they dig out of this major announcement, but in the mean time this is a compilation of some answers I've given multiple times today around the Internets.  Please note, I am not speaking on behalf of Lucee nor Railo, these are my opinions and observations mixed with some info I've picked up along the way.  I'll happily accept corrections or clarifications in the comments.

What Happened To Railo?

Well, technically, absolutely nothing.  Railo is still Railo.  Even though it's stalled out on the side of the road, it probably won't go anywhere soon.  You see, what most people (including me until recently) don't realize is that there are two separate entities that most of us just lumped together without realizing it when we referred to "Railo".  The first is Railo Switzerland.  This is the company that the familiar names like Micha and Gert worked for and it was the major contributor to the Railo project.  These guys created Railo back in the day, but they no longer "owned" it.  This is where The Railo Company (TRC) comes in.  TRC is a group of companies who bought the Railo trademarks and in turn, agreed to invest into it.  Software isn't free-- even open source software.  This distinction has been invisible to most of the CFML community, and frankly it never really mattered to any of us until now.  

What has happened is Railo Switzerland has stopped supporting the Railo project owned by TRC.  

A few people have also asked about the Railo relationship with JBoss.  According to Sean C, it sounds like that was really more in name only.  But basically, it won't change-- nothing in Railo is really changing.  Lucee will have no such relationship to my knowledge-- at least at first.  Some people have had interest in whether Lucee is courting any mainstream companies to take a slice of their pie.  We'll see what happens there.

So, What is Lucee?

Lucee is a fork (copy) of the Railo code, named after the recent movie "Lucy".  It is owned by a NEW entity called Lucee Association Switzerland (LAS) which is a non profit organization.  Lucee currently has no employees, but it has companies and individuals who are part of the association.  By Swiss law, associations are very powerful organizations that allow for a very flexible controlling group, without any one party having full control.  Paying members can vote on important topics and the members of the association decide what happens together.

Current companies who are members in Lucee are familiar names such as:

  • Ortus Solutions
  • PIXL8
  • Rasia

Rasia Switzerland is a new company that Micha is now part of.  It is the founding member of LAS and the primary contributor just like Railo Switzerland was the primary contributor to Railo.  The difference is Rasia and all the other members collectively have full control over what the association does in the future.

But... what about me??

Lucee's members aren't the only people with say in what happens to Lucee.  Any company can become a paying member of the association, or can participate at a lower level as a "Supporter".  For $9/mo you can be a Lucee Supporter with perks like conference discounts and access to the internal affairs of Lucee.

The good news is you don't have to pay anything to be a part of the Lucee community.  The paid memberships and Supporters are just to fund the non-profit and help cover its development.  The general community will, as always, have a say in Lucee's features, direction, and documentation via the new wiki (which is already touted to be bigger than Railo's wiki ever was).  Anyone can participate in the list, anyone can enter tickets, anyone can submit pull requests just like always.  The difference is that now the "little people" in the community have a chance to actually be a tangible part of Lucee in a way that no other CFML engine including Railo was able to offer.  This distinction is both exciting as well as a very key difference between the projects.  

Why can't it stay "Railo"?

Railo is a trademark owned by The Railo Company (TRC) and has been for years.  TRC still exists and still holds those trademarks.  When Micha and the team started this new venture, they had to pick a new name.  It sort of sucks to lose your branding like that.  It's taken years for the Railo name to really get traction in our community, and now it's changing to Lucee.  Unfortunately, there's not really a way around that, and trust me when I say this was the last resort.  There simply was no other option to keep the Railo name and re-birth the project with the new flexibility and community integration that it has now.  

What Happened?

Forks and new companies don't just happen for no reason.  Why couldn't things be worked out with TRC?  Well, to put it succinctly:

  • I don't actually know the details
  • It doesn't matter

The core Lucee team can share in the future more details if they feel like it, but I simply know it was the only way to move forward and the details are largely irrelevant now.  What's done is done.  Our future is ahead of us, it's darn sexy, and it's called Lucee.

What will become of Railo?

Honestly, I don't know.  The sites and code will mostly likely stay around for years to come, but I don't expect to see another Railo release again.  4.2 is where she ends.  Lucee 4.5 is basically a lateral move.  It picks up right where Railo left off.  Micha said today it's basically 4.2 with some patches including multiple data source support for ORM.

Railo 5?

Never gonna happen IMO.  However, very soon Lucee 5 will roll out.  It has all the kick-butt features you've been hearing about-- OSGI, rewritten core, JSR 223, etc.  We're still on the same train, we've just jumped over to a new track now.  As far as I know, all the same roadmaps are still in play.  Of course, I'm sure that comes with no hard promises as usual.

On this note, it has been stated that the existing tickets in the Railo JIRA system will NOT be auto-converted to the Lucee JIRA.  I'm unclear on the reasonings there (and not a big fan of the decision). It will be interesting to see what becomes of the 1,167 unresolved tickets in the Railo JIRA account.  About 25 of them are mine, so if nothing else, I'll be manually entering those again into Lucee's JIRA account.

What about the new tools?

A lot of you have recently some cool new Railo tools showcase at CF conferences.  My understanding is those are all still coming-- just as a product of Rasia.  I expect to hear more about them real soon.

What does Adobe think?

I have absolutely no idea.  I'm sure they're curious, but frankly I don't think it changes anything for them.  I still see Adobe ColdFusion and Lucee as complimentary products, who help each other and interest different markets.  It would be nice to hear Adobe's thoughts, but I won't be sitting by the phone.  

How hard is it to switch?

Really freaking easy.  Ok, I need to admit I haven't actually does it yet, but I will very soon, and I'll blog about it too. Sean Corfield already has his large work site switched over and has been saying how seamless it was.  All you basically have to do is:

  1. Stop Railo
  2. Swap railo.jar for lucee.jar
  3. Start your new Lucee server!

Yeah, it's supposed to be that simple!  My recommendation is to just do it now while the two projects are basically neck and neck so you don't get left behind.  Railo releases had slowed down, but I expect Lucee releases to start happening very quickly.

I'm scared!

There, there, don't be.  This announcement has no doubt been unsettling for a lot of people.  "Losing" Railo is a big deal and honestly I'm sure some will need to mourn that for a while before they can move on.  This is open source in action though!  It's a fun ride, and I actually think this will help add momentum as it gives people something and fresh to rally around.  If your boss isn't sure about the future of CFML now, try o reinforce that this is a step forward for CFML.  Honestly, it sets up CFML to be supported by companies and individuals alike in a way that was never possible before.

Are you still using Railo?

Not for long.  I'll be converting all my personal sites, blogs, etc ASAP.  ColdBox 4 already supports Lucee.  CommandBox will also be converted to Lucee as well.  I'm leaving nothing behind.  

Well, that was therapeutic!

Good.  It's a lot to digest, and things are still settling down.  Micha has now appeared over on the new Lucee forum and is answering questions.  It's nice to see his face around again.  It will be interesting to see how this all shakes out, but I am very excited about the future-- especially since I have a new level of CFML collaboration to look forward to.  In the mean time, I think it was Mark Drew who put it roughly like this:

So, my take away from all this is:

#replaceNoCase( serverName, 'Railo', 'Lucee', 'all' )#