As simple as possible, as complex as necessary

How I got started in ColdFusion

1 August 2011

(This post is in response to Steve Bryant's call for stories from ColdFusion developers about how they got started with the language.)

It's August 1997 and for the last year following the end of a linguistics related Masters I've been working in a university language department as a research assistant on a project funded and led by a large telco. They are exploring ways of applying communications technology to distance education and have built an experimental platform integrating ISDN-based telephone conferencing with a dynamic web interface for managing the calls.

As English language teachers with a special interest in the application of new technologies, our job is to work with the telco engineers to develop and trial the platform as a kind of virtual classroom - or learning environment. The technology is new indeed and far from robust, but we've used it successfully to teach a short English language course to a small group of learners dotted around the globe.

It's good to talk

The environment includes a forum and various web-based tools and learning resources, but the real novelty is that the students can actually speak to each other and their tutor: real group conversations inside the virtual environment.

Big deal, you say, but this is several years before Skype, Facebook and ubiquitous broadband.

Each student has to have 2 phone lines: one for their dial-up modem and the other for a telephone. To speak to someone you join a kind of chat room, click on their photo and the system then rings the phones at both ends. You pick up and talk. Clicking on other faces makes their phone ring so they can join in. Conversations can be recorded and played back via the web interface (using streamed RealAudio).

The future: eLearning

The system crashes fairly regularly, but this doesn't dampen our excitement and everyone we show it to is struck by its potential for changing not only distance education, but campus based learning as well.

Everyone that is, except the telco higher-ups, who for reasons best known to themselves decide to call it a day. Interesting experiment, time to move on.

Happily there's sufficient enthusiasm amongst the university leadership to keep the initiative going without the telco. But how, when the technological rug is about to be removed from under our feet?

CF to the rescue

At the final lunch meeting between the university and telco teams at which the project is being officially closed, I'm having a sandwich in a quiet corner of the room when one of the engineers comes over for a chat. I've got on well with the techies and had been hired for the project largely because I'd shown some practical coding aptitude in addition to being a language specialist, and could therefore "mediate" between the engineers and the linguists. All I'd done is build a few simple computer assisted language learning applications using Apple HyperCard and Toolbook, basic visual scripting tools - mere toys compared to the C++, Oracle and Perl the engineers are using on the back-end - but I've been teaching myself HTML and Javascript and used them to make minor contributions to the system.

Aware that the university wants to keep the project alive, the engineer says (something along the lines of): "You've obviously got some technical ability. I think you'd struggle with the telephony, but why don't you have a go at recreating the rest of the system using something like Cold Fusion?"

A few HotBot searches later, I've downloaded a trial version of Cold Fusion 2.0 from the Allaire website. Within a few days I've got an Access database hooked up to Cold Fusion and I'm showing my colleagues something that looks pretty close to the personalised welcome screen on the telco's system. Within a few weeks I've recreated enough of the non-telephony features to convince the university management that we could proceed with our own in-house web-based learning environment. Money is found to purchase a server and a Cold Fusion license (version 3.0 has just come out) and by the end of September the first course is up and running. Within two years a couple of thousand students and staff are using the system on and off campus (by which time I should add, CF and the hardware have been upgraded a few times and Access replaced with SQL Server). In 1998 the system won a European Academic Software Award.

Eventually I moved on and far better Virtual Learning Environments and social networks emerged to make our relatively primitive system obsolete, but it was in continuous active use for almost 12 years.

I'm sure I'll be echoing many others in saying that, 14 years later, I don't write ColdFusion code in quite the same way as back then. Happily the original "spaghetti" is, I believe, lost. But it worked, it kept our ship afloat, and led to the first job in which I genuinely looked forward to going into work each day.

Posted on . Updated


  • Formatting comments: See this list of formatting tags you can use in your comments.
  • Want to paste code? Enclose within <pre><code> tags for syntax higlighting and better formatting and if possible use script. If your code includes "self-closing" tags, such as <cfargument>, you must add an explicit closing tag, otherwise it is likely to be mangled by the Disqus parser.
Back to the top