The State of ColdFusion

The following is republished from the Tech Times #151.

In issue 145 of the Tech Times, I offered some advice on which web technologies beginners should invest time in learning. Ben Forta, the Senior Technical Evangelist at Adobe, felt I misrepresented ColdFusion when I described it as “relatively stagnant.” Having done some homework, I’ve now changed my thinking a little.

First, here’s Forta’s objection:

You are correct about the gentle learning curve, but can you clarify “relatively stagnant”? Just to be clear, the Webster definition of stagnant is “not advancing or developing”. ColdFusion was first released in 1995, ColdFusion MX 7 was released in 2005, 7.0.1 later that same year, and 7.0.2 in June of 2006. In addition, the ColdFusion team is hard at work on the 8th major version of ColdFusion (currently codenamed “Scorpio”), to be released in 2007. Obviously, we are both advancing and developing ColdFusion, and so the term “stagnant” is utterly inappropriate. As such, I must request that you update and correct your statement.

Forta goes on to point out that ColdFusion sits atop a Java foundation, and as such benefits from the full power and flexibility of that platform. My thinking here is that to take advantage of the Java platform beyond what ColdFusion exposes directly, you need to learn Java, which makes it a moot point in a discussion of what a beginner should learn first.

Getting back to Forta’s main point, there is, of course, no arguing with semantics. If the measure of health for a server-side platform is the frequency of releases, then ColdFusion has life in it yet. But even when considering this meaningless metric, compared to the release schedules of competing platforms like Ruby on Rails, PHP, or the dazzling array of Java web application frameworks, ColdFusion comes off looking, well, “relatively stagnant.”

How else can we measure the health of a platform? Well, one way is to look at book sales (something we do at lot at SitePoint). O’Reilly showed the results of the past three years of book sales at OSCON 2006. ColdFusion didn’t even make the graph, but when asked, Tim O’Reilly replied: “ColdFusion would be showing as a flatline at the bottom if we were to graph it.” Of course, a platform might not need books if it were especially well-documented, and perhaps that’s the case with ColdFusion. Or perhaps it’s just that ColdFusion isn’t evolving rapidly enough for people to need new books written about it.

Perhaps the way to measure a platform’s health is to look at the job market surrounding it. I’ve seen a smattering of reports that the ColdFusion job market has perked up recently, so let’s take a look. When measured against Ruby jobs, ColdFusion looks like a solid enough choice for now.

ColdFusion vs. Ruby job trend graph

Note that the numbers for “ColdFusion” and for “Cold Fusion” are roughly equal, so you can effectively double the ColdFusion numbers if you don’t mind working for a company that can’t spell.

When you throw in other more established platforms like PHP and ASP.NET, it’s clear that ColdFusion isn’t the best choice if you’re playing the numbers for a new career.

ColdFusion vs. others job trend graph

Even if you double up the ColdFusion line on this graph, it’s still only about 2/3 the size of the PHP job market, while ASP.NET and Java (not shown because it overwhelms the others) are even better choices.

But no, I wasn’t talking about any of these forms of stangnancy. Rather, my description of ColdFusion was based on an impression that the platform’s development had slowed to the point that it was unable to respond to the changing needs of real-world web developers in the same way as its aforementioned competitors. Even in major releases like ColdFusion MX 7, changes to the platform seemed to consist mainly of tacked-on features of interest to a small minority of developers (e.g. integrated reporting) or tie-ins with Macromedia’s (now Adobe’s) other properties (e.g. Flex).

Based on Forta’s message, however, I thought it best to revisit that premise. I perused a number of ColdFusion blogs, read a ColdFusion developer journal, and spoke with some active members of the ColdFusion community. And I have to say, on some points I was pleasantly surprised.

One trend I observed on ColdFusion-related blogs recently was a spate of ColdFusion 8 wishlists. Dave Carabetta published a particularly comprehensive one. These lists give a pretty good feel for where ColdFusion’s power users hope the platform is headed. Certain items are worrisome:

Eleven years in and ColdFusion doesn’t have anything built-in to it to really work with images on any sort of useful level.

ColdFusion needs a professional IDE. I have been working with Flex 2 lately, and it’s downright appalling to see the level of professional polish on the Flex Builder IDE versus the CFEclipse IDE.

Something that’s not on these lists that I expected to see, however, is a more powerful application framework. This seems to be one area where the ColdFusion community has really taken charge: Fusebox, Model-Glue, Reactor, ColdSpring, Unity, and many other projects exist as the foundation for different approaches to building ColdFusion applications.

Fusion Authority Summer 2006Next I sat down with the Summer 2006 edition of Fusion Authority, a free copy of which serendipitously landed on my desk a few weeks ago. First, let me say that this is a top notch publication, with just the right mixture of big names and enthusiastic upstarts writing timely and practical articles.

Refreshing my knowledge of ColdFusion code through the pages of the journal, I gained a renewed appreciation for the “hide the hard stuff” approach that’s exemplified by the platform. If you’re the kind of person who just wants to get the job done without getting drawn into the technical details, ColdFusion may be uniquely suited to your style.

An article by Kay Smoljak, who I met at Web Directions South last month, attracted my attention, however. In “An Honest Look at Integrated Reporting”, she describes the problems she had making real-world use of one of the flagship new features in ColdFusion MX 7. The severity of the bugs she describes are frankly shocking, and although it sounds like Adobe has been responsive to her bug reports, correcting many of the issues in the recent 7.0.2 release, one has to wonder a) how Adobe could release a flagship new feature that was so fundamentally flawed, and b) how nobody but Kay Smoljak seems to have noticed.

In my mind, this signals a disconnect between the core development of ColdFusion and the real-world needs of its user base. The reason there wasn’t public outcry as a result of the bugs in the integrated reporting features of ColdFusion MX 7 is because few people bothered to use the feature. When Macromedia/Adobe spends its time building integrated reporting that nobody uses instead of fundamentally useful features like dynamic image generation, there is something very wrong.

The good news is that Adobe has announced that ColdFusion 8 will have dynamic image generation built in. Nevertheless, I had to ask Kay Smoljak what she thought of all this.

I was actually a ColdFusion developer long before I was anything else, and really my impression of ColdFusion as a whole is pretty positive. [...] Don’t get me wrong – ColdFusion integrated reporting is a steaming pile of turds. But I’m still a fan of the platform. Perhaps they don’t give the right impression to the wider community of developers, but there is a lot
of stuff happening. [...]

I have some ideas about the type of developer that is attracted to ColdFusion, which I think contributes to the “stagnant impression” – they tend to be “get the job done and move on to the next target” type people rather than coding enthusiasts – they’re just not vocal like Ruby On Rails, PHP and .NET fanatics.

…which is all pretty reasonable, as far as it goes.

The question I keep coming back to is this: what exactly are you paying for when you choose to develop for ColdFusion? Lest we forget, Adobe’s ColdFusion server costs a pretty penny to license, and that’s money that your employer won’t be putting into server hardware, developer tools, or, ultimately, your pocket. Just what is it that you’re getting in return? It isn’t quicker bug fixes, it isn’t a larger job market, it’s not a richer feature set, and it’s not rock-solid reliability. It might be timely support, but other platforms offer that too, and without the up-front costs.

In the end, the only solid reason I know of for choosing ColdFusion today is if you simply prefer its way of doing things. But, when we compare ColdFusion to competing platforms, I do honestly believe that the core development of ColdFusion has been stagnant for some time. It may be that this is all about to change with the release of ColdFusion 8 next year and, thanks to Adobe Labs, we should be able to tell long before this new version hits the streets. But based on where the platform is today, I must stand firm in my recommendation that newcomers to web development look elsewhere, at least for now.

Free book: Jump Start HTML5 Basics

