« WPF vs Flash/Flex | ^ Main | Backbase Updates »
.Net vs CF
As with my last post the same thing kind of applies here. Once I realized this it let me at ease a bit but made me wonder too. Microsoft has an uncanny ability of integrating their technologies. Most people knock Microsoft for this but I would classify them as strictly haters. :-) The integration Microsoft provides in the .Net framework is unmatched, in my opinion. So, let’s compare.
.Net can’t compare to CF. ASP.Net compares to CF. Let’s get that clear up front. I specifically left the title as .Net because so many people compare .Net to CF but that is an argument CF will NEVER win. Oh, keep in mind I am a CF developer and it was my first web language I learned. Let me detail the comparisons. Keep in mind I am also not as well-versed in .Net as a whole to speak too deep. Everything I say about ASP.Net is strictly from what I presently know.
ASP.Net downfalls:
# Uses compiled code which makes updating sites pretty painful, in some cases.
# Not as easy to learn because you need to know the “backend” language (C#, VB, etc) as well as the web language. I’m semi-comfortable with C# and I went to toy with ASP.Net recently and failed miserably.
CF downfalls:
# Seems to be CPU intensive at times. I’ve heard stories where CF was killing a server which .Net came in and handled with ease and minimal CPU usage. On our servers I’ve even seen some decline in performance since adding some CF sites.
# $5000+ for the server software is prohibitive to it overtaking the web world.
# Limited to web.
# Creating web services are easy (my.cfc?wsdl) but not graceful at all in creation or opening up to the public.
Ok. My last point may seem odd but I have a point. .Net dll’s are portable from web to desktop to mobile (in most cases) which makes it enterprise where CF can’t come close to that type of portability. CF is no doubt a better web technology, in my opinion, but in the case where you want to provide a complete experience for your end users you have to code a CF site and build your desktop app in another language (say Flash+Zinc). The taking it to the mobile arena you have to recode it yet again. .Net you simply have to add a new front-end to your already present core code files (dll’s, etc)
It may seem a little off here but I’m really thinking of an audience that desires to keep track of their online store, blog posts, bug tracking software, etc on their desktop (maybe even task bar) rather than keeping a web application open. The web is huge right now and a lot of folks are using it but you really can’t throw away the possibility of allowing offline versions, automatic updates, etc.
My reason for this post is to point out CF is a better web language, in my opinion, but as a whole Adobe can’t hold a candle to Microsoft in terms of full customer experience/fulfillment. I’d really like to see Flash/Flex merge a lot greater with CF to provide another possibility to creating full service applications (desktop, web, mobile).
Posted by John C. Bland II on March 26, 2006 11:59 PM | Permalink
TrackBack
TrackBack URL for this entry:
http://mt.katapultmedia.com/mt-tb.cgi/84
Listed below are links to weblogs that reference .Net vs CF:
» .Net vs Cold Fusion from Code
This is in a response to John Bland’s Blog on the same topic. I was going to just post a comment, but I too got a little long winded. I agree that you can’t compare .Net and CF, and in... [Read More]
Tracked on March 27, 2006 6:34 AM
Comments
You are absolutely correct in some ways. CF no doubt is faster and there is a bit of extension with Java need in some areas but in normal sites to even advanced sites you probably wouldn’t need Java, example…I have yet to need Java in my years with CF.
The real bottom line here is exactly what you said “it depends on your project” and that is very true. It is all about what tool is best for the job.
Only some people know but the majority of KM products will be developed in .Net. Reason being, it is the best tool for the job. Coupling desktop, web, and mobile is too easy in .Net but, as said, doing the web in CF means a whole new product for the desktop (would use Flash+Zinc) and another product using Flash Lite for mobile. That is rebuilding the same functionality 3 times (or at least 2.5 since Flash Lite can use AS 2).
What would I pick? Web is still CF. Enterprise solutions is .Net. :-)
Posted by: John C. Bland II | March 27, 2006 10:04 AM



