Hal Helms - Real World Object Oriented Development, Sarasota - Day Five

Posted February 27, 2009 at 10:22 PM by Ben Nadel

Tags: ColdFusion

Today was the last of the Hal Helms Real World Object Oriented Development class here in Sarasota, Florida. With what the little brain capacity we had left, we spent the majority of the day defining and then coding the actual domain model of our sample Coffee Shop application. To me, this is where things really get fun; this is where we really get down and dirty and start wiring CFC's together and creating mock CFCs for contract tests.

Unfortunately, we didn't have enough time to get the app up and running, but Hal tells us that he will put the finishing touches on it this weekend. Even so, I think we really started to get a good taste of all the object goodness of such an architecture. Speaking of objects, though, we did have a good discussion today about what it means to be an object and that although not all CFC's might have enough "behavior" to be considered real objects, they still add a great amount of convenience to your programming. See, when we started to learn about what "real" object oriented programming is, in an attempt to find the "right way," we dismiss all non-objects as anemic and therefore symptoms of a poor architecture. Because of this, we seek to assign behavior in places that it shouldn't be. But, when we accept that not all objects are meant to have "behavior", we can start to see that other OOP-qualities such as encapsulation, polymorphism, and cohesion can still be leveraged in a non-behavior context.

Forgive me if I am not explaining myself clearly - my mind is a bit fried :)

To bring the week to a close, the remaining attendees went out to Munchies 420 where Steve proceeded to take their Hot Wing Challenge - trying to eat 10 wings in 20 minutes. He made it through 3 wings before his eyes turned completely bloodshot and he started tearing up and his knees buckled a bit. A brave man, that Steve.

Ok, I must go to sleep now.

 
 
 
 
 
 
Hal Helms - Real World Object Oriented Development - Sarasota, Florida. 
 
 
 
 
 
 
 
 
 
Hal Helms - Real World Object Oriented Development - Sarasota, Florida. 
 
 
 
 
 
 
 
 
 
Hal Helms - Real World Object Oriented Development - Sarasota, Florida. 
 
 
 
 
 
 
 
 
 
Hal Helms - Real World Object Oriented Development - Sarasota, Florida. 
 
 
 
 
 
 
 
 
 
Hal Helms - Real World Object Oriented Development - Sarasota, Florida. 
 
 
 
 
 
 
 
 
 
Hal Helms - Real World Object Oriented Development - Sarasota, Florida. 
 
 
 
 
 
 
 
 
 
Hal Helms - Real World Object Oriented Development - Sarasota, Florida. 
 
 
 
 
 
 
 
 
 
Hal Helms - Real World Object Oriented Development - Sarasota, Florida. 
 
 
 
 
 
 
 
 
 
Hal Helms - Real World Object Oriented Development - Sarasota, Florida. 
 
 
 



Reader Comments

Feb 28, 2009 at 4:32 AM // reply »
5 Comments

Best and worst wing challenge ever! I think I can still take the terrible goodness that was those fiery little demons. And the class was great too!


Feb 28, 2009 at 10:56 AM // reply »
45 Comments

Tell Charlie I said Hello!


Mar 1, 2009 at 1:15 AM // reply »
9 Comments

Hi Ben,

I've been following your posts this week while in Florida. It sounds like you and the other participants got a lot out of the Hal Helms class.

I thought I'd mention that maybe your "aha moment" for the object goodness and the tendency to dismiss all non-objects as anemic could also be applied to other, real life situations. Not that I think you are close minded at all. But a lot of us do fall into an elitist mind set when we excel in our fields and that is understandable if not forgivable. But if we do have elitist tendencies, we miss out on other related aspects that may be worthy in their own right.

Hope I'm not rambling and that it makes sense to you, but over the months that I've been following your blog, I think it is really cool how a lot of your programming logic seems to relate to real life outside of programming.

Have a safe trip back to NY.

Jillian


Mar 2, 2009 at 8:56 AM // reply »
10,640 Comments

@Steve,

I just tried to look on their site for photos, but couldn't find them. It must be hosted somewhere else, like Flickr.

@Jullian,

I don't know if it's an elitist view so much as it is a lack of experience. I think as we learn about OO or anything new (ex. design patterns), we think only in terms of what fits into that box. Not because we think everything should, but because we lack the experience to know that not everything will.

I think the idea is that as we learn, we begin to get a feeling of what rules are hard and what rules can be bent.

Needless to say, I have a lot learn.


Mar 3, 2009 at 4:37 PM // reply »
24 Comments

Hey Ben... tell David Buhler I said hello! :)


Mar 3, 2009 at 6:22 PM // reply »
10,640 Comments

@David, @Charlie,

I think this is the perfect scenario for tinychat.com :)


Nov 21, 2009 at 6:47 PM // reply »
1 Comments

@charlie griefer,

Thank you..


Post A Comment

Comment Etiquette: Please do not post spam. Please keep the comments on-topic. Please do not post unrelated questions or large chunks of code. And, above all, please be nice to each other - we're trying to have a good conversation here.

Please review the following issues:

Author Name:


Author Email:

Author Website:

Comment:

Supported HTML tags for formatting: <strong>bold</strong>   <em>italic</em>   <code>code</code>







  • Help Wanted - Find Your Next ColdFusion Job
InVision App - Prototyping Made Beautiful With Prototyping Tools Ben Nadel's Company - Epicenter Consulting Recent Blog Comments
Feb 10, 2012 at 7:21 PM
jQuery AJAX Strips Script Tags And Inserts Them After Parent-Most Elements
Update! Instead of $(eval(options.insertAfter)).after(data['insertData']); I now use: var ajaxNode = document.createElement('span'); var parent = $(eval(options.insertAfter))[0].parentNode; ... read »
Feb 10, 2012 at 6:18 PM
jQuery AJAX Strips Script Tags And Inserts Them After Parent-Most Elements
encountered this same, what I consider, jQuery bug last week. I'm building a site in which I load some content via AJAX. This content contains Linkedin share button placeholders which Linkedin API ne ... read »
Feb 10, 2012 at 11:30 AM
Cross-Origin Resource Sharing (CORS) AJAX Requests Between jQuery And Node.js
After you understand the concepts here, this is an awesome cheatsheet for enabling CORS in just about anything http://enable-cors.org/ ... read »
JM
Feb 10, 2012 at 9:10 AM
My Safari Browser SQLite Database Hello World Example
@Amy, Here is a very good tutorial on how to use JOIN: http://www.sqltutorial.org/sqljoin-innerjoin.aspx ... read »
Feb 10, 2012 at 4:42 AM
Building A Twitter-Inspired RESTful API Architecture In ColdFusion
This is great, very useful Ben. I spotted a small typo in the api.cgm listing: <cfthrow type="Unauthroized" /> Cheers Stefan ... read »
Feb 9, 2012 at 10:35 PM
CFDirectory Filtering Uses Pipe Character For Multiple Filters (Thanks Steve Withington)
I was wondering if there would be a filter you could apply so that you got everything but what you included in the filter. As in show me all docs that are not a .pdf. ... read »
Feb 9, 2012 at 10:29 PM
Learning ColdFusion 9: Application-Specific Data Sources
@Ben, No offence, but if people were really wanting advanced features they would be using a platform like ASP.NET MVC. CFML is so structurally compromised as a tag-based scripting language that ... read »
Feb 9, 2012 at 10:03 PM
Subversion - Cleanup Failed To Process The Following Paths
@Leviaguirre, do you still have problems with this? ... read »