Thoughts on CFML after DevObjective

Author: Steven Neiland

Warning: This blog entry was written two or more years ago. Therefore, it may contain broken links, out-dated or misleading content, or information that is just plain wrong. Please read on with caution.

So its been a little over a week since I got back from devobjective and my mind is still processing everything I learned there. I like the new direction the conference is going, expanding to include other technologies. For far too long the trend with cfml dev's has been to ignore the rest of the world. Well I'm glad that the conference organizers realized that we can't keep our heads in the sand forever.

With that said, I actually dont feel a need to discuss all the new things I saw, instead somewhat ironically I want to focus on cfml today.

Adobe ColdFusion

Lets start with the elephant in the room, or in this case not in the room. Adobe was conspicuous in their absence at the conference this year. Not only did they not sponsor it, they had no stand, in fact they did not even send a single representative (that I ever saw anyway). Now I know that they have started their own cf dedicated conference cfsummit so maybe funds were tight...but to not even send one person?

Not only that, but I've been hearing of emails beings sent from adobe to some user groups saying that adobe was withdrawing support for them. Now what this means I have no idea since from what I've heard "support" meant an email every year to say keep up the good work, but it still makes me pause.

Now ColdFusion is not going away, I have no doubt about that. It is too big a cash cow for Adobe to walk away from, but that does not mean that its going to grow significantly either. Like cobol there will always be jobs in it, but I wouldnt count on Adobe pushing the language to new heights of popularity anytime soon.


Then we have Railo. For a long time development of Railo had stagnated with only minor patch releases for the past two years until a surprise fork this year created Lucee which I will talk about in a minute.

Staying on Railo for a minute though, everyone had thought that the fork had killed Railo until a blog post just a week before devobjective -message-from-the-majority-shareholder-of-the-railo-company . To say this post is controversial would be an understatement. Now everyone has an opinion on it, but for me three things are clear.

  1. This post was made by a single shareholder who represents 1 third of the votes in the railo company without it seems the support of the other two.
  2. Since then nobody has made any official followup to any of the questions posed in the comments.
  3. A careful reading of the post implies a lot without ever actually stating anything actionable.

At this stage it appears to me that Railo is dead in the water and that despite this post nothing is likely going to be done to resurrect that project.


Now to the new kid on the block, Lucee. Well it really is not the new kid. For all intents and purposes Lucee is just a continuation of Railo. It has the same developers that Railo had, it was forked from the Railo code base. Switching to it is a case of swapping out a single jar file. For all intents and purposes Lucee is the same product we have used for years.

So is anything different, is this really a big deal? Well the answer from my perspective is, it depends...

Technical Perspective

If you are a manager or a developer and are wondering if you should be worried about compatibility between your existing railo install and lucee 4.5 then the answer is no. Lucee 4.5 in technical terms is just a point release change from railo 4.2. Except for some extensions needing to be reworked it should get no more or less attention then any other railo update.


If though you are someone who wants to contribute to open source, or simply is worried about the future of cfml then the answer is that yes Lucee is a big deal.

For me one issue I have always had with Railo was that despite technically being an open source project, it really was not run as an open source project. Contributing was possible, but nothing was done to really encourage it. Most (virtually all) of us were simply followers, waiting for the next release knowing it would bring great things but not really having a say in what the next features would be or how they would be implemented.

Railo development was limited to the resources of their small team and supported by the consulting business. This I believe was one of the biggest failings in how the project was managed because it was self limiting. With the best of intentions Railo could never truly grow because it could never get enough resources to do everything that was needed.

If you dont believe me just look at its documentation. With Lucee though the team has taken a much sounder track with the establishment of the Lucee Association.

Finally it is possible to directly support the development of Lucee, either financially as an individual or a company. Or as a contributor as a lot of work has gone into the build process so that now anyone can get up and running contributing to the code.

Growing a community

Finally for the first time in a long time we have a cfml engine that is not just something we license, but is an actual platform on which to grow the community. We can actually get involved and have a say in our future not just sit on the sidelines and hope that someone will get it right.

And its not just me who thinks like this. The whole conference had this buzz of excitement around Lucee. People were getting engaged and I know of at least 2 companies signing up to support it while at the conference. In fact there are currently 8 companies signed up as corporate sponsors and 5 as full members. That means Lucee has solid financial support so that its developers can focus on actually developing the language without splitting their focus.

The Future

Now its not all sunshine and butterflies, there is still a lot of work to be done. Which is why I am encouraging anyone and everyone who wants to to contribute. Its not just coders who are needed, testing and documentation is just as valuable if not more so. In fact in my opinion the biggest weaknesses that need to be addressed is documentation.

Railo always suffered from this problem that they would introduce a great feature but never document it adequately so something that needs to be worked on is getting the existing version of lucee documented with good examples. But again this is where anyone can now contribute with the newly released Lucee Docs.

Other Languages Help

It might seem odd but an other great way to help out Lucee is to go and learn a different language. Not only will you make yourself more employable, you will then be able to bring back that knowledge of how other languages accomplish things to Lucee. I don't see any reason we can't pick and choose good parts of other languages to put into Lucee.

So in conclusion, Lucee is here and now is the time for us all to get involved and support it. In the end its in our own best interests.

Reader Comments

Raymond Camden's Gravatar
Raymond Camden
Tuesday, May 26, 2015 at 9:23:42 AM Coordinated Universal Time

