CFML Advisory Committee Officially Dead: My Version of the Story
Why Adam chose not to take Peter's eloquent resignation email at face value, but instead drums up yet another conspiracy, only serves to further his agenda. Back to our story. So why didn't I mention the CFML Conventional Wisdom list to the committee? Two reasons.First, it's a public mailing list, and I found out about it like everyone else did, on a blog post or Twitter or who even remembers where. Alan may have even sent me an email directly to make sure I was aware of it, but it wasn't a big secret. There were no back-room dealings on any of this. Alan saw a need, created the group, and then announced it publicly. Simple as that. Second, and more importantly, I saw this as a completely separate effort from what the committee was doing. The committee never had a public forum to discuss CFML, and the powers that be on the committee didn't want one. So this provided something the committee didn't, and giving the community a voice in helping to define the language they use is something vitally important in my opinion. Ultimately the Conventional Wisdom list could even serve as a benefit to the committee. Loose ideas could be hashed out, sample code usage could be created, and the results could be submitted to the ivory tower that was the committee. And a bonus reason: at the time when the Conventional Wisdom list started, the committee was in no way, shape, or form in the business of discussing enhancements to the language. We weren't even able to codify what was already in the language, so for Sean, Peter, or me to bring a CFLOOP enhancement discussion to the committee wouldn't have made sense. The committee wasn't the time (or the place, frankly) to have those sorts of discussions. The way Adam phrased all of this makes it sound like Alan, Peter, Sean, and I got together and were all conspiring against the committee, and maybe Adam even believes against him personally. Nothing could be further from the truth. Sean, Peter, and I found out about the Conventional Wisdom group when everyone else did, and since people on the committee are supposedly aware of what's going on in the CFML community, I assumed everyone on the committee would have seen it as well. The implication that we were keeping a publicly announced, publicly available list hidden from the committee simply doesn't hold water. As for my better mouse trap header above, ultimately I think having an open discussion group is the way things should have been from the start. Why not seek input from the community at large? Why not have the discussions out in the open? Seems like a no-brainer to me. If Adobe wants to have enhancement discussions with their customers and among the members of their private programs that's great for Adobe, but that doesn't let the legions of CFML developers in the wild participate in the process. Again, openness always wins.Where I Agree
Adam did make a couple of points with which I agree."In the end, the community isn't losing much at all with the demise of the OpenCFML board."I completely agree with this statement. Though I was honored to be a part of it I questioned the effort from the beginning because at the end of the day, Adobe ColdFusion sets the de facto standard for the language. I made that point in my last email to the committee list (which for a very long time was the final email on the committee list), and I don't think anyone would disagree.I take issue with Adam's follow-up to this statement, but life's too short to nitpick every last detail of what he said. The real beneficiary of this effort was supposed to be CFML developers, but somehow that ideal got lost along the way. Bottom line here is that CFML developers don't have anything to fear due to the loss of the committee, because the practical value of the end goals were rather dubious from the start. It's in the best interest of the open source engines to be largely compatible with Adobe CF, which they are. We haven't had an official CFML standard before and the world hasn't come to an end, so the cf_apocalypse won't come now. "Innovation and progress in CFML is driven exclusively by the ColdFusion community."I suspect Adam and I have very different ideas of what constitutes the "community" and what community really means, but ultimately this is correct. The odd thing here is that before the Conventional Wisdom list was started, there was no single public forum where members of the community at large could discuss what they want to see in the CFML language. So if innovation and progress in CFML is truly driven by the community, they now finally have an outlet.
Setting the Record StraightNow, for the corrections."Matt claimed the OpenBD team was too unorganized to submit tags like CFJAVASCRIPT and CFSTYLESHEET (tags I had hope to include in CF9)."
Pure FUD on multiple levels. I may have said something along the lines of "These tags were added on a whim last week," but that's how open source projects work. If Alan or Andy get an idea, or need something for a project they're working on, they'll create the tags and release them in a nightly build. We then get feedback from people actually using the new features and refine as needed. That in no way means the OpenBD team is disorganized. It differs from proprietary software development, sure, but calling that process "disorganized" would be the equivalent of me calling Adobe "lazy" because they only have a new release every two years. Apples and oranges. CFJAVASCRIPT and CFSTYLESHEET were added to OpenBD, and Adam's response when he found this out was apparently to take it as an affront because we didn't run the idea by the committee first. Adam seemed to continually and conveniently ignore the fact that OpenBD is an open source project, so Adobe or anyone else can see what we're doing every step of the way.Furthermore, it was agreed upon by all members of the committee that tags and functions developed in specific engines would be brought to the committee only if their creators wanted the language enhancements to be considered as "core" in the CFML specification. We didn't consider CFJAVASCRIPT, CFSTYLESHEET, and some of the other innovations in OpenBD as "core" CFML, so we didn't officially submit them. But again, the source code is open. If Adobe saw something in OpenBD they thought made sense to be core to CFML or to add to ColdFusion, they could have brought it up and we could have discussed it.And let's talk about what "submitting a tag" to the committee even means. I'm not sure what exactly I was even supposed to "submit"--the tags were out there in the OpenBD source along with documentation as to how they are used, so wouldn't it make sense that if Adobe was interested in considering those tags for ColdFusion they could read the docs and ask about it on the committee list? If you get the sense from Adam's post that there was some rigorous formal process that OpenBD was somehow subverting, don't. There was no such defined submission process in place. Finally, the "tags I had hope[sic] to include in CF 9" bit is completely bogus. Yes, Adobe did make some changes to CF 9 (specifically CFSCRIPT if I remember correctly) based on the committee's recommendations, and I applaud them for that, particularly given that CF 9 was nearing the end of development at that point. They ignored plenty of other recommendations, and the reason for that--the real bottom line here--is that CF 9 was largely baked by the time the committee was even having these discussions. So to point a finger and say CFJAVASCRIPT and CFSTYLESHEET didn't make it into CF 9 because I failed to make an official submission to the committee is false on numerous levels. We didn't consider them to be core to the language, the code and spec were available from day one, and adding this new functionality to CF so late in the development process likely wasn't going to happen anyway. "Sean claimed that Railo wanted to wait a version (or two) to see how new Railo tags were accepted by the community before making a formal recommendation."
Again, this is how open source projects work. Did Adobe expect that the open source engines will stop following the process that is best for their projects and users, and hit the brakes on the rapid pace with which new features are added, to ask the committee's permission before making enhancements to their engines? Does it not make sense--and ultimately benefit Adobe--if the open source projects introduce new features to CFML and let the community kick the tires before finalizing the feature? That saves Adobe time in the future if they decide to implement these features, because a lot of the questions surrounding the new features and how they should work will already have been answered. I'm at a loss to see what the real issue is here. OpenBD and Railo are both open source, both have nightly releases, both have public roadmaps ... everything's always available for anyone to view. I think ultimately this comes down to a culture clash between open source projects and proprietary products, which was probably partially to blame for the failure of the committee's efforts. "As a community, we never needed the OpenCFML board to guide or document feedback."I give this one a "thumbs sideways." We didn't need the CFML Advisory Committee specifically to serve this function, but I don't see Adobe doing anything to foster open language discussions in a public forum either. Perhaps that isn't their job; they focus on finding out what their paying customers want, and no one can fault them for that. In similar fashion the open source projects get continual feedback from their users and make changes accordingly. I do think it's important that there be some avenue for people to discuss CFML as a language in an engine-agnostic way, however, but that was as simple as creating a Google Group. It's a much better solution and will yield far better results than the committee ever would have. "I really want to thank Ben, Rob and Ray for the work they put into the OpenCFML."... but no one else. Not Sean for making valiant efforts to keep things going even when the committee was at its lowest points, and not any of the rest of the people who participated far more than anyone from Adobe, and particularly Adam, ever did. If anyone questioned Adam's real attitude towards the committee that statement pretty much sums it up for me. He was never interested in setting politics aside and working collaboratively to create a CFML language spec, and apparently the only efforts that matter are the ones made by the people in his camp. "You're either with us or you're against us" has been proven to be a very divisive attitude, and it's one that ultimately isn't good for the community as a whole. "As far as I am concerned, the ColdFusion ACPs will be the CFML Advisory Panel for ColdFusion X and beyond. We'll be asking them to review and sign-off on all of our language enhancements (very soon)."So this at least defines what "community" means to Adobe, and helps to illustrate that they never had any interest in helping to define CFML as a language outside of their own product. That's fine, and makes perfect sense coming from a proprietary software company, but leads me to the conclusion that the CFML Advisory Committee was a PR stunt to begin with. Adobe's heart was never in it, they were just trying to get out in front of the open source CFML revolution. In Summary ...The goal of Adam's post is patently obvious: to blame everyone but himself and Adobe for the failure of the CFML Advisory Committee. His rhetoric sounds almost McCarthy-esque. Get people focused on a common enemy--real or imaginary--and they'll become oblivious to little things like logic and the truth. Let me be clear: Adobe's lack of participation and paranoia over the supposed malfeasance of Railo and OpenBD are, from my perspective, a massive part of what killed the CFML Advisory Committee. I'd have a lot more respect for everyone involved if we could have collectively decided to end the effort, made a joint statement, and parted ways amicably. But for Adam to post a truth-challenged version of events out of the blue, while not surprising, is in very poor form. And That's All I Have to Say About That
I've said my peace and then some at this point. Feel free to comment, and if you have any specific questions you think I can answer, I'll be happy to do so. If, however, your comment is of a "he said/she said" nature or intended solely to inflame the situation further, don't be surprised if I don't respond. Adam gave his version of the story, I've given mine in abundant detail, and everyone can continue to speculate on what went on behind the closed doors of the committee. If you care to, anyway. I'd certainly hope you have much, much better ways to spend your time. ;-) To me, it's not worth dwelling on all of this. The CFML Advisory Committee will go down as an interesting side-note in the annals of CFML history, and people looking back will wonder why we even tried in the first place. I've been asking myself that very question for quite some time.