Viewing by month: November 2009

ColdFusion Framework Skeletons Eclipse Plug-in

Having been a ColdFusion Studio junky for years, moving over to Dreamweaver with reluctance when my employer offered it as the only choice for development, I'm finding my transition to Eclipse over the past several months to be the right move, big time!  The plug-ins make it the ultimate IDE for whatever road you plan to travel as far as your development efforts are concerned.  Our use of the ColdFusion Builder plug-in with it's ColdFusion 9 CFSCRIPT recognition, Subclipse plug-in and MXUnit plug-in make Eclipse the ultimate tool for development in our environment.

I just stumbled upon a plug-in that allows ColdFusion developers to deploy framework skeletons as a starting point for any new application projects that make use of the popular ColdFusion frameworks.  This plugin isn't new, but it popped up on my radar recently since it's now supporting CFWheels on the heels of the release of CFWheels 1.0.  The plugin was created by Robert Burns.

You can install it in your Eclipse environment as well by making use of the following update URL:

http://www.robertburns.me/update/

Use it to create new ColdFusion applications in ColdBox, FuseBox, Mach II, Model-Glue and more. It works like a charm!  I'd love to see Quicksilver for ColdFusion 9 in that plug-in when the time is right!

Gurus Leave the Community

It may not matter to most, but I'm definitely not down with the whole Hal Helms leaves the ColdFusion Community thing.  The very notion that a community has high profile members who have to spend time soul-searching before making an announcement that they won't be using ColdFusion going forward troubles me.  Have we as a community enabled these people to believe their decisions will impact our own use of a software platform?  Have we put these people on too high of a pedestal, making them believe they have to take a deep breath before making a grand statement about trying other platforms?

In the ColdFusion community, a lot of time and effort has gone into the best ways to write ColdFusion based applications.  Should we use this framework over this other framework?  Is ColdFusion best used without applying Object Oriented principles, or should developers apply strict OOP in their designs?  If Hal Helms says Ruby on Rails is better than ColdFusion, does that mean I should start studying it?

Over the past several months, I've learned that what's important to be thinking about as a professional ColdFusion developer is not about OOP versus Procedural or Framework A over Framework B.  Rather, the best way to get yourself going down the right path is to think about how to write good software -- simple as that.  One of the ways to do that is to remove yourself from ColdFusion for a while and discover what else is out there.  Most of my studying of Object Oriented Programming has been with a C# book.  This forces me to set aside what I know about CF and focus on the concepts rather than the syntax.  I can then take what I learn and apply it to CF.  If CF doesn't support it, I know what to ask Adobe for.  And guess what... Adobe is listening!

My programming mentors are Brian and Micky.  These guys are well versed in other languages, but they are passionate about and prefer ColdFusion.  I wish our community consisted of more people like them.  They don't think in strictly absolutes.  And after 11 years of programming in CF, these guys enabled me to bring "joy" back to ColdFusion programming.

Good luck, Hal Helms.  You'll be missed.  But I've got new mentors now.

Converting Word Files to Text in ColdFusion

Download the TextMining.org Text Extractor and put the jar file in your CF classpath. This extractor is based on Jakarta POI. If you need more functionality than just reading the file, go get the full blown POI from Apache (http://jakarta.apache.org/poi/)

Here's the link to TextMining.org
http://www.textmining.org/modules.php?op=modload&name=Downloads&file=index

Once you get it setup, it’s simple to use:

<cfscript>
fileName = ExpandPath('ee.doc'); // this should be the full path to your file
try {
   input = CreateObject('java','java.io.FileInputStream').init(fileName);
   docText = CreateObject('java','org.textmining.text.extraction.WordExtractor').extractText(input);
} catch(Any e) {
   WriteOutput(’ERROR: ‘ & e.detail);
}
</cfscript>

<cfoutput>
contents of "#fileName#"<br />
<textarea cols="50" rows="12">#docText#</textarea>
</cfoutput>

MangoBlog installed

In an effort to revive my personal blogging routine, I've installed MangoBlog, a ColdFusion based blogging package that comes just about as close to WordPress as I've seen for any ColdFusion alternative.  I've tried a handful of CF blog tools, and this one has a series of features that make it very attractive to me.

Despite being a CF Developer by trade, I often opt for the WordPress package for my blogging efforts. The ColdFusion purists may cry foul since WordPress is a PHP powered tool, but the feature set is second to none, it's easy to use and install, and the number of developers supporting the base software and the huge library of plug-ins is huge!

MangoBlog comes pretty darn close, with a solid plug-in API, and a small library of plug-ins and a small library of themes.  I spent the better part of Sunday fitting the open source Arclite theme to the MangoBlog skinning architecture and the results are what you see before you now.  I'm still trying to get some of my plug-ins configured and working as expected, specifically the SyntaxHighlighter plug-in so that I can share CF code samples.

Wish me luck... Let's see if we can stick with this.  In the meantime, check out our ColdFusion podcast entitled This Week in ColdFusion.  We just published our latest last night!