I’ve never visited Nutrun before, but I absolutely loved this article:
The article begins with a simple question and answer: How do you read a file in Java? Answer? Simple - just write a utility class!
But the author then asks - why is something so simple and basic not a part of the language? From the article:
So how much DRY was applied to a language that requires you to wrap its File I/O routines in a utility class after all these years?
Or maybe someone out there was disappointed when Collections were introduced in Java? Who needs them, when you can implement LinkedList yourself?
Now I’m not reading this as a negative review of Java per se, but a point to the practicality of language design. (Not that I pretend to be an expert!) At the 10 year anniversary party for ColdFusion, one of the creators said his intent was not to make a beautiful language, but a practical one, and I think that speaks volumes about what makes ColdFusion such a strong web development language. You can’t use CF to go to the moon - or run a nuclear reactor. And that’s fine. CF is absolutely wonderful and great for making web sites. Folks need to remember that when they get “attacked” by the .Net or Java folks arguing how much better their language is then ours. It’s all about using what is best for the task at hand - and I have yet to see a language better for making dynamic web sites.
The absolute best line from this article:
Trying to pinpoint what makes a language better than another is too abstract a subject for anyone to come up with any concrete suggestions anyway. However, the choice is highly dependent on the problem we’re trying to solve, and for a significant number of problems out there at the moment, there are better tools for the job than Java. And I do believe what makes a good mechanic is his judgement in terms of the choice of tools.
Amen. You can replace Java with any language, including ColdFusion. I’m sure most of my readers know this already, but I just wanted to share. Oh, and I had no idea what DRY was. Here is an article that talks a bit about it: http://www.artima.com/intv/dry.html.