My notes and analysis of Ben Forta's presentation to the DFWCFUG
ColdFusionLast night (April 30), Ben made a visit to Dallas to present to the Dallas Ft. Worth ColdFusion User Group on ColdFusion 8 Scorpio. Below are some of the notes I jotted down as he went through. I start with the tags and new attributes that he introduced.
- CFIMAGE - This is some really amazing stuff. Since the beginning of ColdFusion we have always had to use external programs to manipulate images, from cfx tags in the early days to more recently using Java libraries to do the work. This has now been made much simpler by use of the CFIMAGE tag. In addition to manipulating existing images, you can actually draw images from scratch with the CFIMAGE tag. Some of the things you can do are: convert to gray scale, resize, crop, optimize, sharpen, and more. You can write directly to the browser with the tag as well.
- New RICHTEXT="true" attribute to CFINPUT - CF8 is going to ship with a new feature that allows you to easily add rich text editing to your textarea elements with the new "richtext" attribute. When you use this attribute the element becomes enhanced with FCKEditor.
- CFWINDOW - This is a really cool tag that basically creates resizeable and movable panels in your browser window. You can add code within a CFWINDOW block and it displays on that panel.
- CFPOD - I am not exactly clear on this tag, but it seems to be very similar to the CFWINDOW tag minus the resizing and dragability. I am fairly certain that there are more differences, but I will need to research it further.
- CFMENU - Ben gave an example of creating a quick dynamic menu using the CFMENU by way of a new wizard.
- CFAJAXIMPORT - This tag was mentioned, but the functionality was not discussed.
- CFLAYOUT - This tag was also mentioned but not discussed.
- CFLOOP type="file" - This is a wonderful new attribute! Now instead of reading a file as a variable and then parsing based on Chr(13)Chr(10) delimters, you can just loop your file! This uses the Java file buffer and is far more efficient.
- CFINTERFACE - As hotly contested as this tag and concept was in the ColdFusion community, it got a relatively light mention in the presentation. I suppose this makes sense since it will probably only be a small percentage of developers that make use of it. Along with the CFINTERFACE were a number of new functions that played along with it.
Ben told us that as he works his way through this 6-week tour, he will be tipping his hand and showing new features that the previous presentation attendees were not shown. Last night he showed us the newly public use of ARGUMENTSCOLLECTION. Yes, I relaize that ARGUMENTSCOLLECTION is not new and that you can pass arguments to a CFFUNCTION using this method, but now you can pass it to..... wait for it...... EVERYTHING!
This is so sweet... here is an example:
You see what I did there? How bad ass is that? What a clean way to put your arguments together and then pass them. Until now the code above would have been a big ugly conditional block with multiple CFMAIL calls.
I heart the ARGUMENTSCOLLECTION!
Another cool set of features is the addition of Javascript style code. For instance, say that I want to create an array of some of the new tags iin CF8. I can do the following:
Likewise, we can now define structures like this:
We also have all sorts of Java/Javascript comparison at our fingertips. Familiar with this loop?
Now you can do this!
Ha! In addition to ++ and <= you can now use the following: --, %, +=, -=, *=. /=, %=, &&, and ||.
(the crowd goes wild!)
Around this point in general questions, Ben was asked if Event Gateways will become part of the Standard license. He gave a very political non-answer. Another politically polished non-answer was given to the question as to whether CFTHREAD will be included. I will leave it to you readers to interpret that as you may. :)
After some of the new tag/function enhancements, Ben dove into intergration with other technologies. How about this one?
That's right. You can now talk directly to .Net objects, both on local servers and on remote servers. In fact, a Linux instance of ColdFusion can easily connect to a .Net server and talk directly to it. You can take returned values such as .Net arrays and work with them just as if the array was created in ColdFusion.
On the subject of Windows, Ben gave a great example using the following new tags:
- CFEXCHANGECONNECTION
- CFEXCHANGECALENDAR
- CFEXCHANGEEMAIL
Using these tags, you can in essence create your own Exchange client! For those of us Linux folks in Microsoft shops, this is a pretty dang cool feature.
In demonstrating integration with Adobe products Ben gave an example of the following new tags.
- CFPRESENTATION
- CFPRESENTER
- CFPRESENTATIONSLIDE
Using those tags you can create Acrobat Connect (formerly Breeze) presentations on the fly. When I saw this demoed at CFUnited last year I have to admit I felt that it was a fluff piece to cater to Adobe management without much practical use. However after seeing it last night, I can clearly see that this would be a great tool for things like distance learning, online help and more.
In further integrating with Adobe products, CF8 will bring us the CFPDF. This tag will allow you to easily do the following with PDF documents.
- Obtain metadata
- Merge multiple PDFs
- Extract pages
- Encrypt documents
- Generate thumbnails of PDFs
- Flatten PDFs
- Protect PDFs
- and the biggie... Execute DDX instruction sets
In addition to CFPDF, CF8 will offer CFPDFFORM. This allows to distinct abilities when working with PDF forms. It can A) allow a user to fill in fields in a PDF form and submit them to the server and B) Extract values from a submitted PDF form. I can see great use for this in government, insurance, finance and other areas where forms have distinct regulatory requirements.
Another integration topic that Ben briefly mentioned but didn't go into detail on awas the Flash Media Server Gateway.
Then for the clencher... the exposing of the ColdFusion Black Box!
This is a new and extremely powerful set of administrative tools that allows you to view what is happening on your server down to the Java thread level in real time. There were many similar features to what is currenly offered in some 3rd party products such as SeeFusion and FusionReactor such as being able to view long running requests, see information about various connections, etc. One cool feature is the ability to see most frequently run queries. As Ben mentioned, this can help you target which areas of your application need the most optomization. Additionally you have the ability to take snapshots of your system so that in an emergency period when a server needs to be dropped, you can take your snapshot, restart the server, then view the details of your snapshot when the server is back running and your boss has regained his/her sanity!
Some other features that you will soon hear more mention of are per application mappings, custom tag paths, debug settings, and logging! These allow you to overide any defaults in the CF Administrator.
One new licensing change that Ben mentioned is the fact that VMWare is officially supported under the license with CF8. Until this time, if you were running in a VM, Adobe support would not be able to help you. That will no longer be the case.
So that is it in a nutshell... albeit a big giant nutshell! As always, Ben was the consummate ColdFusion sage and the room was completely captivate for almost 3 hours that seemingly flew by!
Thanks to Ed Sullivan for his hard work in bring Ben to Dallas, thanks of course to Ben, and thanks to all of the sponsors that made last night such a success.






Loading....