CFUnited Blog

CFUnited Interview: Peter Bell: Building CFC's, Practical Code Generation, and RAD OO

The following is an interview conducted by Brian Rinaldi, Author of RemoteSynthesis, Adobe Community Expert, and User Group manager of Boston CFUG, regarding Peter Bell's presentation topics for CFUnited 2008.

In this month's installment of my CFUnited interview series, I speak to prominent ColdFusion blogger, author and presenter and good friend, Peter Bell. Peter is well known for his innovative and often controversial ideas about code generation and design patterns. Peter also runs his own business, SystemsForge, based in New York City. Having just returned from a whirlwind series of trips around the world where he both attended and presented at various conferences and, after weeks of harassment from me, Peter has agreed to speak with me.

Brian: So to begin, what sessions are you doing this year at CFUnited?

Peter: I'm presenting three sessions - Building CFC's, Practical Code Generation, and RAD OO.

Hopefully it'll be a nice balance as the first session is for those new to Object Oriented programming and CFC's, the second is an intermediate session and RAD OO is definitely pretty advanced.

Brian: Nice. Can you tell me more about the building CFC's session? Does this deal with code generation at all or just basic CFC development?

Peter: Building CFC's is an introductory session. No code generation or design patterns. It just introduces developers to what CFC's are, why you might want to use them and how to get started with them.

Brian: Does it focus on CFCs related to object-oriented development?

Peter: Yes. In simple web applications, Object-Oriented development isn't very important, but I noticed that as my web applications got bigger, using CFCs to structure my code allowed me to write larger programs that were still maintainable.

So the session will cover the syntax of CFC's but also why you might want to use them. It will offer specific examples of where to get started if you have an existing code base and don't have much time to spend on new ideas.

Brian: Tell me more about the Practical Code Generation session.

Peter: In Practical Code Generation we'll be looking at the ideas you need to start to generate more of your applications. It is relevant both to people working on one large application and for those who develop lots of applications.

We'll start with some key concepts like "Domain Specific Languages" that allow you to do a better job of designing your generators and then we'll work through an example to show how the theory works in practice.

Brian: I know someone who wrote a very practical code generator...will that make it into the presentation? ;)

Peter: The main focus on the session will be on understanding code generators, but naturally I'll be mentioning the most popular ColdFusion based code generators - even those with silly names :D.

Brian: Hmph. I won't take that personally.

So what will be the difference between that session and the RAD OO one?

Peter: Practical Code Generation will be an intermediate session. The main focus will be on code generation and while some Object Oriented experience would help, it will not be essential.

RAD OO is definitely an advanced topic. In RAD OO not only will I be assuming that everyone is familiar with concepts such as Model-View-Controller and frameworks like ColdSpring. I will be showing how breaking all of the standard rules can actually allow you to create mid sized web applications even more quickly while still making them maintainable.

I will be looking at how a deep understanding of OO can allow you to cut certain corners and will be giving away many of the hints and tips that I use to develop 30-40 custom web applications a year while still having time to present at over 10 conferences and run the other aspects of my business.

The goal is that if everyone can take away just one idea from the RAD OO session, it could help them to save a lot of time in the future. But if you don't have experience with frameworks such as Model Glue, Mach-II or ColdSpring, it might be a little too fast paced.

Brian: That sounds like an interesting topic to be sure. I know that you and I have had our fair share of debates on these topics, so you can expect me there to heckle you.

Peter: Hecklers are welcome - I always seem to find one or two :D

Brian: You mentioned all your conference presentations and travel. Many of us have noticed that your once prolific blog has gone quiet. Care to share with readers what you have been up to?

Peter: Sure! In addition to presenting within the ColdFusion community, I also present at a number of other conferences like ooPSLA, the Domain Specific Modeling Forum, Code Generation and the British Computer Society Software Practice Advancement conference. It is interesting presenting to and learning from the top experts in code generation and OO design and then trying to find ways to bring those ideas back to the ColdFusion world while also sharing the ColdFusion love outside of the community!

