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 CFinNC 2009 (Raleigh, North Carolina) with:

Jim Partin

Member since Apr 25, 2011

Recent Blog Comments By Jim Partin

  • Streamlined Object Modeling: Patterns, Rules, And Implementation

    Posted on Oct 14, 2013 at 5:15 PM

    This book is your friend when it comes to OOP: http://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612/... read more »

  • Giving My ColdFusion Components And My JavaScript Components The Same Structure

    Posted on Sep 3, 2013 at 11:48 AM

    Pretty much how I do my stuff, tho I omit the cfscript tag and use pure script components. hmmm, I do however use annotations to clean up my method declarations (which railo stupi-- stubbornly does not support last I looked) ex: /** * @output false * @accessors true * @ExtDirect true */ component... read more »

  • What The Heck Is Business Logic Anyway?

    Posted on Dec 19, 2012 at 11:08 AM

    For business logic specific to UI, it can be similar. Your click button press event wouldn't perform much. I like to have them create pointers to the elements I need to check and pass those in to an object. This way, the dom locations or names can change, but the core business logic doesn't need to... read more »

  • What The Heck Is Business Logic Anyway?

    Posted on Dec 19, 2012 at 10:59 AM

    I often take the approach of business logic typically being objects that are unaware of their surroundings. Example, I create an object, set some properties for it, and call the doYourThing() method and check for output. It wouldn't know anything about the UI, or how the data itself is gathered, n... read more »

  • ColdFusion 10 - Don't Use Dynamic Query Values In CFLoop

    Posted on Apr 21, 2012 at 2:32 PM

    @Mike, The problem with that kind of feature is that the for-in loop is used to map to the fast underlying java for-in construct which does not have those features. In fact, I cant think of any of the big languages with a for-in having those features... read more »

  • ColdFusion 10 - Looping Over Queries Using A For-In Loop In CFScript

    Posted on Apr 19, 2012 at 12:09 PM

    @Ben I'm updating my ExtDirect stack that supports persistent namespaces for invoking components to the latest ExtDirect spec that supports named arguments. Thus, as I'm adding components to my registry, instead of just counting the number of required arguments, I'm now tracking named optional and ... read more »

  • ColdFusion 10 - Looping Over Queries Using A For-In Loop In CFScript

    Posted on Apr 19, 2012 at 10:21 AM

    @Ben Might want to double check your code for sending out comment posts, getting a profile pic that is clearly not your font of manliness on your posts.... read more »

  • ColdFusion 10 - Looping Over Queries Using A For-In Loop In CFScript

    Posted on Apr 19, 2012 at 10:18 AM

    @Ben Yeah, when using getComponentMetaData() or getMetaData(), it treats parameters as an an array during a writeDump() (possibly functions as well, i forget now), and you can iterate over them with a normal for loop. But when you try to use for-in, it throws something about trying to reference a c... read more »

  • ColdFusion 10 - Looping Over Queries Using A For-In Loop In CFScript

    Posted on Apr 19, 2012 at 9:53 AM

    I love using the for-in clause now in cfscript! Except when looping over component metadata. Silly things claim to be arrays when they aren't really, and thus break for-in, at least in cf9, haven't tried 10.... read more »

  • ColdFusion 10 - Don't Use Dynamic Query Values In CFLoop

    Posted on Apr 19, 2012 at 9:50 AM

    @Sam sure, many ways, but there is always a proper way and a shortcut way that leaves a mess for someone to clean up. I prefer the proper way that leaves zero room for confusion on the part of other coders or the compiler, and increases performance.... read more »

  • ColdFusion 10 - Don't Use Dynamic Query Values In CFLoop

    Posted on Apr 19, 2012 at 8:57 AM

    @Sam If you're not that worried about scoping, you must not have very heavy loads in large applications. A little extra typing up front saves billions/trillions of CPU cycles down the road, not to mention preventing scoping issues in large complex apps. The downside of coldfusion's ease of use and ... read more »

  • ColdFusion 10 - Looping Over Function Arguments

    Posted on Apr 16, 2012 at 3:20 PM

    Huh, I didn't know there was a for-in structure in CF yet... *rubs hands evily* time to revisit some code!... read more »

  • ColdFusion 10 - ColdFusion Query Of Queries vs. Functional Programming

    Posted on Apr 12, 2012 at 11:46 AM

    I've found that using the simplest data type possible for a given task is important with large sets of data in cold fusion. Example, loading hundreds of instantiated cfcs as an array of items (loaded from a DB by a PK) versus just storing and manipulating a copy of the query itself. If I want each... read more »

  • Experimenting With A JavaScript Gateway To A Remote ColdFusion Persistence API

    Posted on Jan 3, 2012 at 4:05 PM

    I do this kind of thing all the time with cold fusion and extjs. I wrote a stack for it's Ext Direct API to integrate with coldfusion that allows both on demand cfc instantiation to call it's methods, as well as access persistent cfcs, and threw a little bit of security integegration into it.... read more »

  • Branching Logic vs. Guard Logic When It Comes To Function Control Flow

    Posted on Jun 24, 2011 at 10:48 AM

    @Drew Your test is flawed. When doing short circuiting logic, you typically do such in a function with a high amount of comparisons such as validation of a whole form. In this case, the first instance you fail and return early, then better as you jump over comparisons that don't need to be made. Whe... read more »

  • Branching Logic vs. Guard Logic When It Comes To Function Control Flow

    Posted on May 18, 2011 at 11:54 AM

    @Ben, A more practical example: <cfcomponent output="false"> <cffunction name="Init" access="public" returntype="Authentication"> <cfreturn this /> </cffunction> <cffunction name="login" access="public&qu... read more »

  • Branching Logic vs. Guard Logic When It Comes To Function Control Flow

    Posted on May 18, 2011 at 11:38 AM

    @Ben, I also use it in conjunction with formatted structs as a lazy (nay, Creative and Efficient!) way to bubble up nested error messages without relying on try catch when I don't need to. crude example: inside component: <cffunction name="getUserData" access="public" re... read more »

  • Branching Logic vs. Guard Logic When It Comes To Function Control Flow

    Posted on May 18, 2011 at 9:17 AM

    I call this Short Circuit programming, as you're short circuiting the rest of the logic and taking the quickest route out of the method. I've been using it for years and it creates VERY fast and readable code. Additionally, there are branching limitations. I've come across nasty validation logic cod... read more »

  • Atlas Shrugged, Part I - The Movie

    Posted on Apr 25, 2011 at 9:06 AM

    Way I understand it, there were indeed multiple limitations in creating the movie. The ppl that owned the rights to the film have been trying to make it for over a decade, but unable to secure funding from the usual suspects, as they didn't want the movie made. The rights were getting close to re... read more »