CFML has come a long way in over a decade. Over the years the language has evolved, sometimes gradually and thoughtfully, other times less so, but evolved it has. And Allaire/Macromedia/Adobe have, understandably, been the primary stewards of the language, fueling that evolution based on customer feedback, industry trends, as well as our own innovation. We’ve not always been successful (I have my own long list of CFML inconsistencies, gotchas, and the like, and others do too), but in general we’ve always tried to do the right thing, an almost impossible task. What is right for language purity is often not right for the masses, and what is right for the top tier of CFers is often not right for beginners, and what is right for our engineering teams sometimes is at odds with what is right in the expectations of our developer base. Still, all in all, I believe we’ve been phenomenally successful in creating a language that is easily learned and readily usable by beginners, while being powerful and flexible enough to meet the needs of the most technical experts.
But times have changed. For starters, as ColdFusion has grown more all encompassing (starting in CFMX), so have the demands on the language – new features need new language elements, and thus language proliferation. In addition, there are other engines that execute CFML code, engines that perhaps do things that ColdFusion does not do or does differently, and vice-versa. And while every vendor and player in this space should have the luxury to innovate as they see fit, the more they do so, the greater the risk of further fragmentation and inconsistencies within the language.
Which is why there has been talk for several years now of transferring stewardship of the language from any single vendor to a committee or consortium. In fact, I remember being asked about just this while on a panel at CFUnited (or CFUN as it was known back then) quite a few years ago. But that never happened, for two reasons. One reason is purely one of economics. Simply put, could the ColdFusion team afford to spend precious engineering time on an effort that would take resources time away from core development, while essentially only helping competitors? And back then the answer was no, not at all. After all, which feature in CF7 or CF8 should we have sacrificed in order to do so? That’s not an answer many want to hear, but it’s the truth, and it’s how I answered that question all those years ago.
But there is another answer too, and this is the answer I did not give because, well, frankly it would have opened up a Pandora’s box that I just did not want to have to deal with at the time. For different organizations to work together on a project that less directly helps their own interests while at the same time requiring a degree of cooperation that could legitimately further the interests of the others parties, one important ingredient is required. It’s called trust, and without it any collaboration between competitors is doomed, despite the best of intentions. And let’s be honest, there has been little trust between the various players in this space. No, I am not going to get sucked into gossip or mudslinging or a he-says-she-says, that’s beyond irrelevant. The only thing that is relevant is that if we are truly honest with ourselves we’ll have no choice but to acknowledge that trust between the various players has been nonexistent. And no trust equals no cooperation, it’s that simple.
So what’s changed? Why is now the right time to truly start cooperating in the bests interests of the language and community that loves it and relies on it, putting those interests above those of individual organizations and products?
What’s changed is that there are now players who truly do get along (as I noted in a previous post). Not that they did not get along previously, the relationships was always a very professional albeit neutral one. And that’s a good thing. It’s allowed for trust which has allowed for open communication which has allowed for the types of discussions that have not been possible previously.
And so at CFUnited this week we announced the creation of the “CFML Language Advisory Committee”, a small group who hopefully will come up with the guidelines and standards and recommendations that will ensure the long term viability and integrity of CFML. The committee is a work in progress, and the details of its objectives and mandate and workings still need to be hammered out. But it’s an important first step, and one that all involved are enthusiastically committed to.
In the interests of openness, and to ensure that no committee representation drowns out the voice of any other constituents, we were careful to not stack the deck in any way. The initial group of six is made up of two Adobe representatives, a Railo representative, and three community representatives.
And yes, there are stakeholders who are conspicuously absent from the initial committee. And as expected, that point was made by one of the first questioners after the announcement who wanted to know how the interests of other players would be represented. I answered the question bluntly and honestly, and tried to be as professional and measured as possible in doing so. And basically what I explained was what I already said above. Right now we’ve included those who respect the business requirements and necessities of the other players in the space, and those who have demonstrated a clear commitment to the community, looking out for its best interests. Of course, by inference I was saying that others are not meeting those prerequisite requirements, and understandably this has upset some.
But as I said before, the trust factor is critical. Here’s an example. Yesterday, during the keynote, Adam Lehman demonstrated some of what we are planning around Hibernate-based ORM support in ColdFusion “Centaur”. And as it so happens, Gert Franz of Railo has already stated that his team is working on Hibernate integration as well. Obviously, we need to work together. There is no requirement that we solve the same problems the same way, nor is there a requirement that the solutions be compatible. At the end of the day product teams should do what they believe is correct and in the best interests of their respective products and businesses. But we do need to work together as much as possible, doing so benefits the community and hopefully both of our eventual feature implementations. And that’s just the one public example, there are many others.
And that’s where the trust comes in. Not inviting some of the stakeholders initially is less about taking stands or punishing indiscretions or playing politics. It’s about trust and the reality that where there is a history of distrust the frank and open discussion that this endeavor requires will be utterly impossible.
That’s not to say that things can’t change. They can, and hopefully will. For example, when one of the players in this space spins off a standalone community driven open source initiative, that represents an opportunity to start over, to divorce from prior ill-feelings and built up distrust. Has that opportunity been realized? That’s debatable, and many have strong feelings on this one. And who’s right and who’s wrong is unimportant. What is important is that the fact that this is so hotly debated, the reality is that the trust is still not there. Not yet.
So, for now we have a new small and very focused “CFML Language Advisory Committee”, one that will hopefully start to contribute in earnest immediately, one that will start to realize benefits for all involved, including the community. And as I explained yesterday, the committee is deliberately and intentionally not stacked or biased in any majority direction, and so the ability to invite and include other stakeholders in the future is a definite possibility.
Yesterday’s announcement is an important first step, and one that I hope marks the beginning of a new era for CFML and for the community that has supported it for so long.