1) Adobe not showing up
That surprised me too. One ticket, one plane, one hotel room isn't a lot of money. I do not understand how the CF team handles community relations stuff like this. It seems so obvious to me, but maybe they simply do not see the value in it. I don't mean that as an attack per se, just that it may not be important enough to them. This is the same criticism I have of Apple. They are WAY on top right now, and act like it, but I'd always be worried about slipping and community relations is something that can help you keep that lead. Yes, it is hard to say, "We earned X sales by going to this conference", or "X people on Twitter tweeted nice things about us", but shoot, just consider it a $$ loss and attend.

2) User Groups
The person managing UGs has (afaik!) little to no contact with the CF team. And (again, afaik) has not for years. I can confirm our local UG, which was a former CFUG but transitioned to "generic" years ago, was killed, for NO apparent reason. It cost Adobe nothing (outside of a giveaway a year) but apparently that wasn't good enough.

As I said on Twitter recently, apparently community relations are so good at Adobe they can afford to kill off people who VOLUNTARILY give free time to talk about their products and share experiences.

John Whish's Gravatar
John Whish
Tuesday, May 26, 2015 at 11:14:12 AM Coordinated Universal Time

Agree with Ray's comments. I didn't get over the pond to attend but the fact that Adobe had no presence has been noted by several people I've spoken to who didn't go either, so it does seem like a strange decision.

I used to run a CFUG, but had to shut it down, which wasn't due to lack of members. Adobe wanted a "generic" group which is their prerogative, but as I'm rubbish at Photoshop and don't use any of the Creative Suite I couldn't run the group or write/do the presentations. To continue as a CF group wasn't an option. We had a small but enthusiastic group of people who came regularly and it would have continued - they didn't attend just to get an occasional pen and t-shirt. I did consider running a meeting without the Adobe association but I felt a bit jaded by the experience so the group folded.

Brad Wood's Gravatar
Brad Wood
Tuesday, May 26, 2015 at 12:27:09 PM Coordinated Universal Time

It was great seeing you again at dev.Objective() this year Steve. Thanks for your recap and thoughts. I definitely sensed a good Lucee buzz at the conference and I'm certainly excited about the future of it.

Sean Corfield's Gravatar
Sean Corfield
Tuesday, May 26, 2015 at 2:40:12 PM Coordinated Universal Time

Good recap of the conference -- thank you! As a long-time member of the steering committee, I'm pleased to see folks speak positively of the rebranding and the new direction. I think it reflects both the reality of modern web development (polyglot) and the increasingly broad interests of the folks who've been attending year-on-year. I think it's notable that some former CFML developers -- and former speakers -- came back to dev.Objective() after several years absence from cf.Objective()!

Regarding Adobe's absence: I find it interesting that there's so much more talk about that this year -- when the conference covers far more than "just CFML" -- than there was the last time Adobe chose not to sponsor (2011). That year the opening keynote was a community panel and I didn't hear many people even discussing Adobe's lack of presence, despite the conference being full-on CFML back then.

Regarding Lucee's presence: I'm glad it created a lot of buzz and I really do hope the community step up and contribute, especially to the documentation(!). The CFML community have a history of not contributing tho', so I'm not very hopeful. There have been three "open source foundation" style organizations so far that have failed to gain any traction in the community and most CFML OSS projects languish for lack of contributors (with a very small handful of exceptions).

I was initially very excited about the Lucee fork. At World Singles, we'd chosen Railo back in 2009 and with the lack of development on it, we'd been moving slowly down a migration path to Clojure. Lucee's appearance -- and especially the promise of modularity and dependency management in Lucee 5 -- offered us some more mileage on CFML and a chance to streamline our build systems etc. I think the Lucee launch was rushed: there was a lack of clear vision, an almost complete lack of communication, and the documentation around both Lucee 4.5 and the Lucee 5 Beta was absolutely pathetic. We had the World Singles stack running on Lucee 4.5 at launch but we soon began to have doubts about the stability and organization of the project and we put our migration plans on hold.

I hadn't been involved with the Railo project or its mailing list for a few years and, after a couple of months with Lucee and its mailing list, I decided to drop off and ignore it for a while until it gets its act together.

Bottom line: World Singles has gone back to a position of viewing CFML as "legacy" and accelerating our migration to Clojure. Once Lucee 5 is released and seems stable and well-documented -- _if_ that happens -- then we'll take another look and see what upgrading from Railo 4.2 to Lucee 5 will involve and what it will buy us. But right now, I can't recommend any CFML engine to anyone.

Dominic Watson's Gravatar
Dominic Watson
Tuesday, May 26, 2015 at 4:53:09 PM Coordinated Universal Time

I think you hit the nail on the head Steven when you talk about the "Openness" of Lucee in contrast to the previous setup. This is something I've been thinking about a lot and I know that the good people behind LAS are very keen on it too.

There is a good way to go yet, but I'm really excited about how LAS are maturing and the conference left me very optimistic for the future of Lucee (disclaimer, the company I work for are a LAS member).

As for Adobe's no-show, I find this very sad and a real opportunity missed for some really useful dialogue, especially in the "Future of CFML" session. Next time eh :)

Micael Granberg's Gravatar
Micael Granberg
Wednesday, April 20, 2016 at 6:15:10 AM Coordinated Universal Time

Thank you for the good recap, Dominic.
It is always interesting to know your opinion in this field. Looking forward to new posts of yours.

  • Please keep comments on-topic.
  • Please do not post unrelated questions or large chunks of code.
  • Please do not engage in flaming/abusive behaviour.
  • Comments that contain advertisments or appear to be created for the purpose of link building, will not be published.

Archives Blog Listing