OO ColdFusion Presentation Today on ColdFusion Meetup!

This is a late post, but I wanted to mention that I'll be presenting my Common Sense Approach to Object Oriented ColdFusion, 2010 Edition presentation in a few hours to the ColdFusion Meetup, 12pm Eastern (UTC/GMT-4) today. This is a slightly refined version to the one I presented in April at the CFObjective conference.

Watch Live Here

After the presentation, you'll find the recording posted here. I'll update this post after the fact with the direct URL.

Also, I'll finally be making the code from the CFObjective/Meetup for public view for the first time following the presentation, as well as post it on RIAForge and Github. One of the sample applications is the most extensive LightFront example posted to date, so this presentation should also show you a little bit on the framework as well. In that sample, there's also an "old school" version, as well as an unfinished Mach-ii/ColdSpring version that I'll continue to work on (but there's enough there to show the stark differences between a typical OO CF application and a simpler OO LightFront one).

I'll also be releasing a new version of LightFront (0.4.5) today as well.

UPDATE: The recording of the presentation can be found here:

http://experts.na3.acrobat.com/p93791252/

Note: It went a bit long... 1:53:02

The code I show and the slide deck in the presentation is available via Subversion here.

To download a zip file, which has the code, PDF and PowerPoint of the presentation all in one, just go here:

http://svn.lightfront.org/svn/cfobjective2010/CFObjective2010/download/CFObjective2010.zip

Promoting CFML Outside of the CFML Community - Results

It was incredible what came out of my Promoting CFML Outside of the CFML Community session Friday evening. We think some of these ideas are a call to action for the CF developer community.

Group 1 - Promoting CFML to New Developers

Team Consisted of:

  • John Farrar
  • Rick Mason
  • Dana Tierney
  • Ezra Parker
  • Jeff Coughlin
  • Brian Swartzfager

You can ready the summary at: http://docs.google.com/Doc?id=dcdhg6m6_27dnzqx5gs

Group 2 - Promoting CFML to PHP Developers

Team Consisted of:

  • Adam Tuttle
  • Timothy Farrar
  • Seth Bienek
  • Dee Sadler
  • Ken Auenson
  • Chris Hough
  • Adam Howitt - adamhowitt@gmail.com

You can read the summary at: http://docs.google.com/Doc?id=dcdhg6m6_26frtdsbv8

There is also all of the raw ideas that came out of the session. Expect blog entries from the teams which show those in more detail.

My CFUnited presentation is from 4-6pm today - Promoting CFML Outside of the CFML Community

Some of you may remember by Promoting ColdFusion Birds of a Feather at MAX 2007 last year.

I am revisiting that topic today, in a similar format to last time, except we should have more of the materials we need to make this brainstorming session a success, AND, even more importantly, MORE TIME.

This is an all audience participation brainstorming session. We're going to figure out what our community needs to do to grow CFML outside our own community. If you are at CFUNITED, I hope you'll plan to attend.

We need "recorders" for each of the breakout groups in the session. If you are planning to attend, and are willing to just "record" the details of your breakout group, please see me before the session (as early as you can today), or email me at brianmeloche at gmail dot com. I'll send you a link to a Google Doc to record your group's findings.

ColdFusion as a Different Type of "Glue" - cf.Objective() presentation - and real world OO

For those of you who have requested it, here is a copy of my presentation from cf.Objective().

People seemed to enjoy the presentation. The presentation deals with using ColdFusion to interact with an ERP system. The problem is complex enough that sample code is not really possible without a lot of work, so this presentation did not have code. I didn't get a lot of complaints about that because the session was detailed enough that it didn't NEED code.

One thing that I hit on during the presentation that has more of a wider scope and was also covered by Nic Tunney in his preso. My idea is simple: You really shouldn't try to make ColdFusion do things it's not good at doing.

ColdFusion bogs down when it needs to create a lot of objects. If you are retrieving a LARGE result set for read only purposes, you shouldn't create an array of objects. If a query will do, use a query. If not, use an array of structures. I will often add a getWidgetsAsQuery or getWidgetsAsArrayOfStructures service method and create a transfer object (not to be confused with Mark Mandel's Transfer) to give me the ability to create an array of structs instead of creating an array of objects. When you are dealing with a class with many methods and/or a large array, you will get a big performance hit, even in ColdFusion 8. On add/edit/deletes, a bean is well suited, but not on gateway style selects. You can try to get around that by going around it and doing your model in Java, but, to me, that doesn't seem like a great idea unless you NEED to (sorry, Andy P!), as doing that gives up what ColdFusion is best at in the first place - Rapid Application Development. Instead, work to ColdFusion's strengths would be my suggestion. I may be criticized by some as not being a "thought leader", but that's a crock of sh*t as far as I am concerned. As my slide says, I am not a Spock when it comes to being a CF developer. I'm a Scotty, and I'll take real world experience (using sound fundamentals) over theoretical constructs every day. During pure OO in ColdFusion is just that - a theoretical construct - and it fails in real world situations. Use OO where it makes sense, which is in MOST places, but don't try to use it everywhere in every situation.

