ColdFusion Muse

Coldfusion Panic - why CF coders scare easily

CF coders are a curious lot. They tend to be among the more engaged members of the I.T. community - at least for a product with a reputation for running mostly on Windows (ha). Each time a merger happens there is a great hue and cry from the CF community about what it "means" for Coldfusion. You design folks will have to forgive us (well you don't have to... but it would be nice) for our lack of inner fortitude. There are some reasons for our panic - though none probably based in reality. We are just afraid of losing hard fought gains in the I.T. arena. Here's a list of items (in random order) that make me panic when I think they are in jeopardy.

1. Ease of language

It may seem silly, but we are really sold on CFML as a language. It has nothing to do with the Ap server. It's just easier to code in CFML. To paraphrase a cliche, "once you've used CFML, everything else is like being in hell". I enjoy coding in C# - but it's still a distant second to CFML (sorry MS). Recent advances like CFC's, flash remoting and web services make it that much more fun.

2. Readable Query Code

Along the same lines as "ease of language", this is a personal favorite of mine. It's pratically impossible to do anything in an application without writing tons of SQL. The fastest way for me is to use a query tool to write and test the SQL, then port the code into the web application where it's needed. This is especially true for complicated queries like complex joins and unions where getting the result set exactly right can be challenging. My favorite tool is SQL server's "query analyzer". Like most web developers I am forced to deal with code in other languages from time to time. Consider this snippet of code from classic ASP:

set conn = server.CreateObject("ADODB.Connection")
conn.Open application("dsn")
send=false
set rs = conn.Execute("Select * from users where email='" & _
& request("user") & "' and password='" & request("password") & "'")
If I've written a query in query analyzer and I want it to work here, I have to do some significant reformatting to make it happen. In coldfusion the same code looks like this:
<cfquery name="rs" datasource="#dsn#">
      SELECT *
      FROM   Users
      WHERE   Email = '#form.email#'
      AND    password = '#form.password#'
   </cfquery>
In this case I can copy my code into the template and replace the variables. It is also natural and readable, and far more reminiscent of the code that is found in stored procedures, sample code, books and the online help. I don't have to sort through a lot of extra code to extract the SQL statement either. I can copy it right into my favorite query tool and work with it if I like. This makes the SQL code in CF much more portable than in other langauges. It may seem like a small thing, but considering how much SQL a developer has to write it can save a great deal of time.

3. Community Connections

I love being connected in some way to all of you. I have found the CF community to be warm and engaging. When you have a code issue, a pool of developers is usually there at the ready to help out. CF coders are really involved in a vibrant community. As human beings we are engineered to seek out connections with others. The richness of your life can be measured by the depth and strength of such connections. I know that these "professional" connections are a distant second to family and personal friends, but I just can't help feeling warm and fuzzy anyway - I love you guys (sob!).

4. A sense of being under valued

This one is no-doubt a false impression. CF coders who have been here for a while remember the days of Allaire. Coldfusion was the crown jewel of Allaire. It was the flagship. The developers conference was the "Coldfusion Developers Conference". Jeremy Allaire could walk on water and Ben Forta could part the red sea (if you will pardon my cross-faith metaphor... or perhaps dual-faith would be better than cross-faith... but I digress). When MM bought out Allaire it was like moving from being a senior in high school to being a freshman in college. Not only where we one of the crowd again - we were a less significant part of the crowd. The talk at devcon wasn't about performance, tags and CF Features - it was about studio, flash and how to design better sites (design!! if you can believe it). It just didn't feel right anymore. It's exactly how you flash and dreamweaver folks are going to feel in October (wink).

The truth is that Macromedia has put significant resources behind Coldfusion Development - more than Allaire could have afforded. It has grown and added important and innovative features. Tim Buntel and his crew have continued spiralling upward with a great product. Adobe is the 4th largest software company in the world (or will be). The amount of resources it can devote to CF will be an exponential increase over Macromedia. I for one will choose to look forward with optimism... but if you are a CF coder - I still got your back!

Comments
Rey Bango's Gravatar You hit it right on the head Mark.

Rey...
# Posted By Rey Bango | 6/8/05 10:47 AM
Emanuel Costa's Gravatar I am not religious to any programming language or platform. But I totally agree with you. I am also a hande code programmer in PHP and other web programming languages. But, CF is by far the best one for the arguments provided in your post.
# Posted By Emanuel Costa | 6/8/05 10:48 AM
Mark Kruger's Gravatar Thanks guys!
# Posted By Mark Kruger | 6/8/05 10:49 AM
Adrian J. Moreno's Gravatar re #1: Anytime I have to code in another language, I think to myself, "WWCFD?".
# Posted By Adrian J. Moreno | 6/8/05 11:25 AM
Adedeji Olowe's Gravatar I can't but agree with you. Let us hope for the best!
# Posted By Adedeji Olowe | 6/8/05 11:58 AM
Calvin Ward's Gravatar I think another key element is the lack of a dedicated and fully supported (new major versions being released kind of supported) IDE.

The fact that we are watching .NET and J2EE developers use powerful tools that allow introspection and interactive debugging, for example, and we are still doing <cfabort> and <cfcatch> for most of our work, is surely a sore point that implies there is not sufficient support for ColdFusion.

Case in point, Flex, a very much new technology compared to ColdFusion, has had a dedicated IDE from inception (FlexBuilder) and now is going to have a dedicated IDE Plugin (Zorn) provided for Eclipse.

Of course ColdFusion developers don't feel secure in Macromedia's committment to ColdFusion, because there are a number of action items regarding the language that simply don't hold up to the words expressed when asked about CF.

That's not to say that amazing things haven't been done since Macromedia has taken over CF, but I think the most egregarious step has been the lack of support in the IDE department, the discontinuing of serious focus on the existing and beloved dedicated IDE (CF Studio) and the emphasis of a dedicated IDE on their Flash based server product.

No wonder ColdFusion is often viewed as the red-headed stepchild in the Macromedia-Verse by many members of the CF communnity.
# Posted By Calvin Ward | 6/8/05 12:31 PM
Jennifer Larkin's Gravatar Awwww. We love you too!

I also think that it is a sign of a good developer to be somewhat paranoid. It helps us test our code; it makes us mindful of security vulnerabilities; and it makes us check up on each other to make sure other people aren't screwing up our stuff.

I except that people's first reaction to things like mergers is going to be panic. I did it. Then I went to bed. When I woke up in the morning I had worked out my issues and realized that the merger was not a bad thing. It's natural for people to act that way. Some of us have a lot invested in this language.

The theng that makes me crazy is that there are some paranoid people in the CF community who just don't calm down and listen to reason.

nd then there are people who freak out over little things like "my favorite product was barely mentioned in this advertising push for this other product!" Sigh.
# Posted By Jennifer Larkin | 6/8/05 12:38 PM
mark kruger's Gravatar You could see the issue as MM trying to make Dreamweaver into the CF IDE. They might say, "we have millions of dollars in this IDE - and CF is a scripting language after all....". I think they saw an opportunity to leverage DW to the CF community. I would agree with you that it's sorely lacking as an IDE - at least for what we do.
# Posted By mark kruger | 6/8/05 12:38 PM
mark kruger's Gravatar Jennifer - thanks! Good point about paranoia - a little is healthy. As for flash - we just forget about the fact that lots of folks do stuff with flash in .NET, PHP, Java et.al. I guess we are just a bit pouty sometims (ha). UG managers most of all (wink).
# Posted By mark kruger | 6/8/05 12:48 PM
Calvin Ward's Gravatar Mark,

I'm confident that's exactly what they were trying to do.

But keep in mind that Flex now has two distinct attempts at a dedicated IDE in just over a year's time.

Macromedia has had stewardship of ColdFusion for something like 5 years or longer and has never embraced a dedicated IDE for it, even using Dreamweaver for a base (as they did with FlexBuilder).

Just something that I'm sure bothers more folks than just me. And in turn can create some level of uncertainty.

- Calvin
# Posted By Calvin Ward | 6/8/05 12:52 PM
Emanuel Costa's Gravatar Calvin, I also agree with you. When they discontinued CF Studio I was really upset. I loved that IDE and was so used to it and all the nice features and functionalities. Then I gave a try to Dreamweaver, I really did! And could not stand. It was slow, it had issues setting up enviroments, there was lack of features for hand coded programmers (as the ones they had on CFStudio wasn't all imported) Then I started using Eclipse and CFEclipse and I fall in love for this tool just as I had one day for CF Studio. Now, that MM has joined Eclipse foundation to build an IDE for Flex I hope they finally agree that would be GREAT if they do the same for the CF programmers.
# Posted By Emanuel Costa | 6/8/05 1:22 PM
chanel jewelry's Gravatar Effective<a href="http://www.chaneljewelryhotsale.com"; title="chanel jewelry">chanel jewelry</a>
# Posted By chanel jewelry | 8/7/10 6:05 AM



Blog provided and hosted by CF Webtools. Blog Sofware by Ray Camden.