Friday, September 16, 2011

Do the ColdFusion Community Members Need to Become Jerks?

Forgive me about the over-dramatic title of this post, however there is some truth into it.  The reason Ruby and Rails has such a good reputation for producing good code is that the community won't accept anything less.  A Rails project is expected to have a comprehensive test suite and well crafted code.  If it doesn't and the developer tries to release a poorly engineered project to the community its a given that the developer will hear about it.  Nothing less is accepted.

As ColdFusion developers I think we tend to be a bit more forgiving of poorly crafted code as to not discourage anyone from using the language, or we just aren't as outspoken as other communities.  I think by these things we are doing the entire community a disservice.  We need to push for well-crafted, professional applications.  It starts in the open source world, however we need to be able to push this mentality into private development as well.

From what I've seen a large percentage of the open source ColdFusion projects are well written and well tested, however its in the private development where "professional" development practices are lacking.  This is where the root of the poor perception of ColdFusion exists.  Every time a developer from another language opens a poorly CF written app, that's one more developer that forms a poor opinion of ColdFusion.  Even though we all know that that ColdFusion isn't to blame for a poorly written application, we are to blame for accepting poor development practices.

I think if we speak loudly enough about poor practices via twitter, blogs, in conferences, and when reviewing others code we can start to shift the perception of ColdFusion code to a respectable level.  We don't necessarily need to become "jerks", however we do need to be more outspoken when we see poor coding practices being implemented in projects.  If we as ColdFusion developers clean up our code we can do more one thing to clean up the perception of ColdFusion.
Fork me on GitHub