About My Session: ColdFusion As a Different Kind of "Glue"

My session is titled: ColdFusion As a Different Kind of "Glue". A lot of people both last night and today asked me exactly what is it I'm going to be talking about. Since it's not listed in the conference guide, I thought I'd try to explain it.

First of all, my topic has nothing to do with Model-Glue, nor does it talk about any framework.

Adobe markets ColdFusion a lot, maybe even mostly, towards intranet development, but that sells ColdFusion short. My talk is about using ColdFusion in large scale, public facing enterprise applications, and specifically, interacting with enterprise systems, such as an ERP, and what you'll need to know should you need to develop an application that needs to interact with such a system. If you don't know what an ERP is, check out this Wikipedia entry. My topic will be at a 10,000 foot level, but I'll talk about some specific lessons learned from the trenches.

I hope if you're at cf.Objective, you'll decide to come to my presentation. I am up against sessions by Mark Mandel, Maxim Porges and Charlie Arehart, so I have tough competition!

I am also speaking at cf.Objective() this year!

I haven't had a chance to blog about it this, either, but I am also speaking at cf.Objective this year! I'll have details about my talk in the future. Although I have something planned, I can't discuss it yet.

The conference schedule for cf.Objective() 2008 has been posted.

The cf.Objective early bird ends on January 15th so register by the 15th to get the special price of $499! Register after the early bird, you'll pay full price ($629, which is still quite reasonable).

I am speaking at CFUnited this year! Early bird registration ends January 5th...

I have not yet blogged about this, although the badge is in the top left corner, but I am going to speak at CFUnited 2008 this year! This will be the first time I will be speaking at the conference, and it will be the first time I have attended CFUnited since it's been called CFUnited! The last time I was able to go was back at CFUN04.

I will be speaking on Promoting ColdFusion Outside of the ColdFusion Community, reprising my BOF at MAX 2007. I hope to be able to go into more detail, taking what was discussed at the BOF and take into account new developments (which I believe are many) and come out of it with an action plan. I requested more time than a one hour session. Since the schedule hasn't been published yet, I don't know yet if I'll get that request granted or not.

Since I am talking about CFUnited, Liz Frederick of Teratech wanted me to repost from the CFUnited blog that the early bird price ends January 5th.

Here's that entry:

Only a few more days to take advantage of special Early Bird prices.

Register for CFUnited by Jan 05th 2008 and save $200 off the base registration rate.

4 day conference package ($899.00) * Attendance for 4 days (6/25/2008-6/28/2008) * Keynote and General Sessions * All conference sessions including repeat sessions on Saturday * Entrance to Expo Area * Networking Events * Badge and Badge holder with bar scan code * Free Lunch for each show day (Dinner is not included) * Access to all presentations after the event, including all the recordings. * Promotional bag with materials including show guide, CD, coupons, etc. * Opportunity to participate in all raffle drawings

3 day conference package ($799.00)

* Attendance for 3 days (6/25/2008-6/27/2008) * Keynote and General Sessions * All conference sessions * Entrance to Expo Area * Networking Events * Badge and Badge holder with bar scan code * Free Lunch for each show day (Dinner is not included) * Access to all presentations after the event, including all the recordings. * Promotional bag with materials including show guide, CD, coupons, etc. * Opportunity to participate in all raffle drawings

Saturday Only conference package ($249.00)

* Attendance for 1 day (6/28/2008) * Saturday Keynote and General Sessions * All Saturday conference sessions, including repeat sessions * Entrance to Expo Area * Badge and Badge holder with bar scan code * Free Lunch (Dinner is not included) * Access to all presentations after the event, including all the recordings. * Promotional bag with materials including show guide, CD, coupons, etc. * Opportunity to participate in Saturday raffle drawings

Register for CFUnited Europe by Jan 10th 2008 and save $100 off the base registration rate. Also as a group discount, register 3 for the price of 2, for more details contact info@cfunited.com

When you register for either conference by the above dates you are also automatically entered into a raffle to win one of two 8gb iPod touch!