YOUR FEEDBACK
Jeremy Geelan wrote: In response to inquiries and suggestions from readers this lexicon has recently...
AJAXWorld RIA Conference
$300 Savings Expire August 29
Register Today and SAVE!


2008 East
DIAMOND SPONSOR:
Data Direct
Frontiers in Data Access: The Coming Wave in Data Services
PLATINUM SPONSORS:
Red Hat
The Opening of Virtualization
Intel
Virtualization – Path to Predictive Enterprise
Green Hills
IT Security in a Hostile World
JBoss / freedom oss
Practical SOA Approach
GOLD SPONSORS:
Software AG
The Art & Science of SOA: How Governance Enables Adoption
PlateSpin
Effective Planning for Virtual Infrastructure Growth
Fujitsu
Automated Business Process Discovery & Virtualization Service
Ceedo
Workspace Virtualization
Click For 2007 West
Event Webcasts

2008 East
PLATINUM SPONSORS:
Appcelerator
Think Fast: Accelerate AJAX Development with Appcelerator
GOLD SPONSORS:
DreamFace Interactive
The Ultimate Framework for Creating Personalized Web 2.0 Mashups
ICEsoft
AJAX and Social Computing for the Enterprise
Kaazing
Enterprise Comet: Real–Time, Real–Time, or Real–Time Web 2.0?
Nexaweb
Now Playing: Desktop Apps in the Browser!
Sun
jMaki as an AJAX Mashup Framework
POWER PANELS:
The Business Value
of RIAs
What Lies Beyond AJAX?
KEYNOTES:
Douglas Crockford
Can We Fix the Web?
Anthony Franco
2008: The Year of the RIA
Click For 2007 Event Webcasts
SYS-CON.TV
TOP COLDFUSION LINKS


ColdFusion: So Easy, Even a Caveman Can Do It!
I don't care what you wrote it in - even if you are a caveman

While recently channel surfing, one of the "Geico caveman" commercials came on the tube to remind me that Geico.com is so easy to use, even a caveman can do it.

The marketing campaign is very clever; watching it, I couldn't help thinking what a shame it was that Allaire didn't think of the slogan first. After all, ease of use certainly is one of ColdFusion's greatest strengths. That night I couldn't stop thinking about the caveman commercial and how applicable it is to CF. Questions kept entering my mind like spam forcing its way into my inbox. Is being very easy to learn and use a good thing for a programming language? Does being easy make ColdFusion a less viable business solution? Are ColdFusion developers illegitimate in the programming world? It is no secret that Java, .NET, and other developers sometimes look down on ColdFusion and ColdFusion developers. Is it a simple case of ignorance? ...or jealousy? ...or is this perception justified? I'll preempt addressing these questions with a statement that makes my own perspective and interests clear. Like many other developers, I do what I do because of a real love for my trade. Like all other developers, I also do what I do for profit, i.e., to make money. For a very long time I've been an extremely active member of the ColdFusion development community - I enjoy being active in the CF community and I love working with ColdFusion. For the past five or six months, however, I've been pretty quiet. The reason for this is that rather than focusing on engagements where I largely end up "preaching to the choir," I've been focusing on speaking directly with business owners and important decision makers in large businesses that, in reality, are the folks who can really make ColdFusion a quantifiable success. Speaking with these business-decision makers and advising them on technical and architectural issues has influenced my perception of how ColdFusion fits into the larger IT picture, and it has shaped how I choose to respond to these questions. I'll begin with the fundamental question as to whether or not there is such a thing as a programming language that is too easy. It's not such an easy question to answer. Developing software is largely all about solving problems - and I for one will take all the help I can. CFML and the features built in to the ColdFusion Application Server don't eliminate every problem I face as a developer, but they do make many otherwise difficult tasks trivial. Wanting development to be easier is something that programmers in all development environments strive for. Any Java or .NET developer who tells you they don't want their jobs to be any easier than they already are is either lying or ignorant. Java frameworks like JUnit, Aspect-J, and Struts to name a few were all developed to make developers' lives easier. .NET developers don't use Visual Studio because it looks pretty - they use it because it rapidly speeds up development. There are thousands of other examples of frameworks, IDEs, APIs, and other tools that developers use to make their jobs and their lives easier. Be happy to admit that you use ColdFusion because it makes your life easier.

