A brief summary (in my experiences so far) between Coldfusion, PHP and ASP.Net
| Coldfusion | PHP | ASP.Net | |
| Upfront Costs | High, comes with a lot standard | Free to High, Free version is well Free, but there are numerous commercial packages/add-ons like file compression, dynamic caching, advanced server monitoring/management | Included if you have a Windows Server License. |
| Development time (comparatively) |
Faster comparatively | Fairly Fast but falls somewhere between CF and .Net most of the time, catches up with commercial packages/addons | Longer than the other two |
| Processing Speed | Fast, with proper setup of JVM, even faster. Scales well with size and load | Fast though may have problem scaling without addons | Decent, sometimes rather slow. |
| Integration with other languages | JAVA, Flex/Flash | non-native(non that i know of) | .Net, Silverlight, C# |
| Developer Community | Not as big as PHP or ASP.Net, but still a decent presence is expected in most major cities. | Big, anyone can pickup PHP, tend to have a large spectrum of skill level | Big pool from Higher Education Institutes. Well supported and backed by MS |
The license of Coldfusion is, and should be, a very small part of any business budget, especially if you happen to be in a country where bandwidth is more expensive than average, like Australia. Also, Coldfusion 8 has Developer(from memory, limited to 1 IP) and Trial editions(from memory, 30-day trial unlimited IP), which are free. So you can start learning or developing immediately.
A big advantage of coldfusion has is its development time, it was first developed as Rapid Application Development Platform/Framework, and still is very quick to develop and deploy in.The time spent on development is considerably less, even if it saves 1 developer 1 min a day, and who worked about 230 days a year, divide the number of your developers by the licensing fee per year. Same reason why software developers and/or software development companies don’t mind paying for good development tools.
Another is its tie in to Flex, and it will be the de facto choice due to integration with Flash. Thought that may change in the future, since Flex is going opensource and PHP will probably have extensions written for Flex integration. I can’t imagine the .Net platform supporting Flex too much, as it may undermine MS own Silverlight product.
One additional point is that Coldfusion is largely backwards compatible, the last rewrite was CF 6 when CF went to a JRun/JVM backend, after which very few functions/tags have been dropped. Which is something Adobe had the sense to maintain so far in both CF and Flash environment.
Over the next few days, you will see a fair number of people grumbling about the pricing of CF 8, which has not increased dramatically (besides R&D isn’t free, and the software engineers need their paycheck!). But no other web application platform today can offer what Coldfusion out of the box, from image manipulation, PDF integration, Flex integration, Exchange Server integration, dynamic presentaions on the fly, etc., click here to find out more
Coldfusion has loads of features but there is a business case for each,
e.g. PHP will do the job for most companies public facing websites why pay more than you need to ? PHP also has numerous framework and CMS, many of which are opensource. ASP.Net has loads of exposure in Higher Education Institutions, so it should be easier to find suitable staff, and tie-ins to Microsoft’s CRM and Sharepoint products.
Coldfusion will still be around for another iteration from the looks of what they have done with CF8, but don’t take my word for it, go read about it and try it out for yourselves! (Its only about 300+ mb download!)
Edited: Added in .Net Developer Community

4 comments
Comments feed for this article
1 August, 2007 at 3:15 am
Adam Tuttle
Nice post, but you left out the fact that with CF8, .Net and MS Exchange are now natively supported. That’s a nice little addition to your table.
1 August, 2007 at 7:44 am
Michael Long
Adobe has raised the price of the Enterprise edition and has seemingly adjusted the feature set to push more companies towards the $7,500 version. Now, $7,500 may not seem like much if you’re just running a single server (though it’s 3x the cost of a typical server), but use three or four of them (production, staging, development, etc.) and that’s $20-$30K, or half the cost of another DEVELOPER.
And even larger organizations will discover costs increasing proportionally, and is some cases to the point where they abandon the platform. (e.g. My Space)
See my full disussion here…
http://www.cfinternals.org/blog/2007/07/adobe-wants-you.html
1 August, 2007 at 8:23 am
Ke Chong
@ Adam Turtle:
I know I left that out from the table on purpose, because I have not personally tested how far MS Exchange integration goes, it sounds very promising though. I have MS CRM at work and let me tell you it isn’t pretty, it does some stuff which even the vendors who deploy it to us aren’t sure and we have to create a web service to pass data from one of our databases to theirs.
Edit: I forgot to say I did cover .Net remote calling in an earlier posts, and overall still a little vague on how integrated MS Exchange is, I will try to emulate a simple web based inbox and calendar (like webmail but not as functional of course) for a proof of concept at work, just to see how good/dodgy it is pushing and pulling stuff to an Exchange Server. I hope to get around to that in a few weeks
@ Micheal:
Adobe will have their own strategic bigwigs and bean counters decide the strategic placement of Coldfusion, only time will tell whether they stuffed it upped or not. Besides, Adobe is not a charity, and coldfusion is not really that expensive.
Also you have to remember Adobe sells/license most of its products via distribution channels rather than their own stores. I will be very surprised if anyone paid the price stated on their online store, and in parts of the world like UK and AUS we pay about 25% markup according to the website!
Edit: I forgot to say you would only need licenses for the production server, as far as I know anyway!
Thanks for your comments Adam and Micheal :)
1 August, 2007 at 3:46 pm
Michael Long
I have mixed emotions regarding using onMissingMethod vs. a code generator and actually creating getter/setter methods. The biggest drawback I see is that you lose the introspective self-documenting aspect. Dump a CFC and you can see all of the methods available. Do a getMetaData and you can walk the list and do your own documentation routines.
Without the code, you’re more in the dark. Is it getCustomerNumber() or getCustomerID()?Is it getArticleName() or getArticleTitle()?
Or do I need to write a documentation routine that checks the field list and generates virtual documentation for virtual functions?