ColdFusion, CFML, Open Source, and Friends

This is a blog post I have been contemplating for a long time, and I want to make sure I pick my words carefully so as not to send the wrong message.

I am currently an Adobe Community Professional and have been involved in the ColdFusion community for some time. I have been seen by my peers as an Adobe Fanboy, and, for the most part, I have been OK with that. I still like Adobe, I still support Adobe, and I actively use Adobe ColdFusion. But the part I need to get off my chest is that I am NOT against the Open Source CFML alternatives (specifically Railo and OpenBD). In fact, I believe that Railo and OpenBD, along with other open source projects like Mura CMS, ColdBox and ContentBox, FarCry, Slatwall, Razuna, and many others are vitally important to CFML's future.

Let's face it. ColdFusion and CFML do not have a great reputation. It's unfortunate that so many ignorant assholes spout off about ColdFusion because they once had a bad experience, or because they used it 10 years ago and assume that nothing has changed but them. But however you slice it, ColdFusion is looked down upon by much of the rest of the web development world. I believe that much of the disdain over Adobe ColdFusion is because it is a commercial, proprietary, closed-source system. I also believe that much of the reason our current community is becoming divided is for that same reason.

Now, I don't think that ColdFusion being commercial, proprietary, and closed source is necessarily a bad thing. But it is also not a great thing. It is what it is. Thus far it has not affected me, but I have to wonder if someday it could. If Adobe decided to sunset ColdFusion tomorrow, what would I do? What is my plan?

The answer to that is in the available open source engines. Both Railo and OpenBD are impressive, robust, production-ready systems. They actually compete quite well with Adobe ColdFusion, and for many are a better alternative already. It's comforting for me to know that even if Adobe ColdFusion ceases to be, that there are solid alternatives to turn to. And that's not to say that I would not consider using either of them now if I felt they were appropriate to the situation. I would use them.

In the past I have been disheartened by those that seemed to turn against Adobe, and actively encourage people to leave ACF for one of these alternatives. I do believe that some in those other camps wish ill of Adobe and ACF, but I believe most are just enthusiastic and excited about these stellar projects. It is not my intent to try to convince anyone to switch from one platform or another. you kids can make those determinations on your own.

My intent in this post is to try to heal some of the wounds that have divided our CFML community. Here I am, one of the Adobe fanboys, putting support behind Railo and OpenBD. There, I said it. I do support these projects and I hope that they succeed. I also hope that Adobe succeeds in bringing ColdFusion to a wider audience and continuing to support the needs of their enterprise customers who do need some of the things that only ACF can provide.

I believe there is room in the market for ACF, Railo and OpenBD. They each offer things the others do not, but are all based on the language (I'm glad TIOBE finally realized it is a language) that we all know and love, CFML.

Let's quit fighting in our community. Adobe fanboys (myself included) need to realize that competition is a good thing and that the Open Source alternatives are not going to stop existing, nor should they. And the Adobe bashers need to get over their neckbeard hate for anything proprietary and closed and just accept that ACF is still great and that they don't need to try to convince everyone they know to switch. Those in between (most of the community) need to keep on loving each other.

I don't want a divide between us anymore. It is painful. I have many community members that I consider my friends on each side of the proverbial fence, and I don't like it. I want us all on the same side of that fence, chucking rocks at those that would bash CFML.

We won't accomplish anything divided. I don't know if the CFML community can grow again. Perhaps it will keep shrinking. But it certainly won't grow if it dies from within through infighting and working against each other. I will no longer act like there is any kind of a wall between me and my friends because of which engine we use. And I will not hesitate to recommend Railo or OpenBD to someone if I feel it is a good fit for them.

To those I may have offended in the past with any of my Fanboyism, Gert, Matt W., Mark D, Denny, Todd R., Sean or any others I have forgotten to mention, I apologize if I was ever a jerk about it. I consider you guys my friends, I enjoy your company, and I look forward to working more with you in the future. In the past I let my enthusiasm for ACF combine with my frustration that it seemed like people were jumping ship only to turn around and bad-mouth the platform that kept them strong for so many years and I took things to personally. I am over that now.

Finally, to my fellow Adobe CF supports. I hope you do not see this as me turning on Adobe. Like I have said, I still support Adobe and ACF, even if I support the others too. I don't want to lose you as friends either.

The CFML community is the greatest in the world. I will not see it divided over something like this. It's too valuable to me and to you.

Please feel free to leave comments, positive or negative. If you feel I am off the mark on anything, then give me the chance to explain. Writing a post like this is hard and it could certainly be misinterpreted.

Thanks

Comments
spills's Gravatar It's good to hear this tone as I agree that ACF , OpenBD, and Railo make the CMFL community stronger, not weaker. In my work place we use both ACF and Railo in production on public-facing sites, so I can tell you first-hand that the two can coexist and solve slightly different problems. I would like to see ACF, Railo, and OpenBD up CFML to the next level even if it breaks older code we need all of tools available to C# or Java as recently I have had to work with Visual Studio and forgot how far behind CF Builder is as serious IDE, anyways thanks for sharing.

Spills
# Posted By spills | 3/10/12 2:05 PM
MikeZ's Gravatar In the end they all have different advantages (ACF offers more stable DB features in some specific cases, Railo's free license makes it faster to pump out additional cluster nodes during times of heavy load, ...). Can't say much about OpenBD, because the last time I tried it was over a year ago and it seems to have made up for many of the inadequacies it had back then.

