MAX And Me: Day 3, Finally
It's taken me much longer than I had anticipated to get this post up, but since my return from San Francisco on Thursday, I've been really really busy. Here are some highlights from sessions on day 3.
- Object Relational Mapping in ColdFusion 9: This was probably the most anticipated session of MAX for me, as I really wanted to see what the CF team was doing with Hibernate support. Jason Delmore, the product manager for CF, showed off what they've got working so far, and it's typically simple and typically awesome. In your application.cfc, you simply enter:
this.ormEnabled = true
and CF and Hibernate does the rest. All the CRUD work? Gone (for the most part) with a single line in your application.cfc. You can generate a Hibernate Mapping File to tinker with later, and Jason says you can use any standard Hibernate XML config tool editor to get at many of the advanced features in Hibernate not exposed directly by CF (and there were hints of visual data modeling tools in CF9, maybe via Bolt). Oh — - and if you prefer to work from the model-driven development perspective, you can add
this.dbCreate = true
and Hibernate will create your database from you from the CFCs that comprise the model in your application. How terribly inconvenient. =)
The <cfproperty> tags of your value object CFCs will define relationships between objects. Jason indicated that you can also pass in the CF FORM structure in to a Hibernate call in CF and it will map FORM values to the appropriate object properties — another nice time saver. - Event-Driven Programming in ColdFusion: Sean Corfield gave this talk about aligning the way that Flex (and other event-driven systems) handles events within an application to the asynchronous, request-response model of the Web. He brought up Edmund, his long-gestating project for bringing Flex-style listeners to CF applications. I wasn't aware that the code was available, but it is, and it's worth checking out as it integrates nicely with other Web-based frameworks for CF.
- Developing Collaborative Apps with CoCoMo: I'm excited that CoCoMo is now available to the public — it's a great way to develop collaborative applications in Flex with a lot of the ugly groundwork being done for you. CoCoMo comes with a host of widgets that you can build on top of, and all of those widgets are the ones you'll find in Acrobat.com and (I assume) the next version of Adobe Acrobat Connect Professional. If you want to add a Flex-based audio and text chat to your site or app, it's really easy to do with CoCoMo. You can even build your own collaborative components using CoCoMo's API and make some really nifty collaborative apps. I know we'll be using this service shortly.
- Developing Enterprise ColdFusion Applications: Joe Reinhart is an excellent speaker, able to break down complex concepts in to simple, easy-to-grasp examples. While there wasn't a lot new, for me, in this talk, but he made his points about isolating multiple points of integration very well and did offer this fine definition of enterprise software:
An enterprise application is an appliction that can aggregate one or more lower-level systems, such as DBMS, Web Services, or third-party APIs and identically expose its functionality in multiple formats, such as HTML, SOAP, REST and AMF. An enterprise application uses external systems as components while being able to act as a component in other external systems.
To the point, and true. Kind of like Joe's conference sessions!

Because I have the opportunity to take mass transit to work (and it's awfully convenient), I have about an hour or so to read each work day. I spend that time either reading the magazines to which I subscribe, the occasional novel, or technical books. As a result, I read quite a few technical books each year. It sounds thrilling, I know, but it's a great opportunity to expand my knowledge base, especially in areas where I'm not getting to do a lot of day-to-day work. I just finished another in a line of books about
My team has used
On Monday, Adobe introduced