Grab a free copy of one our latest ebooks! Packed with hints and tips on HTML5's most powerful new features.

  • Michael Long

    Yeah, CFMX 7.0, 7.0.1, and 7.0.2 since ’05 sounds good, but that’s February, ’05, and the .1 and .2 “releases” exist primarily to rollup hot-fixes and repair critical bugs.

    ColdFusion as a language and platform is being squeezed out by the open-source PERL, PHP, and Python crowd on one side, on the Windows side by .NET., and by Java and J2EE systems running on high-end enterprise-class systems. New dvelopers want to learn “cool” languages like Ruby, and are increasingly hard to find for CF-only shops.

    And unlike open-source platforms, Adobe/Macromedia seems to be locked into monolithic releases years apart and largely ignoring developer requests. Take a case in point: At the beginning of the year Apple released their new Intel-based systems that broke the CF installer. But no news exists from Adobe about when, or even if, the problem will be resolved. As such, if you’re a CF developer working on an Apple platform you’re largely SOL.

    Compare this to the response time of an open-source project like MySQL, which had an OS X/Intel native release just ONE WEEK after Apple shipped their Intel computers.

    Sorry, but I don’t think you misrepresented CF at all…

  • http://boyohazard.net Octal

    I did a fair amount of CF development about 4 or 5 years ago. I too found your Tech Times article and this blog follow up to be pretty much spot on

  • http://www.dunkirksystems.com zivo

    To quote:

    Note that the numbers for “ColdFusion” and for “Cold Fusion” are roughly equal, so you can effectively double the ColdFusion numbers if you don’t mind working for a company that can’t spell.

    However the SitePoint Blogs navigation on this very page has it spelled “Cold Fusion” and the URL has a dash between the two words…

    mp/m

  • http://www.sitepoint.com/ Kevin Yank

    Good spot, zivo. Fixed, and internal butt-kicking in progress… ;)

  • http://www.dunkirksystems.com zivo

    Glad I could help the cause…! :)

    mp/m

  • Javier Julio

    Hey Kevin, as a CF developer I appreciate your input but I still don’t think its enough to back up your statement. I still don’t feel you have done enough research although you are the only writer I’ve seen actually do any research about CF! Most talk about CF as if version 4.5 were still around, ick! You focus a lot on the negatives but without realizing why Adobe/Macromedia has never maybe implemented a feature.

    For example, you bash on imaging. Personally, I have had no need for it. Why would I when I have the awesome cfchart tag to display my graphs/charts in flash? Not to mention that the open source community for CF is top notch! There are plenty of Imaging CFCs out there made available out to CF devs.

    The real beef I have (although no disrespect, I love sitepoint) with your article is you base stagnant on all the wrong things. You really have to dig a bit deeper into CF, look at the new tags and features that have come in that help development. For example, small things like cftimer or cftrace. Or how about cfform that even implements JavaScript validation for you with just a few attributes?! How about even being able to build flash forms with cfform!

    Using cfdocument I can easily create flashpaper or PDF documents by just wrapping content with a cfdocument tag. How easier can it get?? Again these are new features that have appeared in version 6 and 7. On my website I have my resume available (www.javier-julio.com) in either format with no extra work! I just hope that you give the language another shot because in my mind its definitely not stagnant. In the Washington Metropolitan Area where I live is quite the mecca for CF which I’m very grateful for. I wouldn’t want to work in anything else. Having a career in CF is a very wise decision. It’s where the money is at.

    The question I keep coming back to is this: what exactly are you paying for when you choose to develop for ColdFusion?

    The reason I see people paying for it is due to CF being a rapid application development language. You pay for its incredible ease of use. You just can’t say that about other script-like languages. The tag based nature of CF to me is it its biggest selling point is. Although there is much more.

    Great article Kevin and nice to see someone actually doing research on the topic. There’s nothing I hate more than someone who wants to come along thinking they can write an article about web technologies and bash on CF without even knowing anything about it. It’s come along way since earlier versions.

  • Culver

    I used to jog a lot in Central Park NYC. While stopping to stretch I’d often overhear guys on benches arguing about why My neighbourhood is better than Your neighbourhood. These arguments took a lot of time (these guys clearly had a lot of time on their hands) and often got pretty heated. They were, to any objective outside observer, not time efficient, that’s for sure. Once I happened to be around to hear an argument come to an end and see two of them head off home. I expected one to head east and the other west. Nope — turned out they both lived on the Upper West side about a block apart.

    A lot of arguments about development platforms remind me of the old timers in Central Park. It was a while back (ancient Greece no less) when we got the saying: When all was said and done, more was said than done.

    In 8 years of using ColdFusion this is the first time I have written anything about it. I’m too busy getting the right stuff done at the right cost — and keeping my company in customers.

    As for books, the manuals are excellent — you do have to read them. As for Adobe, so far so good: They seem to be putting the Macromedia/Allaire people in charge of platforms, a good sign of respect. And let’s face, Adobe has business smarts.

    It may not be the hottest community, or the favoured battle ground of sites this one, still, I highly recommend ColdFusion for beginners and experts alike.

  • John P

    Ah here we go again, bashing on ColdFusion. It seems like you just skimmed over any positives with CF and focused on any negative thing you were able to find. Not a very balanced article at all. For instance, you mention the Fusion Authority publication but focus mainly on the bugs in cfreport…not bothering to mention that the magazine focused on all the best new features in CF7. Hardly something you would expect if a language was “stagnant”. Like Javier, I’m not sure why the lack of an image manipulation tag is such a big deal, when there are so many good ones available, many of which are free! It only makes sense that Macromedia would focus their development efforts on things that can’t be done so easily with other methods. Let’s not even talk about all the stuff that doesn’t come pre-packaged with PHP, etc., doesn’t even come close.

    Other “indicators” of stagnation just aren’t valid. The O’Reilly book for instance. Personally I would guess that the reason it didn’t sell well was for two reasons…the CF documentation is quite good, and two, the Forta books had such a head-start and are so well-known in the CF community, it’s hard for another book to really make much headway against them.

    If you are a CF developer, you may be seeing what I am seeing…a community that is growing even stronger and developing even more and more tools every day, blogs going up, new frameworks to play with, etc. Sure, I agree a professional IDE would be great. The worst decision I think Macromedia ever made was dropping CFStudio development and trying to cram Dreamweaver down our throats as a development tool. An IDE that combined the strengths of Studio with CFEclipse would go a long way in satisfying a lot of developers. But meanwhile, we have a good selection of tools to get the job done with. And with the RAD capability of CF, we can get that job done faster and better.

  • http://www.i-devs.com i-devs

    I think it is time that CF adopt some real world product marketing… razors and blade refills.

    Sure, I but Studio 8 and I can develop in CF at no cost. But what am I going to do with it? I’ve already shelled out for a server, which of course has PHP on it. And I’m quite happy with my hosting provider, but they don’t even offer CF as a platform… and given the cost, there are far less who do.

    They would be much better off to make the server free or ridiculously low priced, and then sell an IDE or souped up support in DW. I’m sure there are a lot of designers/developers who would be interested in trying or using CF, but without any place to put it without driving costs up, or paying for two servers instead of one, just harder to justify. But I could be way of base… haven’t even looked at it for 3 years.

  • Anonymous

    I would tend to agree with your advice that CF is not the best thing to learn if you’re getting started, purely due to marketability and cost if “just getting started” happens to be your own business (then that very reasonable $1600 is a large chunk of change).

    However, I still find the term stagnant to be really inappropriate. As someone who’s been working with CF for many years as well, I’ve seen a lot of GOOD features added with every version and can see that the company behind it has a good vision for advancing CF as well as leveraging CF in many sectors and with other products such as Flash. There doesn’t seem to be anything stagnant about it. MAybe if you were talking about the job market, it would be more appropriate.

  • Anonymous

    And maybe this comment form should not post your comment if you happen specify an incorrect login. Because now my comment is anonymous, and we all know how anonymous posters are treated… Worse than their opinion not mattering and practically lynched for even posting something anonymously.

  • Javier Julio

    No offense but I hope you aren’t basing the sales only on O’Reilly books. At first I thought it might be a report done by then on all sales but I don’t think so. Personally, O’Reilly books are awful, who reads them anyway? No one in their right mind in the CF world even glances at an O’Reilly book. Just plain and simple. Don’t base your argument on that though, please don’t. Again the reason why developers go with CF (and large companies) is due to its rapid application development and simply ease of use.

  • Marc Truitt

    I have been a software developer for 15 years I have a MCSD and a MCDBA, I have been an advocate of Microsoft technologies (i.e. .NET) for several years. I started investigating other development technologies and platforms and Coldfusion was the first to come to mind. After working with it heavily for the past two years and earning my Advanced Coldfusion Developers Certification from Adobe I can say Coldfusion is one of the BEST developments tools/platforms available. I can tell you after working with both ASP.NET and Coldfusion I have found Coldfusion to be far more productive and actually have lower cost in the long run. To develop in Coldfusion you can use CFEclipse or Dreamweaver ($399.00 at Adobe) or if you’re masochists you can use notepad. To really develop enterprise applications with Visual Studio you need Visual Studio 2005 Professional ($699.99 at Amazon) or better yet Microsoft Visual Studio Team Edition for Software Developers 2005 With MSDN Premium ($4,876.31 at Amazon). In addition don’t forget that the MSDN subscriptions have to be renewed each year. You can install development version of Coldfusion at no cost. The monetary cost of .NET can add up quickly but there is also the opportunity cost associated with application development. By opportunity cost I mean the cost of what we could be doing. I like the security of Coldfusion being around for 10 years there is comfort in that. In the end we are actually looking at moving to Coldfusion for both the cost savings and the increase in developer productivity. Even with .NET 3.0 on the horizon we are still looking to Coldfusion and FLEX to be the solution of choice for web based applications.

  • SOSensible

    Kevin, you seem to know as much about ColdFusion as a teen age expert on marriage. After all he grew up around his parents and he has first hand experience… or does he? Well, he has third party experience and first hand opinions. Yet he speaks as an outsider and those who are married cannot help but be annoyed by his extreem need to overstate he is clueless.

    You have achieved two articles of inept opinions and profound void comparisons. Let’s look at the CF situation on a level you can understand. Multiply the number of IDE lisc. that people use for .NET (And they usually buy into a paid version from MS.) Now compare that with the price spent by CF developers. Another point of ignorance is that the move from what the tools do to what they don’t is a GIANT leap in the dotNET world. It’s just a matter of climbing the stairs with CF.

    Lastly, you are speaking about the former days. You are not looking at what Adobe did with Flex! They shipped a real IDE and dropped the price to an amazing level! They are working on next generation CF stuff right now. Some things they have talked about are things like integrated PDF Forms. MS has another seperate tool to do that kind of thing. You don’t pay by the server (which is suppose to be ‘included free with a paid for server’) but with MS you pay for each user to get the software that runs it. Do the math. One paid for CF server with FREE Adobe reader, or one (so called) FREE server and how many people are going to use the form tool?

    That was just one example of many many many many… heh, just go back to writting about things you have good knowledge until your willing to write the truth about ColdFusion. You do a great job when you know what you are talking about, read many of your works. Yet, it seems you just can’t leave achievment to be your standard. You fail every time you hit this topic to wake up and do some honest research to understand CF’s history, it’s market place, it’s current feature development, the new company that owns it, the current surge it is having in the market place, the work that has brought CFEclipse to it’s current level and Adobe’s chatter about a new IDE, and talking to skilled developers to see how CF benefits companies, and… well it just goes on. So please spare us another article of stagnant reporting where you seek for things that validate your opinions rather than objective realistic reporting!

  • rafael

    these technology tools help organizations obtain their business goals. from my experience, developers need to better understand the business of the organization they work for. true technology is important but one’s understandind of how they can add value to a business goal via their technological knowledge is crucial. in the end, I find understanding the methodologies of a few technologies is valuable anywhere you go.

  • Tom

    Kevin,
    Interesting article, however, I tend to mirror the consent of others who have commented here regarding the painfulness of other languages and the pleasure of using Coldfusion. I have been dabbling in web programming as a hobby for a couple of years. When I had the chance to change the way my place of work was doing business I first suggested .NET as the platform since I had an excellent instructor that took us all the way through the MCSD & MCDBA process. We set up our website in .NET and really felt the pain of getting it running and constantly babysitting it (webserver & code). Well, fortunately we had a copy of Coldfusion 6 lying around and I loaded it up on the server and tested it out. It really changed my mind about a RAD environment. In three days I was able to completely get my site converted over to Coldfusion from .NET without any major headaches. Before that we used to have massive headaches with .NET using their pages and code-behind BS that got rather tedious after a while and constantly testing the code on servers that were more more dot-netly fickle than they had to be (Curse YOU Micro$oft!!). Once Coldfusion was up and running it was fairly easy to maintain and certainly didn’t die as often as .NET did.

    When Coldfusion 7 came out with the CFDOCUMENT tags I about jumped for joy because I could push out PDF or Flashpaper pages with the least of effort. And it is was included in the server. I don’t think I would have been able to do it as easily in .NET. As it was, before this came out, I had to use an Access ADP to our MSSQL 2K server to print out reports in PDF from a full version of Adobe Acrobat in order to have an Acrobat file to send (yuck).

    To give credit where it is due, I have bought quite a few books from Sitepoint, including yours, and have enjoyed them. However, when it comes to web development, I really keep finding myself coming right back to Coldfusion because I can do a lot more stuff with it more rapidly than PHP and it makes itself very transparent to other technologies that come out (AJAX, etc). One of these days I may sit down and learn PHP and some of the other P-languages that are out there. In fact PYTHON is high my list, even more so than PHP, but I ain’t there yet because Coldfusion keeps making things easier for me.

    As for O’Reilly books, I REALLY DON’T LIKE THEM! And would probably have stronger words for them but I know this post will be moderated. And yes, Ben Forta’s WACK and Adv WACK books are excellent pieces of work when it comes to getting you up to speed in coding for Coldfusion. Those combined with the documentation from Adobe/Macromedia make it very easy to figure something out with a minimum of strain and effort. I do like Sitepoint books and have a large selection of them, so you all must be doing something right! 8-)

    Anyway, appreciate what you do, even with your slanted opinion on some things because it keeps people on their toes. Keep up the good work.
    Tom

  • dduck1934

    I don’t want to repeat what others have already said but I have to repeat how one of the biggest strengths of CF is it being a RAD tool. The price shouldn’t be a factor if you compare it to the other languages as a whole. Government agencies continue to choose coldfusion over other languages due to the fact that it is easy to use, and very powerful. I work for a government agency and we use ColdFusion for all our applications, and have found that there are very few limitations that ColdFusion cant do. Being able to use java and .net stuff makes the possibilities of ColdFusion endless! I would never consider it stagnant, I see ColdFusion continue to be on the rise. I see more and more jobs popping up looking for ColdFusion developers.

    As far as Books, I think Forta’s books have been labeled the “de facto” books for ColdFusion, its understandable why O’Reilly ColdFusion books are where they are on the graphs. His books are the only Coldfusion books I have on my shelf and they are the books I recommend to all developers of ColdFusion.

  • Aaron Christiansen

    I did a page search, and didn’t find any mention of BlueDragon, from http://www.newatlanta.com. Focusing on one source of ColdFusion for your “story” is myopic to say the least. They have free servers for internal development, and have more platofrm options than Adobe for CFML servers.

    Deploying and integrating ColdFusion on a .Net platform sounds like something you should take into consideration when deciding its “stagnancy”.

    Then there’s clones, like http://www.ignitefusion.com, which is free to use, and Coral, from http://www.pcaonline.com, which is a CFML engine that can be deployed to the desktop.

  • http://www.sitepoint.com/ Kevin Yank

    I hope you aren’t basing the sales only on O’Reilly books.

    The results presented by O’Reilly are based on BookScan data, which includes technical books by all publishers in the retail channel, not just O’Reilly. This includes Forta’s books.

  • aawan

    Kevin,

    It is interesting, that you have no response to the eloquent responses and comments made by the many CF programmers who responded to your article.

    They brought up extremely valid points. The cost of MS IDE’s, the licensing. The cost of all the 3rd party tools, to add to .Net, which may include licensing. Then the opportunity cost, the cost of a .Net developer and team of .Net developers, plus the time it takes for them to integrate the 3rd party tools.

    Compare that with the cost of coldfusion server, which comes with many things included out of the box.

    The opportunity cost is lower, because it is proven as a rapid development technology. Maybe you can do some research on that, and come back with some statistics.

    Your following statement is completely flawed.
    “Just what is it that you’re getting in return? It isn’t quicker bug fixes, it isn’t a larger job market, it’s not a richer feature set, and it’s not rock-solid reliability. It might be timely support, but other platforms offer that too, and without the up-front costs.”
    1) Bug Fixes:
    First of all, it has been proven with the Fortune 100 companies, and all the gov’t organizations that use CF, that it is faster to roll out applications, and quicker to fix bugs. As compared to PHP and .Net.

    2)I’ll give you that. However the job market is not stagnant. I have been a CF developer for almost 10 years now. The only times my job was at risk, was when it was at risk for everyone else in the IT world, during the .com bust. Since then I have always been able to find work as a CF coder, and now as an IT manager. I have been making excellent money doing it. And mine is not a rare or exceptional case, mind you. Also, mind you, I’ve tried branching out into different areas, but the money has been much better and I’ve had more job offers as a CF develoer than anything else.

    3) Reliability: If you are going to make a statement like that, as a reporter. Do your homework. Post benchmarks, do research, survey different companies using different technologies, but maybe solving the same problem. If you claim CF has poor-reliability. PROVE IT. Your integrity as a journalist and writer, come into question by making unfounded statements, without any backup.

    Finally, posting a pathetic, insulting report by Kay Smoljak as proof that CF sucks, is well…pathetic. Sure she brought up the shortcomings of the Report Builder. But why not do some followup research and see what the current release is like. If it addressed all those issues, then that’s not a valid proof that CF is stagnant.

    You do the public a disservice by posting uninformed and poorly researched articles.

  • John P

    What results from O’Reilly? I haven’t seen any data at all in terms of CF books sales. The fact that they are a flatline means little since tech books sales in general have been pretty flat. And after following the link to the discussion of the validity of using book sales as an indicator of the popularity of a language, I found some excellent discussion and many points as to why this is not valid.

  • Rod

    If you only mention the shortcomings of one programming language to discredit it but do not mention how they compare to other programming languages, then of course, CF is going to sound like a waste of time.

    But if you compare CF bug reports and let’s say .net bug reports. The sheer amount of numbers, you could argue that .net is so full of holes that it should be pulled from every server out there.

    A developer is just as good as the set of practices, resourcefulness and attention to detail, so you can find examples out there of fundamentally flawed applications and depending on your agenda – obviously filled with disdain for CF – then yes. You could argue that a business solution built on CF is prone to drive the business to bankruptcy.

    You sound more like a lobbyist than an objective developer, and I would suggest a change in carreer to spin doctor since you seem to be so good at it.

  • http://www.mynamesolutions.com tonyjk3

    Since when do we quantify something’s success based off of booksales? ColdFusion isn’t rocket science, I don’t need a bunch of books to learn how to use it. Give me Forta’s books and the LIVE DOCS and I am good to go. A good majority of Fortune 500 companies use ColdFusion. I work at a not-for-profit that chose CF over PHP and .NET. I also do freelance work part-time and always use CF. The CF development server is free and I provide CF hosting affordably reselling through another hosting company. My cost to deliver CF solutions to my clients is very little and it is affordable to my clients. So what is stagnant? Where is the downside? I assumed a forward-thinking community like SitePoint would be positive about CF, but I do find that its normally the PHP folk that give CF the hardest time.

  • Jorge

    Kevin,

    What are those …”changing needs of real-world web developers”?… Since several versions ago we have been able to access COM, Corba and Java components. Before the MX version we were able to use MS XML parser to interact with XML (calling the COM object) and in the MX versions we can use the built in functions to access and manipulate XML.

    To comment about the “real changing need” that has been in place for several years now… Creating and consuming Web services is so ridiculously “clear an simple” in CFMX that when reading articles about how to do this using other technologies it’s hard to avoid smiling. (Same applies to the xml manipulation)

    To focus on the reporting, which most of the developers don’t use and that is not offered by the other technologies, avoids to nail what should be the main point:

    How much time is potentially wasted on trying to overcomplicate tasks that should be simple?

  • TheSilverSurfer

    As a ColdFusion developer, I would like to add one observation about CF devleopment versus Java development. Many people have complained about the cost of CF Server and the cost of upkeep. However, as someone who works at a company who ditched CF to go to Java, we spend 10 times more hours (and have to pay our workers for it) trying to solve simple problems in Java that would be fixed in minutes in CF.

    Therefore, the major benefit of CF is made up in the ability to save time. Sometimes its the simple things that work best. For us non-computer science majors, ColdFusion put the power of an application development platform in reach.

    If you have unlimited time, and no budget, then Java is for you. If you want power and speed, ColdFusion cannot be beat.

  • Lemonizer

    Kevin, Kevin, Kevin.

    I thought your article on IE was great and well thought out then I read this article and the first thing I thought was the guy that just wrote this is the same guy the last article was addressed to.

    Yes Report Builder is not very good but it has saved me time now and again – sure makes mail labels easy. Yes CF server costs money but the developer edition is free. Yes CF eclipse could be better but it’s just as good, or better than most other free editors.

    But hold on – the version of PHP I downloaded didn’t have an IDE or report tool with it. Had to pay for a good IDE – don’t know about a reporting tool – haven’t had the need yet.

    I already have DW and it works great with CF (and yes I use the code view 90% of the time).

    The server cost only comes into play if the client is going to require their own server. Using a 3rd party host costs the same as any other side technology – I can find loads of companies offering CF for $20/m if I wanted to go that way. Dedicated server rentals is a bit more expensive accross the board though.

    I’ve been using CF for 3 years (version 6 and 7) and have found it to be excellent for doing the things I want to do (XML, SMS, and the usual CRUD and business logic).

    Yes there are some things that could be better but that holds true for any language.

    And what is wrong with using a programming language that makes things easy? I’ve tried do the same things in Java and found it to be a big pain and more time intensive so why go there. Aren’t all these languages we are using supposed to kae our jobes easier? I’d say 99% of the code I see in PHP, asp and .net always is written to do the same things.

    So the things that CF makes easy for me in everyday programming are:

    Debugging – CF makes it so much easier than other languages to see what is going wrong and to fix it. I can turn on debugging and see how long it took my functions and queries to execute, records returned, variables passed into each scope. I can also set this up so that only I see this information when logged into a client’s production server.

    Scheduling – all built into the system and I can manage this in my site or in the cf admin site – no third party tools.

    Another big one – forms that preserve data so I don’t have to write all the code to repopulate the form.

    Easy to read code, use of objects, XLM, SMS, lots of frameworks to choose from if you wish to use someone elses, validations rules built into the cf form objects if I want to use them.

    I can easily consume or create web services, expose components as remote objects and allow code to be accessed by other apps if I choose(Flash and Flex).

    As for using the jobs thing to track CF’s growth as a tool – well that’s a bit lame as CF has traditionally been used by larger companies on intranet and larger applications and has always been in the hands of fewer developers than something like PHP, which every highschool kid gets there hands on. And where I’m from, lots of companies want php developers but only pay $15.00/hour whereas the companies looking for CF or .net will pay $30 – $40/hour. Doesn’t mean PHP is better – just means the labour is cheaper because of the number of people available.

    Anyways, having used ASP, PHP, ASP.net and CF in projects – I’ll stick with CF if only for the debugging aspects alone.

    Use whatever works for you but how about asking CF developers who use the tool everyday to make a living what they think before you throw up an artical like that?

  • FrankLamsey

    Kevin, in reading your article I found that your analysis of statistics and the basis there-of, clearly show your lack of expertise in this area. Not to mention that it sounds as though you have very little technical knowledge, or at least advnaced technical knowledge to make such conclusions. Large enterprises have been using Cold Fusion for years and have stuck with it; the advancements made in the world of Cold Fusion have been by leaps and bounds rather than what you suggest in your article. Obivously you are biased and looking for a reason to blast Cold Fusion – maybe next time you write an article, you’ll actually do some real research first!

  • http://www.sitepoint.com/ Kevin Yank

    Thanks for all the contrasting opinions, folks! It’s great to hear from the other side, especially since the ColdFusion community has traditionally been under-represented here on SitePoint.

    @aawan: I have no response precisely because, as you say, the comments are quite eloquent and speak for themselves. This is not about my opinion (which really doesn’t matter)—I’m happy for people to read my thoughts alongside all of these comments and make up their own minds.

    @JohnP: What Tim O’Reilly said was that if the ColdFusion book sales were graphed on the same scale as the other results you can see in the graph on this page, they would form a flat line along the bottom of the graph. Thus, not only are the sales flat, but they are consistently very low compared to other subjects. Whether that is important or not is a matter of opinion, and there are plenty of good comments above that speak to this.

    Keep those comments coming!

  • http://www.ddrei.com Dyogenez

    Great article Kevin!

    Sad to see the overall opinion of the language as stagnant, but if that’s the way you saw it, that’s probably how many other people around the world see it as well. Many of the great points about CF have already been brought up, but I thought I’d give me $.02 as a passionate Coldfusion Developer.

    I agree that Coldfusion growth is stagnant. I don’t mean the growth of the language, or the growth of the software created by CF, or the skill of the programmers writing it — but as far as the number of new people coming to the language to use it I would have to agree.

    As your chart noted there hasn’t been a growth in CF jobs, and the CF conferences aren’t (to my knowledge) selling out (although I did go this past year and learned a ton). What does seem to be advancing however is the quality and power of code thats come out, even in just the past year with Unity, Reactor, Coldspring, RiaForge and many other projects and frameworks. People are getting smarter and it’s showing. MG:Unity, for instance, would be comparable to rails in many senses for it’s RAD possibilities, but I doubt many people outside of the CF world know what it is.

    The language too is also improving, faster than the current community can use all the features. Every feature is surely being used by someone, but some features just haven’t hit that viral point where everyone jumps on, like for web services in MX for instance. Flash Forms, report builder, charting — they’re all amazing features that so much could be done with, but how often do you see a site using flash forms? These are those features that when you use them you think “man, this thing saved me countless hours”, but most the time you don’t need them in any language. Speaking of the image stuff, the Alagad Image Component is probably the standard, although as you mentioned it’ll be a feature in CF8.

    I think what has in the past scared people away from CF, or at least made them not give it more than a second thought in small to medium sized projects, isn’t even the cost but the lack of knowledge about the product. CF just doesn’t get as much press from the usual developers — it’s usually just when a new version is released that it gets big word of mouth and non-CF people hear about the new stuff. I have a feeling this is because of the blog community. CF has a great blog community, which I’m recently discovering, but it does have one thing limiting it’s growth – confidentiality. Most CF aps are for bigger business than a rails ap, so the bloggers can’t exactly write in depth posts about their experiences. CF’s Mecca is Washington, DC, and I don’t think I’d want to chance my career by blogging about what I was working on. Do a search for Coldfusion on 9rules and the only result you get is an ominous post about Coldfusion being on it’s way out; it’s just not getting the blogosphere crowd so we’re not exactly “winning hearts and minds” of the new programmers.

    As your chart shows though, there are more Coldfusion than Ruby jobs available, by a factor of 4. The fact that Coldfusion doesn’t get the huge community press that makes people take notice isn’t that it’s not happening, it’s that Coldfusion is usually dismissed before they see what the fuss is about, so only the people already interested read more. I think videos like Joe Rineharts CF Blog in 15 minutes, or Doug Hughes Presentation on Reactor or anything else from Adobe Developer Week are the kind of thing that make the “new” people deciding on a language really take notice of it and give it a fair chance. Imagine having the rails productivity on a proven, established platform? Not a bad thought, but the community would have to grow to be up for the task.

  • Jared Rypka-Hauer

    Kevin,

    It’s awesome to see CF being blogged on something as ubiquitous and far-reaching as SitePoint… it’s always great to see you guys or Tech Republic carry our brand.

    There are a few things I’d like to point out, though, that you seem to have missed in the process of writing this article. Let me see if I can give you a bit more insight:

    #1: 95% of the ColdFusion userbase uses at most 10 tags, keep no separation between business logic and display, embed SQL in their display pages, and have sites that consist of 3-10 pages. These sites work, solve their users’ business needs, allow a non-technical person to keep their online presence going, and haven’t been subject to hacks or exploits to any great degree.

    That means that, for most people, new features are moot. It also means that the sites would probably not have gone online were CF not available. So as far as stagnancy is concerned, I don’t think “traditional” metrics apply. Since CF’s primary target audience is non-technical by nature, suggesting that people learn Java when getting into web-development is missing the point. They’re non-technical and staying that way and yet CF gives them a way to get their message online with a minimal amount of technical skill.

    #2: You’ve missed out on new features that have come along since version 4.5, like cfcharts, XML manipulation, access to Java without the requirement of Java, cfdocument (PDF and FlashPaper direct from within CF), and, yes, event cfreport… which may not handle extremely complex reporting, but it’s more than enough for most reporting needs. As far as cfreport is concerned, even Kay admitted that her use case was an edge case and that the bugs she found were to be fixed in the next point release (which has since come out). Various other tags, like cftimer, cftrace, cflog, have all been included… and since the mantra of the ColdFusion world is “making hard things easy” it’s safe to say that it’s doing it’s job admirably.

    Let’s not forget cfcomponent, cffunction, and the crazy things that we’ve been able to do with the power of an OO construct in a loosely-typed runtime language. I’m involved with ColdSpring, ModelGlue, ModelGlue:Unity (which is actually MG 2, btw… you seemed to have missed that in your mention of the frameworks above), Reactor, Fusebox, Mach-II (though less with M2 of late)… Transfer, and dozens of other tools have been coming out of the CF community. We’re a crazy bunch and we’re very earnest about building tools that will really help the technology grow… so they really should be factored into the equation when you’re talking about whether the platform has stagnated or not, because without the advancements in the language, the tools would not have been written…

    #3: ColdFusion is a language and a platform. It’s a J2EE server product that works like any other J2EE server, allowing us to install any number of other J2EE apps into the same server context and using the features and benefits they provide. It’s also a language that allows us to create middleware and display code quickly and easily. You many not LIKE how it works, but please don’t label it stagnant… Adobe/Macromedia/Allaire have put vast amounts of time into discerning their primary clientele’s preferences and priorities and if image manipulation didn’t make it into the platform till v. 8 chances are it’s because there were other priorities.

    #4: The things that make CF a far richer and more exciting technology than most were never mentioned in your post: cfmail, cfhttp, cfftp, cfpop, cfldap, cffile and cfdirectory. AXIS integration for instant connection to most webservices (there are a few, even some key webservices that have issues with the AXIS engine in CF, but there are various reasons for that). Remoting for Flash clients, Flex clients, and remoteable CFC methods allow us to provide a single CFC that can service other CF clients, AJAX and webservice clients, and HTTP calls via POST or GET operations. The power of J2EE means that JSP and CF tags are interchangeable, and CF and JSP can share application, session, and even variables scopes.

    The fact that CF can be used as a loosely typed OO language, a procedural language, or a hodgepodge of the two make it flexible, powerful and vastly more capable language than any others of which I am aware.

    At least in my opinion ColdFusion is anything but stagnant, and that by the only really reliable metric one can use: how active is the community. Are the bloggers blogging? Are the readers reading? Are there jobs and, more importantly are there more jobs now than there were last year? Are there more conferences available and is attendance at them climbing? Considering that in 2005, Macromedia saw its first all-CF sale that totalled more than 1 million dollars, it seems the product is selling well. And frankly, when you can spend $5000 on a J2EE server that does everything CF can do or $10,000 on a J2EE server that can do everything CF can do, it really makes you wonder how “free” the alternatives really are. As others have pointed out, the IDE costs for MS products and the hidden costs of PHP development (especially when Zend sells it’s Zend Engine for substantially more than CF and touts it as “the only way to do Enterprise-class development in PHP”), you have to sit back and ask yourself what’s really going on.

  • Will Spurgeon

    Greetings,

    I post this because when I responded directly to the article, Kevin redirected me to here… obviously a lot of other CFers feel the way I do…
    _____________________________

    I wanted to respond to Kevin Yank’s continued misportrayal of ColdFusion. (By the way, I love Kevin’s articles and just about everything SitePoint does, so this is a mild critique at best).

    I’ll argue that ColdFusion is not stagnant just by mentioning a couple of the cool features we picked up from 5 to 6 to 7:

    I switched from classic ASP to ColdFusion 5 when I saw that .Net was going to require twice as much server-side code to get anything done as ColdFusion ever would. As I now actively make my living on both ColdFusion and .Net, I still feel this is accurate. Absolutely there is no platform that makes working with a database easier than ColdFusion. That was true in CF, and even with ASP.Net 2.0 out, it’s still true. ColdFusion has also had custom tags (user controls) longer, with an easier implementation model, than other platforms.

    In ColdFusion 6 they did a major work over so that it runs on Java. That has NOT meant I needed to learn Java. What it HAS meant is that I now have ColdFusion components (think “light weight objects”) who automatically support invocation as Web Services. The great thing is that this object style is very robust, but also very optional. Unlike .Net, you are not with ColdFusion forced into a certain style of programming – you can make as simple or complex as you want and need it to be. This is a persistent and long-running goal of the ColdFusion design team.

    In ColdFusion 7, despite the “report writer” not being that great, we did pick up automatic PDF and Flash Paper generation – with a single tag! That means no $5,000 ActivePDF license, thank you very much. And the built in ColdFusion charting just gets better every version. I would easily spend $8,000 on additional 3rd party components to get on ASP.Net what is available in ColdFusion for a mere $1,300. I found 7 a very compelling upgrade.

    As a final note, most of the ColdFusion developers I know tend to be much better at HTML and CSS than the .Net developers. That’s a broad generalization of course, and is just my experience, and I can only guess at the reasons – perhaps because CF is tag based?

    ColdFusion for me continues to be the rapid web application tool of choice, even having looked very seriously at Rails, etc. Nothing competes for ease of use and the ability to do great things quickly. And unlike Rails or other “rapid” competitors, ColdFusion sports a huge stack of rich and mature “extras” that make cake out of otherwise difficult tasks. “Stagnant”, in terms of platform enhancements, is simply inaccurate.

    What about other measures of stagnation though, to be fair?

    Books:
    ColdFusion is a powerful but easy platform to use. The recognized experts in the industry tend to collaborate around the one Web Application Construction Kit book that comes out with each version (lovingly called the “WACK”). There’s actually two versions of this, the basic and advanced, and both are packed with about 3 inches of everything you’d ever need to know. Beyond that there’s a very active user community and blogsphere to conquer one-off questions. So I don’t ever expect to see book sales for ColdFusion change significantly. Although I do think a SitePoint ColdFusion book would be really cool ;) Now as for Flex books…

    Licenses Sold:
    No other language has this metric, but it’s an easy one to look at it in terms of CF stagnation. My understanding is that as of last year, the then Macromedia was selling more and more licenses of ColdFusion every quarter, which points away from market stagnation.

    Developers:
    Unfortunately I cannot deny that the ColdFusion developer community, while passionate and active, is not nearly as large or growing as I would like it to be. I am very hopeful that this mostly has to do with marketing clout, and that Adobe’s influence will help grow the community. I mean, seriously, ASP.Net is not above PHP on the job boards because ASP.Net is a better platform. Microsoft marketing carries a lot of weight, and I selfishly hope Adobe’s marketing will do the same. I think the big hurdle here is obviously the price, but I think generally people just don’t see what I’ve seen, which is that ColdFusion actually saves me and my customers money, yes in components, but even more in development time (which is more expensive).

    Back to the smaller community, even in the sparsely populated plains of Oklahoma where I work, I know great consultants that make their livings on ColdFusion alone.

    What isn’t helpful in this developer count regard is when highly respected journals of web development call the platform stagnant ;)

    I hope this is informative, and that it will encourage another look at the beautiful web platform that is ColdFusion.

  • Adrock

    How many books does SitePoint offer on ColdFusion?

    Zero.

    Does SitePoint have a financial incentive to dissuade it’s readers from using a technology they do not support?

    Yes.

    Does anyone consider Kevin Yank an authoratative source on ColdFusion?

    No.

  • Mary Jo

    I’ve been enjoying this conversation and thought I would put in a few additional comments. I have a bit of a different perspective on ColdFusion as I author and sell one of the top ecommerce software packages for the platform. So I’m often working with people that don’t necessarily make a living coding CF. Many are web developers with little experience with coding, but they need a shopping cart for a client’s website. ColdFusion is such a perfect solution for them, with little experience they can get things set up and learn to make simple edits….and more complex ones as they gain experience. They don’t have to worry quite so much if a shopping cart doesn’t work exactly like they want, as is often the case. I’m not sure I agree that 95% of CF users are non-technical users (my own users are probably closer to half-and-half), but there’s no doubt that it has the *huge* advantage of not only being a viable platform for advanced coders, but also being very accessible to newcomers, particularly those mainly used to tag-based languages like HTML. Support for the competing CFML server, BlueDragon, has also been growing, with a number of my users switching to it and praising its performance and lower price over Adobe’s CF. While the job market for fulltime CF coders may not be as strong as we might hope for, my sales and experience would indicate that use among freelancers is still quite strong….something I don’t know that anyone really tracks. Certainly attendance at the largest CF conference has been growing each year, and we have additional conferences now including one specifically covering frameworks. I would say ColdFusion is certainly alive and well!

  • Jared Rypka-Hauer

    I’ll have to leave this anonymously (I’ll sign it, don’t worry) but SitePoint won’t let me log in with my forums ID. I’m logged into the forums, but I can’t log in to the blogs area to leave a signed comment.

    Alas…

    Anyway, Mary Jo, as far as the 95% figure is concerned, that’s a statistic I got from Mr. Forta himself, so any disputes can go to him. There’s a lot more CF going on out there than anyone really realizes because they’re all hidden away, not community involvees, and strictly involved in doing their thing. We just don’t seem them.

    Anyway… just wanted to let you know I didn’t just make that up. Granted, 77.36% of all statistics are made up on the spot… but that one wasn’t.

    Laterz,
    J

  • mark.drew

    Kevin, I should simply point out that CFEclipse is an open source development not done by Adobe themselves, when you quote about the level of proffesionalism between Flex and CFEclipse its a rather unfair call to effort that has gone into CFEclipse. Especially when this effort is by the community, for the community, for free.

    How much is Zend ($299)? How much is Visual Studio ($299 – $799)? How much is Flex Builder ($799?)? and now compare it to how much it costs to get CFEclipse and Eclipse ($0).

    Mark Drew
    Lead Developer, CFEclipse.

  • Mary Jo

    Jared, not saying you made it up, just that I have my doubts that it is accurate. It may have been true pre-CFMX, but now? I doubt it. I just don’t see how Ben (or anyone else) can know that without doing a pretty extensive survey of CF users, which I’ve never heard has been done.

    I personally always try to be careful about quoting statistics…unless I’ve seen a legitimate source, more times than not they are made up.

    Mary Jo

  • CFMunster

    Kevin,

    Apropos of Mark Drew’s comments on CFEclipse, if you look on EclipsePluginCentral.com, you will see that CFE is one of the highest-rated Eclipse plugins out there, and with good reason.

    In terms of the value proposition with ColdFusion, I have argued for years that when you buy it, you are buying more than just the language runtime. You are buying a Web development platform that includes an integrated search engine, reporting (fine, not the best), gateways in the Enterprise version (e.g. JMS gateway, folder watcher gateway), integrated authentication, and lots of other tools. Corporations continue to buy ColdFusion and use it internally because they understand this value proposition.

    In terms of market position, you are absolutely right. A prudent CS student should sit down and learn Java and .NET as their first order of business. Everything else should come after that. But what then? It all depends on what you want to do with your career.

    I see PHP work primarily in embedded devices, the academic community, in PR-oriented Web sites, and to some extent in software product development (although that market is almost totally owned by Java). I see CF work in government and corporate software development, often on internal business application development, but also in customer-facing Web properties. Java is everywhere. .NET is everywhere VB and ASP were before it, and maybe a few extra places as well, but basically it is the choice of MSFT shops. Ruby and Python are cool but still relatively niche tools. Perl is everywhere by virtue of its age, though as someone who has done Perl development I hope it dies a graceful death over the next few years. In addition, the more rigorous languages tend to take root in more engineering-heavy shops, whereas the scripting languages tend to take root more in business-heavy shops. That’s not a bash on either one, just the reality of market distribution.

    These observations are very general, of course, and the reality is that there is a market for every language in every environment, but your article is about broad realities for developers looking at their employability, so I’ll stick to that theme.

    Lastly, I will make a prediction that any developer who wants to be cutting edge in the business/enterprise apps market in five years needs to get on the bandwagon and learn multi-tier RIA development using Flex, AJAX, and other as-yet-unreleased technologies (maybe from MSFT?). Rich client development and SOA are the future, whether that means plugging into CF, Java, PHP, .NET, or anything else.

    A quick “I can easily code Java in CF” tutorial:

    
    
    
    #x#

    Voila! Now you are using Java String methods in CF, and without having to learn a bunch of nasty OO programming.

  • akubot

    Just want to briefly add my voice to the “pro” CF side of this discussion.

    I started learning CF 4.5 in 1999 right before my employer upgraded to version 5.0. I’d already been programming for over 20 years, and had done some web programming for a few years. I now use CF MX 7.

    CF was the easiest language to learn of ANY other I had encountered until that point, and it also required the least time to get to creating production-level work. I was really impressed, really amazed, with how much I could accomplish so quickly. I’ve been using the language for 7 yrs now because I like it so much.

    I have played around with a few other languages such as PHP, a few versions of ASP, and a variety of other tools. I still think that CF stands up very well technically, and is definitely simpler to use.

    I’ve seen CF power sites that have many millions of page views per month. With the proper configuration, it can be scaled to handle very large loads.

    Regarding licensing cost, one can get a hosting account from CrystalTech and others for $25 or so a month, and be able to serve up CF 7 MX applications to the world or just learn the language (although you don’t get to twiddle with the CF Administrator settings). You can also install a Developer version of the product on your own server for free before purchasing a full license.

    Also, as others have pointed out, one needs to consider all the costs involved — server licensing, user licensing, training, etc, but especially salary expense. In many projects the HR costs far outweigh other costs, so why not use powerful tools that lead to high productivity?

    BTW, I have seen several other projects founder after some other language (e.g. PHP) was chosen over CF. I was fairly certain that I could have solved the problem with CF in less time, though I suppose someone who was creating a slightly different version of a PHP application they’d already produced might have been a speedy developer.

    My complaints are few:

    1. I wish CF had a larger market share. Perhaps we true believers would not have to spend time writing messages like these to stand up for our tool of choice!

    2. The IDE situation has been frustrating. I’m not familiar with Flex, but I’m still using the CF Studio version 5, which is an ancient product at this point. I have used DW for CF projects, but am always relieved to go back to CF Studio.

    My 2 cents.

  • http://www.sitepoint.com AlexW

    How many books does SitePoint offer on ColdFusion?

    Zero.

    Does SitePoint have a financial incentive to dissuade it’s readers from using a technology they do not support?

    Yes.

    That one is a bit of a chicken and egg situation, Adrock. We’ve had ideas for a ColdFusion book since 2002, and still in 2006 have no fundamental objection to one, but every time we’ve looked seriously at it, we haven’t been convinced the interest and excitement levels in the feedback is there.

    Sure, you can say we haven’t worked hard to develop that market, but we’ve had no trouble getting heaps of interest in topics like Ruby and more recently Django without having long backgrounds in either. We’re not at all political with technology. We’re just happy to write books that people want to buy.

  • MCG

    Anyone lately looked at WHO is using CF? That little MySpace webste.
    http://www.forta.com/cf/using/

    I’m a government contractor, and CF isn’t going anywhere for a long time here. Also a huge chunk of CF apps are intranet applications; which can make them a little hard to count.

    As far as cost, developing CF apps costs squat. Hosting them, well, depends on your needs. External can be cheap. Internal, there’s more than just Adobe; Blue Dragon anyone?

  • Rebecca

    Kevin:

    I couldn’t disagree with you more on your “newcomers to web development look elsewhere”. You may be right about the integrated reporting function (I don’t use it). But I think that you are looking at ColdFusion with a reviewer’s filter instead of the way that a developer would.

    If there are no new hammer designs, then does that mean that hammers are “relatively stagnant” or might it mean that it is a stable tool that just plain gets the job done? In a reviewers world, no news means you’re out of a job. In a developer’s world, stability is a good thing. Having to learn a new application/IDE/framework several times per year would just take our time away from what our real job is… writing applications. If the tool of choice, ColdFusion in this case, makes our job easy, then why reinvent the wheel? Personally, I’d rather use my time learning AJAX or CSS or web services. If it didn’t facilitate the accomplishment our programming tasks easily, one would expect to see ColdFusion developers leaving it behind in a cloud of dust for platforms that do. That is clearly not the case.

    ColdFusion is relatively easy for a beginner to pick up, and for that reason alone, I would think that you would recommend, not dismiss it.

  • Jared Rypka-Hauer

    Alex,

    I understand your dillemma, but I think it underscore’s CF’s place as a tool of commerce and a very viable language. To put it as simply as I can:

    When you consider the overwhelming numbers of blogs, mailing lists, and available online documentation AND expert-level assistance in conjunction with the ease of development in CF and the availability of advanced features, books become relatively superfluous.

    In other words, it’s probably not a necessary book to begin with.

    People are learning far more going to conferences and usergroups, reading blogs and using online documentation than they would from a couple of books anyway… especially since the semantic nature of CF makes for a nearly-natural language programming experience.

  • tonybone

    Getting away from the “stagnant” discussion a bit, I believe the original question in the original article had to do with which language beginners should learn first. The response to this question has been framed in several ways. A common one has been in terms of salary and job market.

    But I looked at that question a different way. Not everyone who gets into web development has a degree in CS (I didn’t). So what language would be good for a beginner as an introduction to server-side programming? The answer was obvious to me that ColdFusion’s “gentle learning curve” makes it the ideal language for beginners (and I’m frankly surprised no one else brought this up). ColdFusion introduced me to server side programming back when I was making only static sites, and I was amazed at how easy it was to make the transition from making web sites to developing web applications. Even if you end up eventually learning and using another language, CF can introduce the beginner to programming concepts (database interaction, abstraction, encapsulation, session scope, etc) that are common to many technologies. I can tell you from personal experience that my background in CF has helped a lot in my dabblings with PHP.
    So, if anything CF can be a good learning tool (remember, the developer edition is a free download) for the aspiring web developer.

  • tonybone

    Also — add me to the list of people of the opinion that a low demand for Coldfusion books merely means that CF users don’t need to buy a ton of books in order to learn the language (which I see as a good thing).

  • http://www.sitepoint.com AlexW

    Jared, I’ll take your word for it as I’m certainly not intimately acquainted with CF.

    However, at least superficially, it would seem there is no lack of PHP and ASP.NET blogs/mailinglist/tutorials, but in our experience, they have tended to have fed their book markets rather than hurt it.

    In fact, our first book was mainly sourced from a popular online article, but that didn’t seem to undermine it’s ability to become a book.

  • tonybone

    No one will argue the fact that PHP and ASP(.NET) have much larger and more vocal user communities than CF (which is to their credit). But it makes sense when you consider who these users are. PHP and ASP and especially JAVA users tend do be more code-jockey type people who get off on writing code, blogging, posting to user forums, etc., whereas people who use CF do so because it just gets things done quicker and easier. Personally I’d rather use CF and spend less time coding so I can spend the rest of the day playing ball with my son than spend all day in front of a keyboard and monitor.
    This isn’t a knock on anyone. My hat’s off to all you hardcore programmers. Keep doing what you love — it’s just not my cup of tea.

  • megan321

    Hey Kev – Read This from Ted Patrick

    ;P ~Megan

  • http://www.solas.cc MCsolas

    Kevin,

    Job postings? Thats what your basing the theory around.

    Coldfusion is on version 7, a stable platform in which some developers have held the same jobs for many years. 5-6-7 were for me, seemless upgrades requiring of me *not 1 line of code rewriting* to upgrade my sites to the new features.

    The result? Do you think a lot of people were fired for telling their boss that the host just dropped this list of features on your desk.

    “We don’t have to change a line of code, which ones do you want me to install?”

    Ive done this several times, and when presented in that manner .. people get excited.

    I see the coldfusion job market to be more stable than many of the other languages. Being such a well developed system ( we are talking about version 7 of the original application server language that ran web pages people ) its STABLE. In the same manner, I see the coldfusion job market having less turnover, thus throwing your stats right where they belong.. in the rubbish bin.

    Your comparing a version 7 language to one that was just released… brilliant deduction sherlock.

    Several major government bodies and defense contractors are really getting attached to Coldfusion. An established, stable platform that can run your website AND your corporate intranet. At the same time, decreasing my developing costs and time to market at the same time.

    Sound exciting? From the point of view of several CEO’s and business owners such as myself, it just might be.

    For CEO’s and business owners such as myself, Coldfusion is very exciting because it helps expand the bottom line.

  • jonese

    I could say what i feel but there is just too much. I will say i LOVE to see this many CF people on sitepoint, i hope you all stick around and help to grow CF in this community. Here are my thoughts.

  • http://www.solas.cc MCsolas

    I just read the ‘book sales theory’

    More of this brilliant statistical thinking we have going on here guys. Amazing stuff, lets think about this for a second..

    Refreshing my knowledge of ColdFusion code through the pages of the journal, I gained a renewed appreciation for the “hide the hard stuff” approach that’s exemplified by the platform.

    First of all hide from the hard stuff – more like “wrapping tags around tags” gee that makes SENSE.

    If you’re the kind of {boss) who just wants to get the job done without getting drawn into the technical details, ColdFusion may be uniquely suited to your style.

    I only {changed} one word (from person) and look what its says.

    Amazing how much difference 1 word can make.

    Coldfusion is a stable platform.
    During the last few years, as coldfusion has deployed practically seamless upgrades.. people haven’t been ‘forced’ to buy new books and constantly upgrade their IDE’s.

    Thus book sales figures might not be crisp.

    Ive written a lot of image processing code..

    Lets remember that many reputable hosts ( like crystaltech ) have the image components pre-installed on all shared servers. Its been that way for some time… years.

    Its estimated that ‘half’ of coldfusion implementations are at the intranet level. Major corporate intranets run on this. A rather large, yet invisible side of coldfusion.. and one that is often overlooked in ‘statistics’.

  • Jayesh

    @JohnP: What Tim O’Reilly said was that if the ColdFusion book sales were graphed on the same scale as the other results you can see in the graph on this page, they would form a flat line along the bottom of the graph. Thus, not only are the sales flat, but they are consistently very low compared to other subjects. Whether that is important or not is a matter of opinion, and there are plenty of good comments above that speak to this.

    ME:::::::: Above statement doesnt hold good at all for measuring CF growth, as liveDocs and CF Dcoumnet available are the Best, I have found compare to other langues. Guess What, I have been doing CF Web Development from past 3 years and I dont own even a single CF book. Obviously I dont need it, as it is really easy to learn with documentation. I woud highly recommend CF to New learners/ fresher, as getting started language.

  • SoJa

    CF turns webmasters into web developers. J2EE/.NET turns programmers into web developers. Who do you think is going to pump out the most scalable, reusable, and maintainable solutions? As a 10 year CF loyal I do like the RAD aspects of the language. My shop is constantly fighting with CF to hold itself together amongst web services, software as a service, API calls to J2EE portals, and its DOM-less implementation of XML. CF should focus on what its good at… presentation. The code running that presentation should be JAVA. CF could, if it wanted to, creating something similar to ASP.NET web forms or JSF if it wanted to. It could probably do a better job.

  • megan321

    I forgot to post this in my earlier comment: Coldfusion is used at 75 of the Fortune 100 companies – Now they have the resources to research every option and if they found Coldfusion to be “Stagnant” why would so many of these people who are smart enough to run these top companies use it???

    Link: http://www.adobe.com/products/coldfusion/proven/

    ~megan

  • http://www.solas.cc MCsolas

    Stagnant..
    Book sales..
    Job postings..

    Any more silly theories ?

  • dev_cw

    I have very little experience with ColdFusion, but I see how good and easy it is and would love to use it more often. When I was evaluating which direction to go (.asp .cfm or .php) I ended up sticking with php due to the extra large user community and that ‘everyone’ hosts php.

    I have a few friends that are loyal CF users, and in private they say that their clients (small/mid businesses) are beginning to ask for more ‘main stream’ solutions (asp or php) due to the overwhelming popularity of the ‘others’. For example a client will ask for a proposal and 10 other companies will send in PHP based solutions (maybe a few asp) and only one (if any) will be for CF. So the client will ask “what is this ColdFussion?” and after you make your points they will say “If it is so great then why is yours the only proposal in CF”.

    So what I am saying is that for CF to become a real contender (I am talking popularity not language strength) and be adopted by more users, the CF community needs to get very active and Adobe needs to make a stronger effort to make CF more widely available. Also the hosting community needs to see the potential for CF and have it be readily available (the hosting community has strongly endorsed php or LAMP due to the low cost issues, if adobe would provide very low cost solution maybe the hosting community will pick it up. For example the largest hosting provider in my country only offers CF as a paid add-on. I used to see many courses offered for CF in local trade posts but I no longer see this.

    I would love to use more CF but my clients are, in most cases, not wiling to get tied into a seemingly limited group of developers (at least in my local area) or a limited number of hosting providers (we have the same problem with Ruby).

    I have no numbers to prove this, but the feeling I get from talking to my CF friends is that although whoever has used CF will say it rocks they end up having to use other platforms to be able to be in the mainstream competitive market.

    Please note that I am in a 3rd world country and US$1200 will buy you a small house (a very small house in a bad part of town, but a house none the less) so it is a very high cost. This makes CF a great tool for the rich…for the poor LAMP is the only way to go.

  • megan321

    dev_cw

    I posted a new comment with some links to alternative coldfusion engines that would save you money and let you benefit for using the coldfusion “language” but someone must have considered it “inappropriate” because the took the post away. I would have emailed you but you did not have a way to do so, hence my post in case you came back. If you see this then perhaps you can leave a message as to how to get in touch. Meanwhile I am left wondering why they would take away a post containing links to alternatives – one would think more choices make more things possible. ~megan

  • webonics

    I have been an avid fan of SitePoint for years (even before Kevin’s first book). I even began learning PHP from Kevin’s Build Your Own Site with PHP and MySQL (first ed.). And have gone on to buy another 5 books and 3 posters from the company that I use regularly. I read all four of the newsletters and have referred numerous developers and novices to SitePoint for resources and education. And it is for this reason that this whole Tech Times snafu has troubled me. Frankly, I felt strafed and for the first time really questioned the validity and value in SitePoint content.

    I know that everyone has already posted many of these counters to Kevin’s statement, but I figure that the more developers that speak out that maybe a greater respect will be offered to the CF development community.

    First, in regards to image manipulation, CF8 (Scorpio) will have with over 50 attributes. I heard this at Adobe MAX 2006 two weeks ago. Up until this point, I have used Alagad’s image component and it has worked flawlessly and was easy to integrate and learn the syntax.

    Second, I started out developing in ASP.Net, then Java (J2SE/J2EE), then learned PHP and finally ColdFusion. ColdFusion has been my best experience for programming languages in terms of rapid application development, learning curve, reliability, scalability and security. I would highly recommend this language to anyone that wants to move from static site development to dynamic content.

    Regarding the book sales figure, everyone that develops ColdFusion knows that there are really only two de facto books on CF development, the Web Application Construction Kit and the WACK: Advanced. If you use Dreamweaver MX2004 or 8, you have the entire O’Reilly code and function reference libraries available in the Results/Reference panel. I own the O’Reilly book in addition to the other two but have only opened it maybe four times in 3 years. It is horrible. Otherwise, I use CF community sites, like House of Fusion and CrystalTech’s ColdFusion Forums and Adobe’s Devnet.

    I work as a web and multimedia developer. It takes the PHP-only guys about twice as long to develop applications as it takes me to develop in ColdFusion. If it were ASP.Net or Java, it would probably take four to five times as long.

    The integration that ColdFusion 8 will contain for easily integrating with Flex Data Services is another amazing strong selling point for the language. I have several clients rallying for RIA in their intranet systems.

    I have not had any problems finding jobs for ColdFusion and I get calls from headhunters regularly.

    Finally, I develop to make money and create creative, functional applications. I don’t do it very the thrill of rolling in code. Rather, I would like to build something and focus my other time on developing the marketing and enhancing the application or learning new technologies. I have rarely come across a scenario that I have not been able to use CF to develop a solution to a client’s needs. I feel like this article was written from a “geek” (meant in the highest regard) perspective rather than a business perspective. While I value being a geek, at the end of the day, business drives my career.

    I’m sure Kevin did not mean any malcontent and I’m really happy to see the outpouring of support from the CF community. Don’t get me wrong, I still think SitePoint is terrific and hope that we don’t have another one of these misinformed reportings. I’m also glad to see the revival of the CF blog on SitePoint as it will give me another reason to regularly visit the site. Thanks for listening.

  • Boothie

    I’ve used Cold Fusion since Version 1.5 and still occassionally use it. I’m going to be looking at it for it’s Flex 2 features (We are at Version 6 – Scorpio upgrade coming). I’m looking at RIA user interfaces now.

    The O’Reilly book comparison is not valid. I like many of O’Reilly’s books. Their Cold Fusion book just doesn’t compare to the other books out there by Forta. I’ve been in the Oracle World those are much better. O’Reilly’s Nutshell books used to be THE source.

  • http://www.sitepoint.com/ Kevin Yank

    Thanks for the comment, Boothie. To be clear, O’Reilly’s stats are based on the entire computer book market (including Forta’s own books), not just O’Reilly’s own titles.