While many people won't argue with this logic, there's a common rebuttal - "at what cost?" Yes, there is a cost to getting these features out of the box. Part of that cost is obviously the actual price of ColdFusion. Of course, you save so much time and money doing your programming that the server pays for itself in this respect. Another part of the cost is performance. Given all that it does, the ColdFusion Application Server does what it does remarkably fast, but it is an extra layer of abstraction between the code and the J2EE Application Server that the code is running on. To meet the needs of an overwhelming number of users, the performance impact that this layer of abstraction comes with is not only acceptable but well worth it. The last cost of ColdFusion being easy to use is the effect it has on the quality of developers and code associated with it. Unfortunately, being easy does mean that ColdFusion, more than other programming languages, attracts more developers who have little or no programming experience or education. This is actually not such an issue - in fact the majority of the best developers I've worked with come from very non-technical backgrounds. On the other hand, couple this with the fact that the programming language and the CF server are very forgiving and you do have a recipe for creating a lot of bad code. Bad code usually means poor performance and/or difficult maintenance, and any company/manager who experiences this is likely to make a general assumption about ColdFusion in general. This is the fault of the developer, not of ColdFusion, but unfortunately the saying that one bad apple spoils the bunch is especially true in business, where discovering one bad apple can cost a lot of money. To take the questions originally posed in this editorial and rephrase them as statements:

  • There is definitely no such thing as a programming language that is too easy to learn or use, but I strongly recommend avoiding any language that makes tasks more difficult than need be.
  • A programming language that is easy to learn and easy to quickly achieve results with is definitely the most viable business solution. Anyone who says otherwise won't be in business for very long.
  • Plenty of ColdFusion developers are not what some people might call "real programmers." This is not necessarily a reflection on the platform; I've met plenty of Java and .NET developers who couldn't code their way out of a wet paper bag either. The very idea that someone is "not a real developer" is ridiculous. You're either a developer or you're not. If you get the job done and you do it fast and well, I don't care what you wrote it in - even if you are a caveman.

About Simon Horwith
Simon Horwith is the editor-in-chief of ColdFusion Developer's Journal and is the CIO at AboutWeb, LLC, a Washington, DC based company specializing in staff augmentation, consulting, and training. Simon is a Macromedia Certified Master Instructor and is a member of Team Macromedia. He has been using ColdFusion since version 1.5 and specializes in ColdFusion application architecture, including architecting applications that integrate with Java, Flash, Flex, and a myriad of other technologies. In addition to presenting at CFUGs and conferences around the world, he has also been a contributing author of several books and technical papers. You can read his blog at http://simon.coldfusionjournal.com.

YOUR FEEDBACK
Najih wrote: In coldfusion server 5 the cfgraph daes not run with JRun. I have the message Could not connect to JRun Connector Proxy Please contact the system administrator for this web site.
Christian Cantrell wrote: Rob Burgess was not commenting specifically on the technology JetBlue uses for their web site. He was clearly making a higher level comparison between JetBlue's business pracitces and the opportunity industries have to deliver rich experiences using Macromedia products.
Patrick Scantland wrote: Ah ah Ron, that's a good one! JetBlue website is made with PERL for flight lookup and ASP.Net for everything else!.. What a commitment... we were feeling alone already!
CFDJ LATEST STORIES . . .
Two of the biggest launches in Rich Internet Application history took place in 2007/2008 when Adobe launched AIR 1.0 in February '08 and Microsoft launched Silverlight (September '07). At the 6th International AJAXWorld RIA Conference & Expo in October SYS-CON Events is delighted to be...
Red Hat CTO Brian Stevens, Citrix CTO Simon Crosby, Egenera CTO Pete Manca, Allen Stewart, Group Manager, Windows Virtualization at Microsoft, and Brian Duckering, Sr. Director of Products and Alliances at Symantec were the top industry executives who joined Jeremy Geelan in the 4th Fl...
Mike Neil is general manager for virtualization strategy in the Windows Server Division at Microsoft. Mike is focused on the delivery of the Windows virtualization technology, including Windows Server 2008 Hyper-V, Microsoft Hyper-V Server and Virtual PC 2007. Mike also directs the tec...
SQL Injection attacks are one of the easiest ways to hack into a website. One recent hack, using a script from verynx.cn, involves injecting sql into a web form that then appends some JavaScript code into fields in a database that then gets executed on the client side when a user views...
Recursion Software released a private beta version of their Voyager mobile platform, with powerful interoperability for Android, Microsoft .NET and Compact Framework (CF), all Java editions (JME CDC, JSE and JEE), and more than 15 embedded operating systems. The Voyager platform is a p...
2008 is going to be an important year for Rich Internet Applications. Most organizations are delivering or planning to deliver Rich Internet Applications; however, at the same time, most IT managers are facing a dilemma: which Rich Internet Application technology and platform to use? T...
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021


SYS-CON FEATURED WHITEPAPERS

ADS BY GOOGLE