Ben Nadel
On User Experience (UX) Design, JavaScript, ColdFusion, Node.js, Life, and Love.
I am the chief technical officer at InVision App, Inc - a prototyping and collaboration platform for designers, built by designers. I also rock out in JavaScript and ColdFusion 24x7.
Meanwhile on Twitter
Loading latest tweet...
Ben Nadel at cf.Objective() 2010 (Minneapolis, MN) with: Jason Dean and Simon Free and Alison Huselid and Josh Adams

Steve Savage

Member since Dec 11, 2008

Recent Blog Comments By Steve Savage

  • Learning ColdFusion 9: Resetting Applications With ApplicationStop()

    Posted on Jul 29, 2009 at 2:45 PM

    I agree, for me the expected behavior when resetting the application would be to also clear all the sessions.... read more »

  • Thoughts On User / Page Request Security Model (Part II)

    Posted on May 4, 2009 at 10:28 AM

    @Ben, I think your on the right track, it really does depend how fine-tuned or broad the rules are for a specific process. My last approach was to try and balance the two. My desired result was for every requested .cfm to have an associated object that acts as a facade to the combination of any un... read more »

  • Thoughts On User / Page Request Security Model (Part II)

    Posted on May 4, 2009 at 7:19 AM

    @Ben Looking back, I should have asked: what is your definition of a business object? I think we are using it the same way, but it's always good to check. I use the term to describe any object that exists to automates one or more business rules, and is subject to change if the business rules chang... read more »

  • Thoughts On User / Page Request Security Model (Part II)

    Posted on May 3, 2009 at 4:42 PM

    @Ben, I may have muddied the waters with my quick post. I've been pretty much focusing on bussiness analysis over the last year, so that's where these thoughts are coming from. Part of my job is to prevent developers from over engineering the solution, so that's why I recommended the split. Pe... read more »

  • Thoughts On User / Page Request Security Model (Part II)

    Posted on May 1, 2009 at 5:25 PM

    Looking over the comments from this and the last post, it looks like security and work flow management is being treated as one in the same. I usually split these in to two distinct steps: 1st. can a user interact with the system, yes or no. security. 2nd. can the user perform the requested action... read more »

  • Ask Ben: Selecting A Random Row From A Weighted, Filtered Record Set

    Posted on Jan 28, 2009 at 12:13 PM

    Nice technical solutions. What I've always found interesting for these things is more the business logic. When a site is new, undergoing growth, and has small number of advertisers, the number of views each advertiser get is also growing. Eventually user growth slows or plateaus (there are only s... read more »

  • OOP Getters() And Setters() - A New Programmer's Frustration

    Posted on Oct 15, 2008 at 7:58 PM

    Just noticed that I deleted part of the last post. Should end with SQL functions for each table. So I stick with option 2 (...)... read more »

  • OOP Getters() And Setters() - A New Programmer's Frustration

    Posted on Oct 15, 2008 at 7:55 PM

    @Ben, I guess that is what I'm saying. I alway's seem to have some form of a getter function for pulling the data out. I've got an object containing a set of data (my DTO) I can put data in to a DTO by - initializing it with a query object, or - iteratorating to an existing or new row and using ... read more »

  • OOP Getters() And Setters() - A New Programmer's Frustration

    Posted on Oct 15, 2008 at 1:55 PM

    @Ben I think either approach is valid depending on what you are trying to accomplish. Personally, I typically go with option 1 for two reasons: - to allow more flexibility in what is passed to the DAO. - so the object can know what DAO created it. For the first reason - An example would be havin... read more »

  • OOPhoto: VARIABLES vs. VARIABLES.Instance - When And Why?

    Posted on Sep 15, 2008 at 12:31 PM

    @Ben, another good discussion. I definitely like separating object variables in to different scopes. A benefit I didn't see mentioned: - transmitting values between objects/applications/systems. By separating object variables in to different scopes, I was able to create functions like struct = ge... read more »

  • OOPhoto: Been A Bit Stumped Lately With The Next Step

    Posted on Sep 10, 2008 at 11:31 AM

    @Ben For you question Can you explain a bit further about the idea of a Facade being part of the Controller? I have not heard of this before. It may just be my use of the term Controller. I think Controller in the context of the Model-View-Controller architectural pattern, not a design pattern.... read more »

  • OOPhoto: Been A Bit Stumped Lately With The Next Step

    Posted on Sep 9, 2008 at 1:21 PM

    I'm wondering if you are getting bogged down in terminology, e.g. Controller vs. Facade. When I see Model-View-Controller, I think of an architectural approach. Where each component could be multiple objects. When I see DAO, Facade etc, I think of common types of objects that may exist in each c... read more »

  • OOPhoto - Encapsulating Form Processing In The Service / Facade Layer

    Posted on Aug 26, 2008 at 3:35 PM

    Reading over the comments that popped up while I wrote my last one, I think I understand what your after a bit better. I think I made a comment before that I personally disliked having Object.Save() / .Validate() etc. because you may want to save or validate data from an object in more than one way... read more »

  • OOPhoto - Encapsulating Form Processing In The Service / Facade Layer

    Posted on Aug 26, 2008 at 2:45 PM

    I agree that you can over abstract and bloat an application. For façades I'm not sure the issue is abstraction, but more an issue of stability. Perhaps I shouldn't, but I use façades to provide a stable interface when I'm not sure how I'm going to slice and dice my services. I can code to the fa... read more »

  • OOPhoto - If Object.Validate(), Why Not Object.Save()?

    Posted on Aug 18, 2008 at 11:55 AM

    Your gut tells you to put the Save function in a service object, not your bean object because you know that you may save the same data in multiple ways (xml, database, rss), and you may want to change how the data is saved at run-time (eg. in response to user preferences). I'd suggest treating your... read more »

  • OOPhoto - Thoughts On Integrating The New Domain Model

    Posted on Jul 30, 2008 at 12:56 PM

    Definitely agree with Marc about code re-use and encapulation. For me though the biggest benifit is Unit Tests. I don't code in my day job anymore, so weeks can go by where I don't have a chance to even look at code. With objects I know that once I have an object working, it will keep working, a... read more »

  • OOPhoto - Thoughts On Integrating The New Domain Model

    Posted on Jul 30, 2008 at 12:09 PM

    I had the same concerns as Ben when I started to write more OO code in coldfusion. What to do with the recordset? At the time initiating objects in had a significant performance hit, so I didn't want to make arrays of objects, especially for large datasets, but I didn't want to expose my code to th... read more »

  • John Mason Presents On Unit Testing with CFCUnit

    Posted on Feb 22, 2008 at 3:54 PM

    I've really relied on CFUnit for my current project, I found it did two things for me: 1. It moved me in to test driven development, and forced me really think what I wanted each component to do, and to limit the complexity of, dependencies between my components, so I could have 'testable' code, a... read more »

  • ColdFusion RandRange() vs. Java Collections Shuffle()

    Posted on Jan 23, 2008 at 9:20 PM

    If you don't already, you should try runing the Randomize function just before you run any of Coldfusion's random number generators. http://livedocs.adobe.com/coldfusion/6/CFML_Reference/functions-pt260.htm... read more »

  • Using CAPTCHA In ColdFusion 8

    Posted on Jan 8, 2008 at 3:28 PM

    I just took a look at Ticketmaster, and it looks like the logic to "clean up" the image is fairly simple Main obscuring method is straight lines running from one edge of the image to another (always used) Second is random dots - noise. (not always used) Third is a slight deforming of the text (used... read more »