Author: Steven Neiland
Published:

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.

Can someone please tell me what the hell is going on with Lucee right now? I mean really, who is steering the boat?

Now I have been a huge fan of Railo for years and I thought that Lucee was going to be the best thing since sliced bread when I heard the announcement. But all I have seen so far has been an absolute bloody mess.

Poor to non existant documentation, questionable naming conventions, broken features due to broken tests and the worst kind of public(developer) relations since adobe.

In fact I really dont think the current release of Lucee should be called a beta, what I have seen looks to be of alpha release quality.

Documentation has to exist and be right

If you are releasing new features and your documentation is wrong then its not the users fault when they(the developer) cant make it work and blog that its broken...because it is broken. You have created a tool and labeled it "cut" but wired it to "drill". Yes it works as you the developer designed, but not the way you have told the end user how to use it.

And why is it that the documention is wrong? Well from the outside looking in, it seems that nothing was written down in terms of a specification. Just one developer deciding to go off and build something and come back to document it later.

Questionable choices

It would be easy to forgive the poor documentation knowing that it will come eventually, but its this lack of detailed planning that is leading to the worst (in my mind) problem with Lucee, the questionable decision making process.

On one hand I love that we have static functions and variables now, but making it a scope and not having it as a modifier keyword?

Or the new createComponent() function, sorry loadComponent(), no initComponent() no.... whever it is being called. And then Micha announces off the cuff that not only is there this new function but that createObject is going to be deprecated? Im sorry but WHAT!

Who discussed this decision. Was any thought given to how much work it will involve for us poor developers who use it every day? This is not the same as deprecating cfform or cfgrid, this is a core function of cfml. You dont going making these kinds of design changes ligthly without buyin from the community, but that is exactly what is happening here.

Poor testing and poor community relations

And lets not forget that we are now seeing poor testing and even worse community relations.

I get that the migration of the codebase from railo caused some tests to be missed but I find it inexcusable the response I have seen to Adam Camerons comments and blog posts from some members of the Lucee team.

Fact AC can be abrasive sometimes. Many times I find myself wanting to disagree with him just because of how he comes off...but he's not wrong in what he is saying. And lets not forget that AC has no dependency on cfml anymore and is still taking his personal time to test the new code according to the limited documentation.

The lucee team should be thanking him for helping them out by testing and blogging, not making snarky comments and ignoring the valid points he is making.

Result a failing project

Look lucee5 has the potential to be really great. osgi support, final, static abstract etc etc etc. These are all things that show how much potential it has, but all that potential is being screwed up by the ham handed way the project is being handled and presented. I am rapidly losing hope that Lucee will be successful, right now it looks to me to be headed straight for the rocks unless it changes course.

How it could be turned around

It is not too late to fix this situation, but only if the lucee team get down off their high horses and change their attitudes.

  1. Delay the release of Lucee 5
  2. Document all the new features, changes in it and why they were made.
  3. Form a language advisory group and openly invite people with known language design knowledge(any language) and or proven experience with cfml to join it. (Sean Corfield, Adam Cameron, Luis Majano etc etc)
  4. Go through the documented design changes with a fine tooth comb and evaluate each one and where necessary revise those decisions.
  5. Document those changes and only then go and implement them.
  6. Do a proper beta release and when comments are made (be they good, bad or indifferent) listen and respond without the snark.

I would much rather see a delayed release while this issues are addressed than what I am currently seeing. Right now I have no intention of being an early adopter of Lucee 5 and if things keep going down this path I may never adopt it.

What Do You Think?

Reader Comments

Adam Cameron's Gravatar
Adam Cameron
Saturday, April 18, 2015 at 5:17:12 PM EDT

Thanks for being a second voice on this topic, Steven. I'll not comment on the content beyond that.

What I wanted to say is that I'm trying to take onboard that I am unnecessarily abrasive when articulating my points, and this helps no-one. I'm trying to - basically - [take a deep breath] before I write stuff. I'm hoping to find a middle ground between "being a bit of a prick" (now), and "I don't agree with [this], and here's why".

I imagine it'll be a long road. And *my* intended destination will still probably have a lot of ppl thinking I'm a disagreeable so-and-so. But that's OK I reckon ;-)

Again, thanks for this blog post. Not because of the solidarity that you're echoing my sentiments, but it validates that my concerns aren't just my own ones.

--
Adam

Steven Neiland's Gravatar
Steven Neiland
Saturday, April 18, 2015 at 5:32:26 PM EDT

Adam,
Nobody is perfect, what matters is your intentions and on that note nobody can fault you.

Jim Priest's Gravatar
Jim Priest
Saturday, April 18, 2015 at 8:42:32 PM EDT

Well said! Was considering writing something like this myself but you said it perfectly.

Russ Michaels's Gravatar
Russ Michaels
Saturday, April 18, 2015 at 9:06:39 PM EDT

I rather felt the same about the future of this project, it feels like it is going down the same road as OpenBlueDragon.
I don't think I will switching anything from Railo to lucee just yet.

Steven Neiland's Gravatar
Steven Neiland
Saturday, April 18, 2015 at 11:34:50 PM EDT

I was feeling frustrated with what I saw happening with Lucee when I wrote this. Now having spent a night watching the antics on the mailing list I have to seen enough.

Tomorrow I start learning something other than cfml. Ruby is looking good right now, or maybe node. I don't know ye, but whatever way I go will be a better direction than either ColdFusion or Lucee.

I am done.

Andrew Myers's Gravatar
Andrew Myers
Sunday, April 19, 2015 at 10:20:00 AM EDT

@sneiland don't rule out Groovy / Grails. I think Groovy is a really good fit for CFML developers...

Steven Neiland's Gravatar
Steven Neiland
Sunday, April 19, 2015 at 10:28:26 PM EDT

@Andrew,
I have looked into Groovy, but I think I saw recently that the Groovy project was having it own shakeup so until I have time to look into that I dont think it will make my short list.

Steven Neiland's Gravatar
Steven Neiland
Sunday, April 19, 2015 at 10:31:32 PM EDT

I got some news today that gives me hope that the ship may be turned around, but I still believe that I need to take on learning another server-side language as a priority.

Choop's Gravatar
Choop
Monday, April 20, 2015 at 9:30:14 AM EDT

Sometimes the most valuable role a person can play is the thorn in the lion's paw: it can save a mouse's life. I respect anyone willing to thorn up a lion, if the mouse is worth considering. Lucee is such a mouse, Micha is the lion, and Adam is acting as the thorn. I'm happy he's here doing what he's doing, **especially** since he's not even professionally developing with CFML right now.

marlo's Gravatar
marlo
Sunday, June 28, 2015 at 12:46:28 AM EDT

Nobody is perfect, what matters is your intentions and on that note nobody can fault you.

Sean's Gravatar
Sean
Wednesday, October 7, 2015 at 10:13:09 AM EDT

Been trying to keep an open mind with Lucee, but so much is different from versions of CF I know and have been using. At this point I would say it bears little relation to CF and is its own thing. Being its own thing I have no interest in it because frankly CF seems to just work, where the other engines are a grind have have so much breakage and suffering docs.

Post a Comment

Comment Etiquette:

  • 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 or appear to be advertisments, will not be published.
  • Comments that appear to be created for the purpose of linkbuilding to commercial sites will be removed.

We are all adults here so play nice.

*
*



Archives Blog Listing

Tag Listing

Learn CF In A Week

Treehouse

 
Fork me on GitHub