cf.Objective() Day Three: May 6, 2007

 
May 09, 2007

by Brian Rinaldi

After two full days of sessions and late night drinking, I decided that day three at cf.Objective() was my day to catch up on some beauty sleep. Between that and the fact that my schedule had me leaving after lunch, Sunday was a bit of a light day. However, I did attend the big event of the day, Ben Forta's keynote presentation. First, though, Sean Corfield gave a top-notch presentation on service-oriented architectures.

SOA with ColdSpring and Transfer

Sean's presentation was based on some of his recent experiences working on the Acrobat Connect services for Adobe. The core theme of Sean's presentation dealt with how to create public APIs for software as a service (SaaS) and the unique challenges this presents. When building these applications, you often have to factor in the differing technologies, such as SOAP, REST, JSON or AMF, that the client can use to connect to your service as well as the stateless nature of many of these types of connections – this means no cookies and therefore no sessions.

Sean and his team built their applications utilizing ColdSpring and Transfer, and cfcUnit for unit testing. They used ColdSpring to make the model available to all the remote facade components through dependency injection. Transfer handled the data persistence and object caching. The nature of the application, however, meant that caching had to be handled carefully, such as not caching frequently updated items and making web services available to synchronize the caches. Sean's team used cfcUnit to write an extensive suite of tests. They automated their testing using ANT tasks and Eclipse's builder. In Sean's opinion, the use of each of these tools was one of the success stories of the project, although one of the lessons his team learned was that they did not write enough unit tests and fully implement test-driven development (TDD).

Keynote Day 3 – More Top Secret Scorpio

Ben Forta subtitled this presentation "Stuff Jason [Delmore] was kind enough to leave so Ben had something to talk about," because of all of the items that had already been announced this weekend. However, Ben was able to announce three significant new features:

Eclipse Ajax Wizard – This is much like the Flex wizard within Eclipse that Ben has been demoing for some time. However, in this case, the wizard generates a very similar application, with list, view and edit windows, built utilizing Scorpio's new Ajax user interface elements.

ColdFusion Debugger – This feature had been hinted at previously but never officially announced; it is a full-fledged step debugger built as an Eclipse plug-in. This allows you to set break points within any ColdFusion template. When that template is run in any kind of browser, the processing is paused and the debugger is populated with all kinds of useful data, including the populated variables and their values.

Enhanced Flex Data Services (FDS) Integration – Ben spent quite a bit of time introducing this feature as it required some knowledge of how data services currently works. There are several aspects to this new feature, which include:

  • a new gateway that allows you to notify FDS of changes made to data outside of Flex, for instance from a ColdFusion template;
  • assemblers can now return simple ColdFusion queries and structures instead of only components or arrays of components;
  • FDS can be installed as part of the ColdFusion installation process and integrated into the ColdFusion installation, allowing ColdFusion to communicate directly with FDS and eliminating the need for the problematic RMI connections currently used. This will also provide a significant performance boost.

Heading Home

Leaving for home was a bittersweet moment. I was disappointed that I would miss the afternoon sessions, as somehow all of the ColdSpring sessions were grouped into the second half of the final day. I also regret that I will not see most of the people I have become friends with in the ColdFusion community until next year's cf.Objective() conference, as I don't plan to attend CFUnited this year. Nonetheless, I was also ready to get home to my family and my bed after three fun and learning-filled but long days.

I want to say congratulations to Jared and Steven Hauer and their team, who have really turned cf.Objective() into the must-attend conference for moderate to advanced level ColdFusion programmers. This was a sentiment I heard echoed throughout the groups of attendees I spoke to. Personally, I am already looking forward to next year!


Brian Rinaldi is a web developer at Sun Life Financial, Inc. He is the manager of the Boston ColdFusion User Group and an Advanced Certified ColdFusion MX Developer, as well as a Microsoft Certified Professional. Brian also serves on the editorial advisory board for the ColdFusion Developer's Journal. Brian is most well known for his efforts promoting open-source projects in ColdFusion, especially for maintaining the ColdFusion open-source list as well as the weekly updates, both of which you can find via his web site at http://www.remotesynthesis.com.

# Posted By perlen schmuck | 27-Nov-08 02:05 AM
# Posted By Zuchtperlen | 27-Nov-08 02:09 AM
# Posted By Perlenschmuck | 27-Nov-08 02:11 AM
Add a Comment
(If you subscribe, any new posts to this thread will be sent to your email address.)
  
Privacy | FAQ | Site Map | About | Guidelines | Contact | Advertising | What is ColdFusion?
House of Fusion | ColdFusion Jobs | Blog of Fusion | AHP Hosting