Bill Moore is a very good friend of mine. He owns and operates EV World. Bill is a case study for the best and worst thing about Coldfusion - it's ease of use. The fact that CFML is accessible as a language makes it a great choice for designers to enter the world of web programming. Bill is an excellent designer and an amazing individual. It's impossible to meet him without warming to him immediately. His real passion isn't web programming, it's alternative energy technology. He uses Coldfusion because he can write all kinds of code and it will usually work. In fact, Bill absorbs only the amount of CF that he needs to update his site and add the features he wants. As you can see by reviewing his site that is actually quite a lot by now. The rest of his enormous energy is devoted to promoting alternative sources to fossil fuels. Looking at EV World it's hard to believe it's the work of a single man. It looks more like a corporation with a team of developers. He offers subscription services, reviews, news, dozens of articles - a whole cornucopia of content for anyone interested in a green way of life. Yet Bill would not characterize himself as a Cold fusion developer.
> I remember hearing Ben Forta speak in 1999 or 2000 and he said something like, CFML's accesibility as a language is its greatest strength and its greatest weakness. Now, 5 years or more later, I have reviewed thousands and thousands of lines of code all over the Internet and I can attest to the fact that it is possible to write really bad CF code that performs well enough to "get by". In fact I would go so far as to say that some of the code I have worked with has been Whitmanesque. It flows like a flash flood from the left brain into the template - a whirlwind of html, javascript, SQL, CFIFs and CFELSES - all peppered with enough pound signs to make Richard Simmons Apoplectic. Usually there is a dash of comments (though some are left decidedly unseasoned).If they work, why does anyone care? What makes a really good Coldfusion Application "better" than one done in less time if they both work the same? The basic problem is one of scalability. The truth is that intranets are rife with Coldfusion hosting poor or downright awful code - and everyone is just fine with that. Why? Because Coldfusion is the best tool for getting things done. It seems every corporation has that one guy or girl who is the "go to" guy (or girl). If that person is a techy he or she will turn to VB, Access or (if he's lucky and gets the right advice) Coldfusion to solve some problem involving inventory, contact management, sales etc. That code will often sit on that server for years, happily doing its job. But when it's a public web site - or when it is suddenly called on to support hundreds of users - it becomes a much different story. It's not uncommon for such an application to take a sudden nosedive. Everyone will sit around wringing their hands about how unscalable CF is and how it doesn't degrade gracefully.
The truth is one of the features of poorly written code is often a precipitous drop in performance when some threshold is reached. That's when it's important to find someone who can "do it right". Yes, it is possible to build highly sophisticated, scalable web sites in CF that can handle millions of users. But the reason it sometimes doesn't happen is not related to the strength or weakness of the platform. It has to do with the accessibility of the language.