ColdFusion 9 / ColdFusion Builder User Group Tour: New features - server manager, cfspreadsheet, and cfmap

Greg Wilson was in Nashville last night for the 2009 Adobe ColdFusion/Flex User Group Tour. He presented to a group of about 60 people at the Dave Ramsey campus in Cool Springs, TN. There was free food, drinks, and lots of great swag; both from Adobe, and from Dave Ramsey (thanks to both companies for the great stuff). The event got started at 7pm with Greg taking the stage around 7:30. He spoke for about 2 hours and covered lots of great features from ColdFusion 9 and the recently, publicly, named ColdFusion Builder (aka Bolt). Since I read blogs, follow mailing lists, and twitter religiously there wasn't a ton of stuff that I hadn't already heard about, but there were a few new features that I'd like to mention that really got the wheels in my head turning. I'll mention 3 of them in this post.

Let's start with cfspreadsheet...I hadn't even heard about this one, and while Greg didn't cover it in great detail, the parts that he did show blew my mind. Working with Excel files has always been a pain in ColdFusion, requiring in some cases extra 3rd party files to allow connection to spreadsheets. But in ColdFusion 9 it will be EASY to create, edit, and manage Excel files programmatically. ColdFusion developers will even be able to target specific worksheets inside of a workbook, even specific rows and columns. Take a look at this code and see just how easy it's going to be.

<!--- Read spreadsheet --->
<cfspreadsheet action="read" src="Sales.xls" query="myQuery">
<cfdump var="#myQuery#">

What about creating a new spreadsheet? Or targeting a specific cell in a spreadsheet? Gotcha covered:

<!--- Write spreadsheet --->
<cfspreadsheet action="write" overwrite="true" filename="Sales.xls" name="sObj">

<!--- Read a spreadsheet cell --->
<cfspreadsheet action="read" src="Sales.xls" name="myVar" sheet="1" rows="C" columns="3">
<cfdump var="#myVar#">

You can read more about cfspreadsheet over at Ben Forta's site. Next up is cfmap...again, there wasn't a lot of information about this new tag, but what Greg showed us was fantastic. ColdFusion 9 users will have the ability to create a Google Maps's implementation with one line of code...that's right. No more kludgy JavaScript, no more storing your API key in plain just works. Unfortunately I don't have actual code for this one as the slide went by too fast, but the basics were something along these lines.

<!--- define an address as a variable --->
<cfset address = "1234 main street, anywhere ca">
<cfmap address="#address#" width="400" height="200">

There were a few more attributes than that obviously, including the ability to define an API key inline, or define the API key from within CF Administrator. Starting to get excited for ColdFusion 9? I sure am.

Let's finish it off with another brand new feature called Server Manager. I mentioned this briefly in my live blogging from cf.Objective() back in May. This won't be a huge benefit to all developers, in fact it's only really going to affect developers or companies that manage their own servers, and multiple ones at that. But for those people this will be a godsend. Server Manager is an AIR application that will ship with ColdFusion 9 (Standard or Enterprise has not yet been decided). It allows introspection, and management of any ColdFusion instance to which you have a valid login. You'll be able to create groups of servers and change their settings all at once, apply hotfixes directly from within the AIR application, add datasources to multiple servers, and more. Adobe hasn't indicated whether the Server Manager will function with older versions of ColdFusion, but it sure would be an awesome thing if it did...even if it only went back to ColdFusion 8.

So there we have it...other cities might to participate in the official unveiling of the ColdFusion and ColdFusion Builder names, but Nashville at least gets something new as well. Thanks a lot to Greg Wilson for his time, Adobe for sending him out to see us, Dave Ramsey for the space and the food, Nashville User Group for putting on such a great event, and to all of the people who took time to come out and make last night's event a great success. Peace out.