So...ColdFusion is Dead, Right?
Since I announced that I was going to do future development with Ruby on Rails, I've received some email asking "Is ColdFusion really dead then?" CF developers have been hearing this for years, but I started thinking about the question itself.
First, my quick answer: No. ColdFusion's latest release is, by all accounts, its best yet. I don't have figures (other than Adobe's) for the number of ColdFusion developers, but it's a sizable community. And yet the question, "Is ColdFusion dead?" persists.
My longer answer to the question is this: how much does it matter if the size of the ColdFusion community is growing/stagnant/shrinking? Well, surely, it matters for job prospects, but let's leave that aside since most ColdFusion developers have jobs already.
We live in a culture that is fad-driven. That is a byproduct of our culture being youth-focused. A recent experience in a hospital brought home to me the cost of this infatuation: we leave our old to live (and die) on their own. But the consequences of being fad-driven affects all of us.
As developers, we're paid to produce great applications. That's what we're paid to do: most applications are far from great. They are, mostly -- and at best -- mediocre. That's a shame -- because developers who can and do deliver great apps are always in short supply. But so many developers settle for simply being one of the pack.
Marketers talk about a product's "value proposition" -- that which is central to the product, differentiates itself from other products, and adds value to customers. My contention is that the "Is ColdFusion dead?" question only pertains to developers whose chief value proposition is "I work in a cool language!" These are people who get their self-worth from the pack they belong to, rather than the individual work they do. And that's no value proposition at all.


I've never heard it put any better...
The choice of technology or platform is a very personal one, and an indicator of one's preferred medium for expressing their creativity. Moving from one language to another should be expected; just as a craftsman shifts from one area of interest to another and allows these shifts to communicate his ideas in different and unpredictable ways, so does the programmer move between languages and technologies in an attempt to fully explore the possibilities.
I also often hear 'Coldfusion ? I heard it's dead language' from my Java/C++/.NET buddies. Reason behind is that they not know too much about CF and quick googling gives them lots of articles where words 'Coldfusion' and 'Dead' stand close together. I try to convince friends and Google that Coldfusion isn't any dead by writing articles with counter points. I believe Coldfusion funerals is just kind of trend that dragging from dot-com bubble years.
If you're a developer you're a commodity - I guarantee you, I can find someone to do it cheaper.
In your case, RoR works best for you, to provide solutions to your customers. In my case, the Adobe "stack" works best. My team and I can concentrate more on business solutions and not technical matters. Then again, that works for us, and as long as Adobe supports that, it's not dead.
Cheers,
David
http://www.IsColdFusionDead.com
Bad assumption. Where I live, in MS's backyard, there are very few ColdFusion jobs and more shops everyday are converting to "all Microsoft shops", leaving behind ColdFusion. I have been very productive the past 12 years building great ColdFusion applications, but now I can scarcely find any CF jobs in this area. But, to get to your real point, I think it does matter whether the CF community is growing because managers look at it like this: can they readily find CF developers? I have kept your article "Conformity v. Innovation" as a tool to try to reason with managers, but it does not address the question of availability of resources.
The real question is: "Is ColdFusion a platform that I should either a) begin learning, or b) continue with as my primary language?"
This question is a not as cut and dry, but if you sample the programming community at large, an unfortunate answer begins to emerge. We all know the answer, but we don't want to admit it. Would a new programmer be served best by learning ColdFusion or something like AMP or RoR?
BTW: my LylaCaptcha for this post was (no kidding) "RIP".
RIP, huh? That's funny!
We are going through the worst recession since the 1930's 5.5 million, twice as many as were lost in the 1981-1982 recession and the second worst since World War II!
A monkey can work out that when a skill is smaller than some say of the competition + an environment where there are for example say 20% less jobs "in every language" business are picking off developers where the numbers are higher like MS.
yes there are less CF jobs, but there are LESS JOBS, it's not a condition of CF being dead, a recession!
ColdFusion cannot die its evolves! Since 1995 that's what CF has done! Many languages have come then gone, CF will face more changes, but let if do what it does the best, like the borg, assimilate!
IMHO the question is: Is ColdFusion alive enough? Is the community alive enough?
There are probably three main problems with CF:
1) tremendous lack of tools: Java, but even Groovy/Grails, have tons of tools, of any kind, from code analysis to test coverage to refactoring, etc. This makes CF lose even against the verbose Java
2) CFScript was cool some years ago, but modern dynamic languages are far superior: drop CFScript, add Groovy, and CF will ROCK again!
3) IMHO, the bar is too low: it's too easy to write poor software, because (at least here in Italy) companies can't see the value of deep knowledge of the platform, so people with poor knowledge came, is productive in a few weeks, and start to write production code. ARGH!
If it was today and she was looking for a job I would say, be versatile! If I want her to be rich and pay for her own wedding, then I would say use what every language is best for the project. In most cases for me a client needs back office integration so CF or .NET is best. My clients don’t care what language I use just that it saves them money, does everything it needs to do and it can be supported. 9 times out of 10 thats CF.
CF helps my clients consolidate and bring your other development platforms into a collaboration of which most IT teams I work with have never experienced before. In most cases CF saves my clients thousands in development costs long term and give them a very scalable platform that will insure the feature success in their competitive market.
Here is a quote I would love to add
“Here’s the bottom line: no other web development toolset available today gives you an equal balance of flexibilility, scalability, integration with other technologies out-of-the-box RAD experience for dynamic web applications than ColdFusion. There are plenty that do a better job in one of these areas; there are few that do a slightly better job in two out of three; but there are none that match CF in all three areas. This is not marketing speech, it is third party neutral analysis of the product and the technology!”
One thing is for sure CF is not going away for me until I find something that can do all the things it can do while allowing me to get under the hood if I need.
As for jobs, there may not be many right now, short term that means more money for me as a CF developer than a ASP developer but Adobe are pushing the next generation, they are spending a lot introducing classes in Universities so this won’t last for long. The next Gen is out there I have seen more and more people interviewed with CF in on their CV. Five years ago I would have never seen this!
I've managed a ColdFusion User Group here in Connecticut for nearly 5 years, and our membership/meeting attendance has increased steadily over the past few years. I hear the same from other managers, and there are new groups opening regularly.
I'm usually the point person for open CF positions in the state (we're a state with poor economic growth, by the way) and the job market is very healthy, even now. I've only ever had one member find it hard to get a new CF position (after he was laid off) and he eventually moved on to a .Net position (albeit for significantly less money).
I recently fielded a call from an agency who gave me the "everyone is getting out of ColdFusion" line - when I (politely) challenged his assertion he said that he based his opinion on one client who switched "from ColdFusion to SharePoint" (seriously, that's a quote).
My point: the perception and the reality, as far as I am concerned, don't match. Maybe that's a natural progression, I'm sure some things need to be seen to be believed, which is ok.
I still firmly believe that you should always use the tools that put you in a position to succeed and in this case Hal has decided that RoR is indeed that tool.
Cheers.
It is funny that it has never done better. Adobe is posting record profits, there are record number of users, etc.
The product is going gangbusters and I'm sure the sales phones are ringing off the hook at Adobe. Why wouldn't they? I can't believe how much "Win" is in CF9.
So why do people keep saying it is dead--when it is doing so well? That is the question. I wonder if there is some conspiracy. Follow the money? Who stands to gain?
Thank you,
Brock
Is COBOL dead? Many would say yes, but I know COBOL developers still making a lot of cash, so it isn't all that dead.
To anyone asking me what language to learn: do your own research and base your decision upon your results. Would my decision as to what language I learn be the same as the decision I made 12 years ago? Probably not, but I would like to thinK i would still use it in some capacity. My goals today are very different than what they were 12 years ago.
I would say: "learn at least 3, but be sure not me miss ColdFusion one day." :)
But Hal, would you tell her to learn language that is actively on market for last 2 years (most) or something that steadily exists for last 10+ or is supported by mastodon MS is.
Please don't take me wrong. I don't support nor advocate any side, just think we have too much of "black & white" here :)
That was yesterday. Today I see Railo, ColdBox, Mach II, Mura, etc., not to mention the passion and excitement I saw at CFUnited.
Where a few years ago you could give ample reasons not to use CFML for a project (too expensive, too few CMS options, too few helpful resources), that has now changed. A new generation of youngsters are going to be able to use Railo to build their companies on the cheap, use Mura to give clients a solid friendly CMS without breaking the bank, rapidly build enterprise applications on the back of ColdBox ... and the community will grow and prosper again. These are only snapshot examples of a community that is in the process of rebirth, not death.
Is it PHP? Can anyone name a PHP website that hasn't been hacked at least once? For whatever reason, websites written in PHP seem a whole lot more vulnerable to SQL injection attacks than sites written in coldfusion. Even if you're a really sloppy programmer, coldfusion manages to automatically escape quotes in SQL statements. Apparently, PHP doesn't do that.
Is the hot trendy language Ruby? Can anyone name Ruby-on-Rails website that hasn't gone down due to high traffic? Apparently, Rails is hideously slow.
Is it C#? Tell me, what do you say to a customer who complains that something on your C#.net site doesn't quite work in Firefox? You have to say, "sorry, I hit the compile button and some magic happens and out comes a website and I have only a limited ability to tweak it." That's ridiculous.
Perl? Remember when Perl was the language dujor and everyone said, "why are you paying money for coldfusion when perl is free?" Well, nobody says that anymore. Perl (on websites) is really dead.
ASP (the original ASP, not ASP.net) is dead too because Microsoft has moved on, but there was a time when people said, "why are you learning this coldfusion language made by this little macromedia company that nobody has heard of - Microsoft supports ASP so that's what you should learn." Well, nobody says that anymore.
Have you left Java out of the list on purpose?
For me personally, UI has got to be one of the most rewarding aspects of development right now. CF is still my primary language but instead of adding .NET or ROR to my arsenal I chose JS. Best decision I ever made.
Anna
_______________________
http://skylinemp3.com/
That said, it's very easy to work in, and it's easy to get new staff productive (assuming programming competence, but no CF experience).
So CF is great for work; personally I'd rather program in Ruby, Python or PHP, which is what I do for recreational programming. Once you understand how the web works, you should have no problem moving between languages. They're just notations for expressing solutions to problems.
However, programming languages tend to die very slowly turning from overhyped to underused. A long the way they can get revivals, inspirations from other languages, become ISO standards, become part of college, curriculums, etc.
Note also that an important part of a language's strength is quality of the community which supports it. "One thing that ColdFusion seems to suffer from isn’t that we don’t have a good framework, but that we aren’t unified under one as Ruby is. Java has a few huge frameworks (and more than a few small ones), but they also have the numbers to support that many." http://adamfortuna.com/2007/02/25/choosing-a-frame...