In the end it's always a question of choosing the right tool for the right task, as it should be.
# Posted By MikeZ | 3/10/12 2:29 PM
Jim Priest's Gravatar Great post!

Should your sentence read "...that I am NOT against the Open Source CFML alternatives..."

I've never understood any of the animosity about open source alternatives but I think it's great to to see the open CFML community not just existing but thriving! 2 open CFML engines, Mura, RIAForge, the OpenCF Summit, etc...

It's all about choices and we now have 3 awesome choices to look at when building applications with CFML.

Lets get busy!
# Posted By Jim Priest | 3/10/12 2:33 PM
Jason Dean's Gravatar Thanks Jim. Ooops. Fixed it.
# Posted By Jason Dean | 3/10/12 2:35 PM
Scott Stroz's Gravatar Who are you and what did you do with Jason Dean?

All kidding aside, this was a great read and echoes a lot of how I have come to feel...mostly.

I think the OpenDB team should take some PR lessons from the Railo team. For all the shit they (the Railo team) have gotten over the years (and a fair share of it from me), they ALWAYS remained civil, and NEVER compromised their integrity or that of their product. I don't think I can really say the same of the entire OpenDB team.
# Posted By Scott Stroz | 3/10/12 3:18 PM
Sean Corfield's Gravatar Great to see a post like this from you, Jason, and don't worry: despite anything that's been said, I consider you a friend (and I'm looking forward to seeing you at cf.Objective() - I'll be there as part of the Railo team). Your enthusiasm for CFML - and taking on the haters - is always appreciated!

Every language community I've ever worked in has benefited from having open source versions available and, given some of the signs in the market, anything that can benefit CFML is a Good Thing(tm) in my opinion.

I was bummed I missed OpenCF Summit this year and I was bummed that it looked like I was going to miss cf.Objective(). The CFML community is a great crowd of passionate, fun, interesting people and it's part of what makes the language such a joy to use (despite it's warts).

I've been doing polyglot projects with CFML for over four years now and I still haven't found anything to touch it for building HTML apps or connecting with (most) external systems, even tho' I generally write most of my model in a non-CFML language these days.

All three CFML engines are moving forward, each introducing interesting new features, as well as challenging each other to improve the language, performance, Java interop and numerous other areas.
# Posted By Sean Corfield | 3/10/12 3:25 PM
Sam Farmer's Gravatar Good post Jason. Tis better to learn from what others do than tear it down.
# Posted By Sam Farmer | 3/10/12 3:35 PM
Brian Swartzfager's Gravatar Well said, Jason.
# Posted By Brian Swartzfager | 3/10/12 3:52 PM
Christian Ready's Gravatar Thanks Jason for a very well-written post. I love CFML. That means I love ACF, Railo, and OpenBD. Any engine that advances the language and helps grow the community is a good thing, IMO. Every one of the engines are unique but together they make the language stronger and make it possible to grow the community.

In fact, let's carry the fight to the enemy. How about Adobe, Railo and OpenBD booths at the next PHP conference? :)
# Posted By Christian Ready | 3/10/12 4:19 PM
Christian Ready's Gravatar Thanks Jason for a very well-written post. I love CFML. That means I love ACF, Railo, and OpenBD. Any engine that advances the language and helps grow the community is a good thing, IMO. Every one of the engines are unique but together they make the language stronger and make it possible to grow the community.

In fact, let's carry the fight to the enemy. How about Adobe, Railo and OpenBD booths at the next PHP conference? :)
# Posted By Christian Ready | 3/10/12 4:30 PM
Gert Franz's Gravatar Jason,