I'm just back from a two week trip to the UK presenting at CF United Europe and the BCS SPA (which is probably the best conference I've ever attended).

I'm also working hard on upgrading my Software Product Line which I use for generating web applications and am on the program committee for a number of different conferences.

Finally, I ran an ad agency for many years so I'm also getting more involved with presenting at marketing conferences to introduce best development practices for creating robust, marketing focused web apps.

Brian: ...and what do you do in your spare time? ;)

Peter: Well, I'm writing some technical papers on domain specific modeling, learning Flex, getting more comfortable with TDD, Unit testing, Cruise Control and Ant. I'm also considering porting rspec - a BDD framework - to ColdFusion :D

Brian: Jeez, I was kidding.

Well, I can say I am definitely looking forward to your sessions. I know you and I have had interesting debates on some of these very topics and having seen you speak at other conferences, I know it will be well worth attending.

Thanks for taking the time to chat. I look forward to some healthy debate at CFUnited, hopefully over a brew at the hotel pub!

Peter: Thanks! I'm certainly looking forward to your session on RIA and data security on the Friday and I'm sure we'll manage some interesting debates (as always) in the pub.

Rachel Maxim - AJAX Usability

Check out Rachel Maxim's blog to find out more about her CFUnited topic AJAX Usability.

"Speaking on AJAX Usability at CFUnited

I've attended CFUnited since it was called "CFUN" and held in a single room (how it has grown!), and I'm excited to say that I will also be a speaker this year. I will be speaking on AJAX Usability. My talk, as of this writing, will be on Tuesday June 19th at 9:30 am.

A little bit about my talk...

When AJAX first became widespread, several usability gurus aired concerns about how this new power could be abused, and we've seen no shortage of AJAX usability mistakes on the web. Thankfully, many design patterns and best practices have also emerged, and following these guidelines can help you avoid those pitfalls. In my session, I will cover some of the top usability issues you should be aware of when using AJAX, and show practical examples of how to overcome them."

To read more visit http://rmaxim.blogspot.com/2008/03/speaking-on-ajax-usability-at-cfunited.html

CFUnited Pre-Conference Classes June 16 and 17

Pre-Conference Classes are finally announced!
CFUnited's Advisory Board decided on 8 amazing full day classes for the CF community. 4 classes on Monday and 4 classes on Tuesday. You can only sign up for 1 class per day, got it?

*All classes are $449 each (this cost is not included in your conference registration for the main event, it is completely separate)

To register go to: http://cfunited.com/go/classes
All classes take place at the DC Convention Center in Downtown Washington http://cfunited.com/go/travel

Monday 6/16/2008 - 9am - 5pm, check-in is from 8:00am-9:00am
CU231
Doug Hughes
"Introduction to Model-Glue"
CFUnited Pre-Conference Class
This class would cover all of the general knowledge required to get started building Model-Glue applications. I would discuss the basic ideas of II and MVC on which the framework is based, how to install and configure the framework and how to get started working with it. This would be based on a subset of the same materials I used with Carfax. The main requirement would have to be a familiarity with CFCs.

**********************************************
Monday 6/16/2008 - 9am - 5pm, check-in is from 8:00am-9:00am
CU232
Joe Rinehart and Simon Horwith
CFUnited Pre-Conference Class
"Flex for Developers"

In this session, Joe Rinehart and Simon Horwith will tag team to offer a full day of materials packed with everything a CF developer needs to know to start using Flex immediately. Students will learn all of the fundamentals of Flex including how to create layouts, interactive interfaces, and navigation. Among other things, they will also learn how to use Object Oriented ActionScript, View States, and Data Bindings to create feature rich applications. Extra time will be taken to learn the various techniques that are available to allow Flex and ColdFusion applications to communicate. ColdFusion developers should leave this class armed with the knowledge they need to create Flex front-ends for existing CF applications as well as the tools necessary to be effective as a Flex developer.

