ColdFusion’s Advantage

Jeff Porten commented on my post about Getting Started Developing in ColdFusion and challenged me to show him how “does [ColdFusion] blow the doors off my existing toolset.” So I figured I would talk in greater length about the features of ColdFusion that made me a loyal customer and makes me believe in it enough to base my livelihood on it.

I think there are 3 major areas where ColdFusion blows away other toolsets that solve similar issues:

  • ColdFusion makes hard things very easy
  • ColdFusion plays very well with other technologies
  • ColdFusion can play many roles in a web application stack.

Instead of turning this post into a huge treatise on ColdFusion, I’m going to run a short series on these entries over the next week.

How to Get Started Developing in ColdFusion

I’ve seen a couple of tweets around this, and instead of trying to answer every one in 140 characters, I’m instead going to point people to this article.

Get the Developer’s Version of ColdFusion

The developer’s version of ColdFusion is free. It’s not a trial version; it is just free, but with a few restrictions. It is limited in the number of IP addresses it will answer to, and certain featured like cfdocument and cfchart get watermarks placed in their generated content. If you purchase a licensed copy, this version can be upgraded without a reinstall.

In addition to the Developer’s Version a Full trial version is available. It is not limited in ability, but will only run for only 30 days. If you purchase a licensed copy, this version can also be upgraded without a reinstall.

Download the free developer’s version or trial version of ColdFusion

Also I will point out that if you are a member of the Faculty, Student Body, or Staff at a Higher Education institution using ColdFusion for academic purposes, then you are eligible for a free license.

Apply for a free license of ColdFusion for Education.

Pick an Editor/IDE

There are a few options to choose from for editing ColdFusion. Obviously any text editor will work, but there are a few choices if you are looking for an editor with language support for ColdFusion.

Dreamweaver has color coding, language reference and RDS integration with ColdFusion. It is an especially attractive option if you are coming from another web technology and already working with it. If not you can also try it out its demo version.

Download the trial version of Dreamweaver

CFEclipse is a pretty full featured editor for ColdFusion. It is an especially attractive option if you are working with Eclipse already as a Java developer, or using Flex Builder.

Getting started with CFEclipse

Finally, although it is not available today, the Adobe project currently named “Bolt” is a ColdFusion IDE. I’d bet on it becoming the standard tool for ColdFusion development when it comes out.

Learn more about Bolt

Learn about ColdFusion

Pretty much everyone will point you to the Adobe ColdFusion Web Application Construction Kit, Volumes 1, 2, and 3. Combined they are pretty daunting, but you are just getting started, so buy volume 1 for now. Disclaimer: the first author of the book is Ben Forta, for whom I work. I would still recommend it even if I didn’t.

Get the book at Amazon

Also available is community member John Farrar’s book ColdFusion 8 Developer Tutorial. I haven’t read it, but check it out and see if it is more your style.

Get the book at Amazon

In addition to the book route, there is a ton of information available on the Adobe Developer Center. The include simple how to’s and higher level articles like theory behind high availability.

Connect with Other ColdFusion Developers

There are several ways to tap into the ColdFusion Community. Here are just a few:

Also deserving special mention is ColdFusionBloggers.org. This site was setup by Ray Camden, and is a ColdFusion only blog aggregator. Ray’s pretty aggressive about policing the list (and publicizing the site 😉 ) so in many ways it’s a better resource than AXNA.

ColdFusionBloggers.org

Get Open Source ColdFusion Code

A few years back Ray Camden started RIAForge as a place to store Open Source applications written for ColdFusion and Flex. Currently it has over 600 projects. Check it out before you try and reinvent the wheel.

RIAForge open source code for Adobe technologies

Online Video Presentations

There are a few collections of ColdFusion audio and video presentations by some of the best voices in the community.

I’ll add more to this as I find new ones, or people point out to me which obvious ones I’ve forgotten or not explained enough.

Life on the Inside

I’m in a weird place. Last week I was an Adobe community member, now I am an employee. Last week I thought I knew hidden unspoken motivations behind Adobe’s actions, now I know I didn’t even come close to guessing them. Last week Ben Forta was that guy on the stage giving keynotes, now he’s my boss’ boss.

Mind you, I’m not complaining, it’s as awesome a gig as I’ve imagined, but it’s still a shock to the system. But I figured, while I’m still fluent in being a community member, I’d share some observations before they slipped away.

Things I Expected:

  • Every one else here is really fracking smart.
  • There are good reasons for certain stances and positions from Adobe that don’t make sense externally
  • Most of the not sharing those reasons is driven by legal considerations