It is definitely a good post, but I have to say, I have never been offended by anyone (currently) from the ACF side. We always had good times when we met and I intend to keep it that way since I consider us friends, even in the time when there was a little more tension between the camps.
You know that I always was in favor of competition and embraced passion and I can totally understand one fighting for his favorite tool, as did we.
So for me you have nothing to apologize for...

See you in May :-)

Gert
# Posted By Gert Franz | 3/10/12 4:40 PM
Raymond Camden's Gravatar Gert said: "I have never been offended by anyone (currently) from the ACF side."

Nice, an opening....

;)
# Posted By Raymond Camden | 3/10/12 4:52 PM
Ron Stewart's Gravatar Nice post, Jason. Well said... I view the presence of all three of the primary CFML engines (ColdFusion, Railo, and OpenBD) as a positive thing from the standpoints that all are viable alternatives, presence of more than one engine lessens any risk that might be present by the demise of the others, and inherent competition and innovation that comes from the presence of those alternatives.

We as developers and our corner of the tech world are both better off with all three of these engines present and thriving.

--
/ron
# Posted By Ron Stewart | 3/10/12 4:53 PM
Jeff Coughlin's Gravatar Thank you Jason! I feel the much same way.

You're right: competition is a good thing (as we've seen with innovative features from all the products). Although I mostly use ACF and love it, I've used Railo in several scenarios and really enjoy it as well. At first I felt torn... should I choose just one? But as I've grown to love both products I now do my best to make sure my code works in both engines (speaking mostly about OS projects I release). I have nothing against OpenBD... I just haven't gotten around to trying it in a few years.
# Posted By Jeff Coughlin | 3/10/12 5:04 PM
Mark Kruger's Gravatar Love this jason! Thanks for sharing. I'd have to say I agree with your sentiments for the most part. Nicely said.

-Mark
# Posted By Mark Kruger | 3/10/12 8:43 PM
Alan's Gravatar Great post.

Glad to hear you are finally beating the same drum we have been for years; that a raising tide lifts all our boats.

One wonders what made you come to this revelation after so long. Was it Jeremy Allaire putting his faith behind the open source engines and his hope for CFML as noted in his video keynote at OpenCFSummit?

Are Adobe preparing to open source their engine? That would be great news; 3 superb engines available, FREE of charge, OpenBD, Railo and ACF.
# Posted By Alan | 3/10/12 9:56 PM
Steve Bryant's Gravatar Well said, Jason.

I think you did a great job of striking the balance of the passion that so many have for their own product and the need for us all to recognize our common goals for the welfare of CFML.
# Posted By Steve Bryant | 3/11/12 10:04 AM
jordan's Gravatar +1
# Posted By jordan | 3/11/12 1:55 PM
Eric Hoffman's Gravatar Excellent work, Jason. I too have tired of the debates and fighting and have begun to tune out much of the discussion amongst the camps. I hope more developers like us, with big visible projects but are quiet around the CFML table, aren't doing the same. I hope we all get back to working and rallying around CFML.
# Posted By Eric Hoffman | 3/11/12 5:55 PM
Ryan Vikander's Gravatar Great post Jason, agreed completely!

One engine to rule them all, CFML!
# Posted By Ryan Vikander | 3/19/12 2:26 PM
Brandon Moser's Gravatar Very well written post (as always). It's always nice to see people state their opinion on this topic eloquently. I hope you only receive positive comments from our community.
# Posted By Brandon Moser | 3/21/12 12:30 AM
Dave Strand's Gravatar Well put, Jason. Curious if anyone is seeing any evidence of the needle moving the other way?
# Posted By Dave Strand | 11/19/12 9:15 AM
Sean Corfield's Gravatar Dave, not sure what you mean by "needle moving the other way" - can you be a bit more explicit about what you're asking?
# Posted By Sean Corfield | 11/19/12 12:28 PM
Dave Strand's Gravatar Just looking for signs of life that CF is here to stay. While CF cousins and friends are popping up, does it spell hope or just a lifeline for CF longterm?
# Posted By Dave Strand | 11/19/12 1:27 PM
Sean Corfield's Gravatar Well, CFML will be around for a long time - after COBOL is still around and, whilst almost no new developers are getting into COBOL as a career, there are plenty of COBOL developers earning a good living.

As for "hope", I'm not sure what you're expecting for a technology that is clearly in the declining phase of its technology cycle? I wouldn't anticipate a sudden resurgence in CFML usage nor any likelihood of future world domination...
# Posted By Sean Corfield | 11/19/12 2:41 PM
BlogCFC was created by Raymond Camden. This blog is running version 5.9.1. Contact Blog Owner