The ColdFusion Community Needs Some Daily Affirmation
I
am beginning to feel that the ColdFusion community are in need of some
serious self-esteem help. Repeat after me, ColdFusion community, "You
are good enough, you are powerful enough and doggone it you have a
solid user-base!"
Tell me if this sounds familiar, you are having
some debate, online or off, about come coding related topic and
inevitably someone trots out how the ColdFusion community is shrinking
and that this proves that X [feature|framework|marketing plan] is
absolutely [necessary|frivolous]. Generally speaking this is offered
with little to no actual proof - at best we get a reference to TIOBE or
that some company they know is dropping ColdFusion (and please don't
even mention what GoDaddy hosting has to say). In the end, his point of
feature X may be challenged but the assertion that the community is
shrinking is left to stand. In fact, we, as a community often seem so
obsessed with our size I want to build a project and call it cfEnzyte -
it may not work but at least it might get us over our size obsession.
We're like George Costanza telling other language communities "I was in
the pool! I WAS IN THE POOL!"
Its like ColdFusion has its own
personal Dick Cheney's running around proclaiming that the next
<cfMushroomCloud> is just around the corner. That mushroom cloud comes in
the form of any number of the things - the TIOBE index again, yet
another acquisition, that CF isn't open source, that the cost is too
high, that a certain indispensible person is leaving the product team
or perhaps that "OO gurus" are scaring away new developers by making CF
too complicated. This is all coming to pass on a ColdFusion community
teetering on the edge of collapse and just a few BlueDragon.net
licenses away from oblivion.
Except that it isn't true. Adam
Lehman quoted new statistics showing that there are now 750,000
ColdFusion developers worldwide during the cf.Objective() keynote.
While that may not have any .Net shops quaking in their boots, it does
represent a 50% increase over the last numbers I recall quoted before
the Adobe takeover. Nevermind that, but sales of ColdFusion 8 have been
exceeding expectations (forget the actual quotes on that but they are
good) and analysts like Gartner said that "ColdFusion is unmatched by
any competitor
for ease of use and technical capabilities" (see Kristin Schofield's post
- or look up the recent awards). So, let's get it straight that the
underlying premise is false. The ColdFusion community is, in fact,
growing.
Nonetheless,
these facts seem to have been overlooked or disregarded by the
community when they were announced (probably because they don't fit the
typical storyline). It's funny to me that as a community so obsessed
with being not told we're dead, we're often too quick to proclaim
ourselves at death's door. Sometimes it feels as though the best we can
muster is, "It just so happens that your
friend here is only MOSTLY dead. There's a big difference between
mostly dead and all dead. Mostly dead is slightly alive. With all dead,
well, with all dead there's usually only one thing you can do." Being
mostly dead isn't the most welcoming message for growing the community
and, clearly, its far from the truth.
Although other languages can do most of the same things that CF can, oftentimes you must resort to third party tools.
Standardization comes in handy when reading someone else's code. With CF you don't have to search for external documentation (as often) because there are less third-party tools used and you already know exactly how the CF tags and functions work.
And if you do have to look up documentation, Adobe has it all there for you, readily available for all CF versions.
I think that observation bears repeating. Whenever someone claims CF is dying, the instinctual reaction is to refute them, and we tend to overlook the fact that we're not being given anything more than an unsubstantiated opinion. Maybe our response needs to be a smile and "Oh, really? What kind of data do you have to support that claim?" And when they can't provide the data, share with them the statistics Adobe is providing (and I think it was said that the developer count actually came from a study done by a third-party, which lends it even more credence).
It's funny that you framed this post within the context of self-esteem issues, because one thing that stood out for me during this latest OO debate is that CF developers may be a bit self-conscious about their programming language and their development skills (and I'll admit to some self-doubt of my own on the latter one), but they don't give in to those fears.
A CF developer is not going to code in such-and-such a way just because a lot of folks say that that way is "the better way" or "the best way." If CF developers were content to follow the crowd or taking the safest programming career path, we'd have all switched to one of the more "popular" languages long ago.
And I think that's one of the flaws with this current OO debate: telling developers that they should adopt OOP because OO is at the heart of most of the other major programming languages or because it will make them more marketable in the job market isn't all that much different then telling a CF developer they should become a Java developer or a PHP developer. OO proponents are free to keep phrasing the issue in those terms, but should recognize that they may not convince CF procedural programmers, who have resisted the call to switch to more popular, OO-based languages, with that tactic.
The emphasis of the debate as to whether OOP is the best direction for ColdFusion should be focused on the technical pros and cons of such a decision given the architecture and abilities of ColdFusion, not on whether or not OOP is "better" than procedural programming.
And the more quantitative data that can be brought into the discussion (execution times, memory usage statistics for certain scenarios, documented use cases, etc.) to support the arguments, the better.
My name is Brendan and I like coldfusion :)
I look after a coldfusion application that get over 2million coldfusion requests a day with average request times of less than 400ms.
"ASP and ASP.NET are also not programming languages because they make use of other languages such as JavaScript and VBScript or .NET compatible languages. The same is true for frameworks such as Ruby on Rails, ColdFusion, Cocoa, and technologies such as AJAX."
So ColdFusion is considered a framework because it makes use of other languages such as JavaScript? Couldn't the same be argued for other web scripting languages such as PHP, which is ranked 4th on the list?
Consider me baffled.
Model that would make CF more popular is: free server + commercial IDE or to make CF server, by price, almost free.