***********************************************
Monday 6/16/2008 - 9am - 5pm, check-in is from 8:00am-9:00am
Matt Woodward
CU233
"Object-Oriented Programming With Mach-II"

In this one-day hands-on course you will learn the basics of object-oriented programming in ColdFusion starting from the ground up. We will discuss the fundamental concepts behind OOP, do basic domain modeling, and build powerful, flexible business objects that will serve as the backbone for a small but real-world sample application.

With the objects in place, we will then build the front-end of the application using the Mach-II framework. The major emphasis in this course will be on OOP in ColdFusion, but building a Mach-II front-end for the application will serve as a nice introduction to Mach-II.

**********************************************
Monday 6/16/2008 - 9am - 5pm, check-in is from 8:00am-9:00am
Chaz Chumley
CU234
"Fast Track to ColdFusion 8"

Course Covers: Beginner to Intermediate Development

Course Synopsis: This class is designed to teach experienced web developers the concepts and skills to use ColdFusion 8.

Course Summary: Fast Track to ColdFusion 8 provides experienced web developers the knowledge and hands-on practice they need to start building and maintaining dynamic and interactive Web applications focusing on best practices, design, usability, optimization and performance.

What You Will Learn:


Setting up ColdFusion development environment
Administration
Using Dreamweaver CS3 and CFEclipse
Publishing dynamic data using ColdFusion tags
Reusing common code with CFCs (ColdFusion Components)
Building forms with ColdFusion
Building search interfaces
Interacting with Databases
New features in ColdFusion 8 (AJAX UI Support)
Debugging your application
Securing your Website

**********************************************
Tuesday 6/17/2008- 9am - 5pm, check-in is from 8:00am-9:00am
Hal Helms
CU235
"Better User Interfaces with jQuery"

Many of us remember the "Language Wars" of just a few years ago -- a hotly contested battle of Java v. PHP v. ColdFusion v. .NET. Oddly, the winner was...JavaScript.

In the last few years, the language of choice for Web applications has become a little scripting language that everybody used but almost no one bothered to master. The hype behind "Web 2.0" has thankfully died down, but the reality is that, more and more, users expect Web applications that perform more like desktop ones. And for that, there's only one choice: JavaScript.

The problem is that the browsers can't quite seem to agree on which JavaScript features to support -- and how to support them. Enter JavaScript libraries such as Prototype, Scriptaculous, Dojo -- and jQuery.

jQuery is the work of John Resig and his vision was to create a cross-browser compatible library that would greatly simplify the use of JavaScript's sophisticated features. The library is a stunning success.

In this class, you'll learn how to use jQuery (and the many jQuery plugins) to create the kind of interfaces that users will love. If you want to learn how to make your interfaces sing, don't miss this class, taught by Hal Helms. Hal will share his love for jQuery and show you ridiculously easy ways to make your interfaces sing.

***********************************************
Tuesday 6/17/2008- 9am - 5pm, check-in is from 8:00am-9:00am
Nate Nelson
CU236
"SQL For Developers - "The Next Step"

There is a lot more to a database than data storage, databases can be very powerful in many ways. This class will focus on bringing a developer to that next level by introducing intermediate and advanced database concepts. Most of the class will be on SQL programming concepts such as procedures, triggers, functions, importing/exporting, cursors, complex queries, etc. Some other topics to be covered in this class will include indexing, optimization, and some database design coverage.

The goal for this class is to bring a developer to that next step in leveraging database systems like never before.

***********************************************
Tuesday 6/17/2008- 9am - 5pm, check-in is from 8:00am-9:00am
Charlie Arehart
CU237
"CF911: Solving CF Performance and Reliability Problems"

Got a dead, dying, or poorly performing server? If you're having problems and don't know where to turn, you're not alone. Many CF shops find themselves challenged to understand and resolve the problems that plague their site. The good news is that with knowledge comes understanding. The answers are often there: you just need to know where to look and how to interpret them.