Things that surprised me:

  • How much my co-workers listen to the community without necessarily piping in. They hear your complaints, even if they don’t tell you. They take them to the engineers even if the problem can’t be fixed for the next release.
  • Just how affected any one product is effected by the others. For example, certain management processes for CF or Flex have to work for Photoshop or Premiere as well. Some issues that come up again and again are due to this. It’s why the answer to “Why don’t you just switch to…” isn’t always as simple as “just switching to…”
  • Internally, there is a lot of affection for our customers. I think this was hit home to me, when one of my co-workers who has a tendency to rile up his particular community said pretty forcefully that “we created [the technology], and we’re not going to let our developers down.” Just writing that, it doesn’t seem too mind blowing, but it was yelled, at 1:00 in the morning, in 20 degree weather, so the passion was in the moment.

All in all, I’m in awe that I get to work here. I can’t wait to see what I learn next week.

Name This Product

I’m going to do a little exercise. I am going to describe a product. Tell me what technology product I am talking about:

  • Niche product
  • Users are often derided for using it.
  • Outside pronouncements of its obsolescence are common
  • Users are passionate often to the point of zealotry.
  • Users claim to be much more productive because of it.
  • It holds a minority market-share.
  • It’s commonly criticized for costing more than the competition

So… What am I talking about?

Apple, what product did you think I was talking about?

I guess I’m trying to point out, that I’ve been thinking a lot about a particular product’s place in the collective common wisdom, and perhaps we need to change it. But before we change it externally, we need to make sure internally in the community, we know what we offer.

Stop Looking for ColdFusion Developers

One of the biggest complains I hear from management types about ColdFusion is that they can’t hire good ColdFusion developers. I think that this occurs because people often overlook one of ColdFusion most accepted benefits. ColdFusion is exceedingly easy to learn. Which leads me to my biggest piece of ColdFusion hiring advice – don’t look for good ColdFusion developers, look for good web developers, if they know ColdFusion, great, if not, teach them, or let them learn it.

The argument I hear back on this point is “we don’t have the time of resources to train someone; we need them to hit the ground running.” I think this is penny wise pound foolish. Based on anecdotal evidence only, I would contend that it takes an average web programmer about 1 or 2 months to learn ColdFusion. (This assumes they know HTML, CSS, SQL and another server side language.) I’ve seen some ColdFusion job hunts take upwards of 9 months. You can’t afford the month to train an employee, but you can be without them for 9 months? That doesn’t make a lot of sense to me.

Add to it that for the cost of 1 or 2 months, you get a ColdFusion developer who knows another language. Developers who know more languages tend to be better. ColdFusion programmers that know Ruby for example are usually better Object Oriented ColdFusion developers through the knowledge they picked up in Ruby.

Now, I’m not arguing that you shouldn’t hire a ColdFusion developer if you can find one. I happen to know a few that are looking for work. I also don’t mean to suggest that finding a good web developer is necessarily that much easier than finding a good ColdFusion developer. Finding “good” people is never easy, but I am arguing that you need to increase your chances of finding someone to fill your position. You can do this by opening up your search criteria, and letting one of the major selling points of ColdFusion actually work for you.

What do you think, does this agree with what you’ve seen in the job market of late?

…Hello Adobe

Wow that took less time than I thought… So yeah, I’m joining Adobe. Specifically I’m joining Adobe’s Platform Evangelism group. I’ll be working under Kevin Hoyt with the team that includes Ryan Stewart, Lee Brimelow and Danny Dura amongst others and ultimately headed by Ben Forta. So it will take all of my composure to not, you know, break down into an Adobe fanboy in my first staff meeting.

What does that mean? It means that I will be working with the rest of the team to spread excitement about the Adobe Platform Products:

  • Flash
  • Flex
  • Air
  • ColdFusion
  • LiveCycle
  • Flash Catalyst
  • BlazeDS

I’ll be promoting the entire platform, but considering my experience to date, I imagine that I’ll start with a slight focus on ColdFusion and AIR.

However in addition to that focus I will have an overriding goal:

Get Adobe Platform Technologies taught in the classrooms of Higher Ed.

It’s a big goal, and not a trivial challenge. I see a lot of different paths to achieving it. I can’t wait to work with all of you to accomplish it.

And as my first act of Evangelism I will remind you once again that both ColdFusion and Flex Builder are available free to Higher Education. All you have to do is go to one of their respective “freeriatools” sites, fill out a form, and upload a picture of your Academic ID.