29 thoughts

  1. Ben, let me first of all congratulate your move to attempt to standardise the language. I wish you all the best.
    You will have to forgive me, because I am somewhat new to this community, but please explain to me how we can reach out. I have already sent you and email and I assume you’re very busy at CFUnited to formulate a reply. I understand the pressures and demands on your time that a conference can bring.
    I have no history of distrust with you. We don’t know one another. So I am a little unclear as how I can demonstrate that OpenBD is as passionate about CFML’s future as every one else. The fact that I am working on OpenBD funded from my own pocket surely speaks to my dedication.
    How can we demonstrate this trust, if you are not allowing us to play at your party?

  2. Alan, thanks for the message, and for replying so quickly (a mere 36 minutes after I made this post).
    I did not receive the e-mail you sent, so please do not assume I am ignoring you. I did however get this comment (as should be apparent by the fact that I am replying to it here). We do need to talk, and I am going to reply to you directly.
    — Ben

  3. Ben
    I really do appreciate your time and effort to post such a long post about the CFML advisory board. From a business standpoint I can understand Adobe and a lot of what you are saying.
    One thing that I do not understand and what you or people around you seam to ignore is that the OpenBD project, that is clearly the project you are referring to for the trust level, is an independent party of New Atlanta.
    The members of the Open BD Steering Committee are not New Atlanta employees nor does that company say what we have to do. Most of the members are still with companies that do support Adobe and are sometimes even Adobe Partners. We have given Adobe a lot of trust in the past (and still do). I don’t understand how you can say that we are not worth the trust.
    If Adobe really wanted to have the opinion of the all engines available (and it is not that there are 20 of them to ask) then an approach to these engines *before* the announcement would have been appropriate. If you don’t want us at your table, then at least let us know why.
    This would have been a open approach and a trust level we could have accepted.

  4. Thank you Ben, I appreciate it.
    I am sorry you didn’t get the email, allow me to send it to you again.
    I would love to talk with you, 1-on-1. Please lets do a phone call. I appreciate the fact this week you will be completely blocked out with CFUnited, but lets set something up for next week. I’ll even pick up the call charges! A scotsman paying — hope you are noting this 😉
    In all seriousness, I am keen to talk with you and understand where you are coming from.
    Email me when works for you next week.

  5. "Adobe folks would be sitting at a table with open-source competitors" but only the people Adobe hand-picked and deem "trustworthy".

  6. @ano
    Please do not cherry pick certain words and dream up some misconstrued statement from significantly more words.
    @ Ben
    Its good to know that the doors are open for other folks to get involved with steering CFML, and your stance on

  7. >>Simply put, could the ColdFusion team afford to spend precious engineering time on an effort that would take resources time away from core development, while essentially only helping competitors? And back then the answer was no, not at all.
    Doesn’t seem any different now.
    As you’ve said, you’re only cooperating with Railo because you see them going after a new market. You don’t cooperate with those who you’ve interpreted to be going after your market (rightly or wrongly – didn’t Sean quit OpenBD because someone said he didn’t care about the CFML community, he was interested in Java developers?) – even though it is crazy to ask existing CFML people to ignore open-source offerings solving one of the huge problems with AdobeL: high cost.
    Adobe is a business and does what it thinks will make it money down the line, nothing more. If that means playing off open-source projects against each other, or forcing them to swear they won’t nibble at Adobe sales before they can take part in an "open" "unstacked" "community" CFML standard committee, they’ll do it.
    Why should anyone care about Adobe’s profits except Adobe shareholders? If Adobe were eventually driven out of the CFML business because an actively developed open-source community product, we’d ALL be better off in the CFML world. We just lowered the cost of using CFML to zero.

  8. Love to see all that happening. Just amazing.
    As for the committee, I think you guys should give OpenBD a chance. Adobe is often criticized for its positions (specially the lack of it). These critics can also be confused and mixed with adjectives as “trust”, “frankness”, “honesty”, whatever… Come on, we’re not in a “Meet The Focker’s trust circle”. We’re in an industry. Adobe is a company and owns money, so as New Atlanta. I don’t see many differences between you and NA, except that NA is much smaller, but sometimes make a lot more noise than Adobe do (in terms of ColdFusion). Please don’t blame me, I am one of those who say Adobe doesn’t invest properly in ColdFusion and I’ll continue to say that until I see a real change. Just a small (and recent) example – http://daveshuck.instantspot.com/blog/2008/06/18/Adobes-actions-speak-loudly-about-their-lack-of-support-for-ColdFusion
    Macromedia/Adobe has lost control over ColdFusion long time ago. Let’s face it. This committee comes late (but still, better late than never), and this is (imho) mainly Macromedia/Adobe’s fault. What have changed in terms of resources, players, trust among then, time, etc, etc for Adobe to jump into a committee now??
    Nobody is perfect. Macromedia/Adobe is also “guilt” of what is going on. That’s why I think this is a good time for us to make a fresh start. That’s why I think OpenBD should be part of the committee. Otherwise we’ll continue to see groups/initiatives and small companies fighting for a small market and/or fighting against a “giant” (Adobe) that in fact never pushed (again: IMHO!!) very hard to promote and make CFML a larger thing that is currently is. CFML can be a real option in the PHP/ASP/etc market. Do you guys believe in that?

  9. Ben probably can’t come out and say it himself but I will – the fact is that New Atlanta have a history of "trashing" Adobe/Macromedia in an effort to improve their own sales. Railo on the other hand, haven’t done that. It’s all about the approach – Adobe is a business and regardless of whether it’s good for the community or not no business is going to immediately jump at the chance to help someone who has been actively working against them.
    I know everyone is going to jump down my throat and say openBD is not New Atlanta etc etc but the fact is there hasn’t been any real distinction between the two – and openBD is only new. I hope that when the dust settles a relationship can be established based on a better approach from the BD side, but it’s naive in the extreme to think Adobe would bother working closely with anyone who has set themselves against them in the past – and before you kill me for it, from Adobe’s point of view (or even from my own) openBD hasn’t established it’s bona fide’s as seperate from New Atlanta yet, so the position Adobe takes is fair enough. Give it time and see what happens.
    Either way, back to the point of this blog post, I think it’s a great step and will ultimately provide enormous benefit for all cf developers.

  10. @Toby
    Thank you for your thoughts.
    Do you mind letting us/me know how we could improve the trust level to the OpenBD project? We have stated many times our "connections" to NA. In the beginning of this blog comment section, Alan (t

  11. I think time is the only thing really – Avoid politics and just keep doing what you’re doing, after a while it will be self evident that it’s a different horse altogether. You’re under an unfortunate stigma that comes from things beyond most of the people involved as far as I know (and caveat: I know little about the openBD project itself) so I guess it’s a matter of being new and working at it, like you’re doing 🙂

  12. I think part of trust is knowing that your partner in trust is not just going to open up and fire at every opportunity.
    "How can we demonstrate this trust, if you are not allowing us to play at your party? "
    "This would have been a open approach and a trust level we could have accepted. "
    "If Adobe were eventually driven out of the CFML business because an actively developed open-source community product, we’d ALL be better off in the CFML world. "
    I can definitely see how trust could be an issue.
    Notwithstanding that New Atlanta, the ‘parent’ of OpenBD, is actively moving people off of CFML.
    On the New Atlanta home page: "We migrated myspace. Let us migrate your space."
    Indeed: http://browseusers.myspace.com/Browse/Browse.aspx
    At the very top of the New Atlanta Open Source Overview page (and in large letters on the New Atlanta home page): " Migration Solutions for ColdFusion Applications to ASP.NET"
    The MIcrosoft white paper on the Blue Dragon product page tells the story of IntraLearn adopting BD.NET to migrate to ASP.NET
    http://www.intralearn.com/Products/LSNET.aspx
    I don’t quite follow how can anyone not directly employed by New Atlanta, but interested in growing the ColdFusion community can still be interested in New Atlanta’s efforts which does include OpenBD.

  13. @Calvin
    Have you considered the huge damage Adobe itself does currently by not making any real effort to market ColdFusion outside of the Community? It is 100 times worse than any damage New Atlanta or any other small competitor could ever do, I re

  14. >>"If Adobe were eventually driven out of the CFML business because an actively developed open-source community product, we’d ALL be better off in the CFML world. "
    I’m NOT a part of OpenBD, and have never even used it.
    The statement above is simply the logical point that, even in the most extreme case, we needn’t worry about Adobe’s profits or lack thereof if a result of a successful OS alternative.
    >>New Atlanta, the ‘parent’ of OpenBD, is actively moving people off of CFML.
    So what? We’re not talking about insulting your sister here. Obviously those companies have given up on CFML; why attack anyone for offering a needed business service? Do you attack Adobe when they make money moving someone off PHP? Adobe does it for the exact same reason: money.
    "Trust" here sounds a lot like, "don’t take our customers," which is going to happen any which way you slice it once there is a good free alternative. Might as well get used to it rather than make excuses about "distrusting" those offering it. If you want to pretend it’s about community, recognize Railo and OpendBD are offering a great service to the EXISTING CFML community. Any growth is icing on the cake.

  15. Something just doesn’t feel right to me here… I’ve followed all of the political drama surrounding this topic since the OpenBD announcement, starting with the backhanded responses to said announcement from Damon Cooper’s and Adam Lehman’s "personal" blogs – and all of the swirling controversy that has ensued since then…
    I "get" that there has been bad blood, mistrust, *whatever* between Adobe, nee Macromedia, nee Allaire and NA for some time. We all get that… ad nauseum…
    I "get" that Vince’s wording offended several people.
    I "get" that in the OpenBD private email list, Alan said some things that could be construed as "anti-CFML community."
    What I don’t get, is how one can use any of that to deny (or let’s say, to be fair, "not invite"???) other CFML engines to sit at the table?
    Even if we take every past accusation, innuendo, etc., from either/both/all sides – as absolute gospel-fact (and I’m certain that, as usually is the case, when emotions are set aside, the truth lays somewhere in between) it’s still all irrelevant to the matter at hand. Completely.
    Either Adobe is embracing this CFML stewardship transfer/movement/whatever vis-a-vis the Advisory Committee, in which case ALL parties should be invited – OPENLY – to sit at the table and take part. Or they do not really support it.
    You are either pregnant, or you’re not, there is no in between.
    None of the reasons you articulate in your post are valid for taking the attitude of picking the "cool kids" you like for your team and making the "not-so-cool" kid go play by himself because he was mean to you back in the 2nd grade. Or worse, allowing then to prostrate themselves on your blog like Alan and Nitai have been forced to do here (it’s sounding like: "please explain what we did wrong?", "tell us what we can do to make it up to you?", "How can we demonstrate this trust, if you are not allowing us to play at your party?" etc.) Unfortunately, that’s pretty much the avenue you left to those guys…
    If your post was in defense of Adobe *not* forming, joining, participating in, etc. such a committee – then it would at least make sense. But to use the above as reasons for not being open about an open committee is at the very least misguided, more likely disengenuous, and most unfortunately… petty.
    Ben, I have bought – and loved your books – and not just the CF ones. I respect your knowledge, experience and commitment to ColdFusion, however I am disappointed in not only Adobe’s decision here, but more so, this kind of posting. In my eyes, you have done just what many are accusing Alan, Vince, etc. of doing, and that is: fracturing the CFML community, rather than trying to coalesce it.
    I’m sorry for the diatribe…

  16. Thanks Ben. This is great news, and don’t let all the naysayers make you doubt it. For every vocal complainer, I’m sure there are 10-20 happy campers like me out here.

  17. "Either Adobe is embracing this CFML stewardship transfer/movement/whatever vis-a-vis the Advisory Committee, in which case ALL parties should be invited – OPENLY – to sit at the table and take part. Or they do not really support it.
    You are either pregnant, or you’re not, there is no in between."
    First off, don’t say "vis-a-vis" ever, unless you are Ricky Gervais or doing an impression of Ricky Gervais. Otherwise, you just make people that have seen the British version of the Office giggle, no matter how important your point.
    Secondly, please lose the "you’re either with me or against me" attitude. Everything in life is not black or white; there are plenty of in between shades.
    Say a poor homeless woman with a child were to come up and ask if you could spare some change. Would you? I know I would see if I had any on me to spare. Now say some obviously drunk homeless man came up and rudely demanded you give him some spare change. Same response? Definitely not from myself. Does my response to the second scenario mean I’m unkind?
    I, for one, fully agree with the decision. If a group supports CFML only to the point of trying to match functionality in an effort to move users to another language, are they trying to move CFML forward? Absolutely not. So what good would come of having them sit on a board to discuss the future of the language?
    Like Ben and others have said, I’m not trying to shut the door in OpenBD’s face. They are more than welcome to provide input to the comittee, I’m sure. Become active participants in the community long enough, gain trust, show your true intentions, and then see what happens.

  18. A couple of years back when alternative CFML engines started to gain popularity, I wondered if the CFML language would get fragmented as each vendor tried to get some competitive advantage over the others. And at that time I thought that would be no good for anyone, developers and vendors alike. At the time, I thought CFML the language was an open standard; now I am not so sure if this is the case- is it?
    So during a chat I was having with Gert from Railo he mentioned that one of he goals was to establish CFML standards. I was very , hmmm – excited, no I am not that nerdy, revealed maybe, lets go with happy. At the time, Railo did not support my favourite CF Frameworks, so I could see why Railo would want to match Adobe’s features (which just as they got close, slipped away with CF8). They also has some of their own ideas like CFVideo they were playing with. The fragmentation had already started!!
    So I asked Gert what would happen if Railo released CFVideo, and then Adobe came out with the same tag (and you know Adobe know a thing or two about video) with slightly different attributes? He said Railo would have to change their tag.
    To (finally) get to my point, in my opinion, the advisory committee would be about defining tags, and as Ben states, not how to implement them. How much trust do you need to do that? OK, maybe a little simplistic (and naive). Does Adobe think new features would be leaked to the community before they are ready to announce it? I have never understood why Adobe is so cagey about what they are working on – will this philosophy on Adobe’s part have to change in order for them to fully embrace the openness of CFML?
    Well I guess all this, and much more, will be ‘hammed out’ over the next month or two – hopefully not years.
    It’s good to know you had a Jedi on the committee.

  19. I know it’s not as developed as the other engines, but is anybody from the Smith project to be included in the committee? I’ve participated in Smith’s recent development and would certainly be interested in being involved.

  20. I don’t understand why Adobe thinks relinquishing stewardship of CFML is a good idea. Isn’t that still "essentially only helping competitors"?
    I understand the "trust" component, but what’s different about the economics now vs. a couple of years ago? Does the ColdFusion team suddenly have a bunch of time on its hands?

  21. @Ben
    A good move in a good direction, but I’m a bit unsure how open you intend the CFML standards (or the workings of the advisory committee) to be. It would be great to clear up certain messy parts of the language as it is. You could also leverage

  22. Sure, I have the power of <CFBlowYourMind> at my fingertips and the power to use tags to do unimaginable things. but, when I’m training new programmers (who are experienced in other languages) on coldfusion I find my self reluctantly saying, "well, that’s how you would expect to do it, but that’s NOT how you do it in Coldfusion". These comments are embarrassing to me, and I always defend the barrage of questions that ask why we use CF over anything else.
    My personal feeling is that I shouldn’t have to defend my decision to use CF. I want the non-believers to bow at my feet for mastering the CFML(I can dream)
    I think any attention that can be given to CFML is awesome. On one side I think that engineering the next "killer tag" should be postponed and focus be turned inward on cleaning up and refining the CFML language. But, on the other side a ‘better’ CFML doesn’t sell without new features.
    Getting someone else to refine the stuff that ‘gets stuff done’ seems like the right way to go. They are committed and have the best interest of the language at hand, not a budget. As a coldfusion programmer, I think those interests are mine as well.

  23. Can you make recommendations to the board. Is there a form somewhere etc.
    One thing that always annoys me is how they reuse tags. This makes documentation / intellisense impossible to read and work with.
    For example what does
    <CFGRID do, well it originally was a Java grid, then a Flash grid, then a HTML grid. Now it has lots of paramaters some of which are common and some of which are specific to the implementation you choose.
    Why wouldn’t they do
    <CFGRID – Original Java Version
    <CFGRIDFLASH – When they added the Flash version
    <CFGRIDHTML – When they added the HTML version
    A tag should have a single purpose, and not try to be too many things, there are a couple examples of tags that do two totally different things with the one tag if you give it different paramaters, why this wans’t just two tags is beyond me.
    Anyway, the community should be able to table suggestions for discussion.

  24. Dale, actually a site with that info and more is on the way. Ray Camden is taking the lead on getting the site up, and we’ll post details as soon as we have them to share.
    — Ben

  25. Great,
    I realise everyone will have different ideas, but wouldn’t it be good if you could see all the suggested ideas and vote on them.
    JIRA has this feature and Adobe have a licence.

Leave a Reply