In this day-long class, veteran ColdFusion troubleshooter Charlie Arehart will lead developers and administrators in an overview of the many resources available for solving problems, from information reported within CF logs, to available free and commercial monitoring tools. He'll also point out valuable informational resources available from Adobe and other CF experts. He'll outline several common problems that trouble CF sites, but more important he'll show you how to use the combination of logging information, monitoring tools, and informational resources to help you be able to find and resolve other problems on your own. Regardless of what version of CF you're using (from 4 through 8) or even other CFML engines, many of the resources and techniques offered will apply to all engines

**********************************************
Tuesday 6/17/2008- 9am - 5pm, check-in is from 8:00am-9:00am
Jared Rypka-Hauer
CU238
"ColdFusion's AJAX Advantage: How to make the most of ColdFusion 8's EXT2 integration"

ColdFusion 8 has some great AJAX widgets built in, but there's far more available than simply what's available via the ColdFusion API. Behind that API is a rich and very extensive set of tools from the EXT JavaScript AJAX library. Come to this class to get tools, tips and tricks for leveraging some of the power of EXT in your applications. We will go over various APIs for the EXT objects that ColdFusion exposes directly (like the grid object) as well as some of the supporting objects that make the EXT framework so powerful.

*Also, We do not have any discounts available for these classes.
*If you are interested in a customized class with one of our speakers for groups of 10 or more, please contact liz (at) cfunited.com

CFUnited at the DC Convention Center June 18th-21st 2008

This year we are excited to announce that our 10th Anniversary event will occur at the DC Convention Center located in Downtown Washington DC. This decision was tough and we thought long and hard before jumping in because we wanted to ensure an exciting event for our attendees.

The other news is the entire DC metro area is in a "Black Out" the last week in June, which means there is another event that is taking up almost all the hotel rooms and space in the entire area. This means that CFUnited conference dates had to be moved to June 18th - 21st.

The main hotel for conference attendees is the Grand Hyatt, located a couple blocks from the convention center. http://grandwashington.hyatt.com/ The hotel discount code will be available Friday on the travel page of our website. The price per single room is $229. We will list the other rooms rates as well.

We hope this news continues to work with your plans to attend CFUnited. The registration and website in general will be updated by February 1st with the news and changes.

Thank you for your attention to this important update. If you have any questions or concerns, please feel free to contact Liz Frederick 301.424.3903 x107 or email liz(at)cfunited.com

Quotes from our sponsors and speakers:

"You have my full whole hearted support. All problems have been anticipated and you are a seasoned planner in this community." - Bob Flynn

"A lot of benefits for having the event at the Convention Center. Very accessible and it makes it easy to go do something. No need to rent a car either. The Whitehouse is in walking distance. And those dates actually work better for me." - Sean Corfield

"A new venue, a new date ... with TeraTech's track history, I'm certain these factors will not change the fact that CFUnited 2008 will be the best ever." - Jeff Backhus, Dynaportal.com

"Works for me! I don't have any issues. Having a speaker room at the convention center helps." - Ray Camden

"Should be really fun" - Joe Rinehart

"Those dates are fine for me." - Ben Forta

"There is so much to do. This will be lots of fun." - Simon Horwith

"Finally I can attend the event and come home with memories of visiting DC instead of the bar at the Marriott" - Mark Drew

C

CFUnited has a public Google Calendar

Ever wonder what's happening next for CFUnited? Would you like to plan your schedule out better?

Add "CFUnited Calendar" to your google calendar. You will receive the same information our staff receives about early birds, surveys, contests, interviews, sponsor offers, product dates and information, partnering events, etc.

http://www.google.com/calendar/gallery?q=cfunited+calendar

CFUnited iPod touch Raffle... you know you want one!

Register for CFUnited 2008 conference before Early bird date of Jan 05, 2008 or CFUnited Europe conference before Early bird date of Jan 10, 2008, and you will automatically be entered into a raffle to win one of two 8gb iPod touch!

With an iPod touch you can listen to your favorite CFUnited podcasts on the go, browse the CFUnited conference websites with wifi, and watch CFUnited speaker interviews on YouTube :)

When you register by the above Early bird dates not only will you get a chance to own an iPod touch but you will also be saving $200 off of the base registration price.

For those of you who have already registered for CFUnited and CFUnited Europe, don't worry you will be entered into the iPod touch raffle as well.

Winners will be announced on Jan 11th, 2008.

New Track Categories and Track Chairs

Our process for picking topics has created a dilemma with our previous track names, so we've decided to change the track titles. The following is a list of tracks for which the topics will fall under.

NOTE: The plan is to announce 3-5 topics for each track today. Stay tuned.

Accessibility / Usability - Section 508, UI best practices, CSS and disabled access
IDEs and other technologies - Includes CFEclipse, Dreamweaver, Wizards, Online Tools, etc.
RIAs - Rich Internet Applications including Flex, Ajax, Air topics
Advanced CF - Advanced ColdFusion topics, an intermediate knowledge of CF required
Bootcamp CF (Fundamentals) - The first half of the the Bootcamp sessions are an introduction to CF. The second half are beginner topics covering basics of CF8 and RIA topics. Also includes any topics not requiring intermediate experience.
Manager - Project Managing, Development Approach Methodologies, Tools, Marketing, Business Issues
Frameworks/CMS - Fusebox and other various frameworks covered, including content management solutions
Deployment/Platform - Integrating with SQL Server, Database Rountables, Operating System, Deployment tools (such as ANT)

TRACK CHAIRS

Accessiblity/Usability - coming soon

IDEs and other technologies - (so new we haven't picked a track chair)

RIAs - Simon Horwith and Joe Rinehart

Advanced CF - Raymond Camden

Bootcamp CF - Nate Nelson

Manager - Shlomy Gantz

Frameworks/CMS - Brian Kotek

Deployment/Platform - Jeremy Kadlec and Nate Nelson

CFUnited USA 2008 Call for Speakers! ends 10-31-07

We are releasing the Call for Speakers. This round of picks will end on October 31st (10/31/07). We will choose 50% of the topics that will be presented at CFUnited.

Wondering why so early? Many attendees like to plan ahead for a major event like CFUnited, also we can see what types of topics we need to fill in with other speakers. Another round of call for speakers will occur November-January.

Please submit your ideas for topics now! http://callforspeakers.cfconf.org/?event=suggest&eventId=170

CFUnited Audio MP3s available now!

Hi CFUnited 2007 Attendees! You can now login and access the audio for most topics. We are still collecting some more recordings, but for now we've release what's available.

Step 1: go to the CFUnited.com hompage and type in email address and password.

Step 2: click on "topics" and scroll down to the presentation you want to download. Each presentation is roughly 40-70MB.

Step 3: listen to the presentation

For non-attendees, we will make these audio recordings available for purchase very soon.

FYI, all Videos are coming soon. We conducted a screen capture with audio overlay so you can view what the presenter is doing on the screen instead of just seeing the presenters face. This will be available soon to purchase at an affordable price for all videos. Please keep an eye on this blog for future details.

**next cfunited event: CFUnited Express Chicago! Sept 30th

CFUnited Express Chicago aka CF_Underground details

Ever experienced CF_Underground? The pre-MAX ColdFusion meeting held by TeraTech has renamed its event to CFUnited Express Chicago this year. We are holding this event in CFUnited fashion and we are bringing to you some great speakers and time to get to know other developers like you.

CFUnited Express Chicago

Date: Sept 30th, 2007

Where: Ascend's Chicago Facility

Cost: $149 (and get a $50 discount as a user group member)

Register now! Limited Seating. Great materials, goodies, free lunch, drinks, and more.

http://cfunitedexpress.com/go/chicago/2007/

Speakers:
* Charlie Arehart
* Raymond Camden (Tentative)
* Adam Howitt
* Patrick Quinn
* Michael Smith

Previous Entries / More Entries