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 the New York ColdFusion User Group (Jun. 2010) with:

David Stamm

Member since Dec 11, 2008

Recent Blog Comments By David Stamm

  • Arguments.length In Javascript Depends On Invocation Arguments, Not Function Signatures

    Posted on Mar 24, 2011 at 9:47 AM

    Good call, Ben! The whole concept of a method signature doesn't seem very JavaScript, does it? In Java, the signature is critical to method binding. And even Ruby, which lets you get away with anything, complains if you don't uphold the contract in the method signature.... read more »

  • Using Super Constructors Is Critical In Prototypal Inheritance In Javascript

    Posted on Apr 17, 2009 at 7:34 PM

    Love that crazy typeface in yer diagrams, Ben! Wherever did you come by it? :)... read more »

  • Testing For ColdFusion Component Interface Support

    Posted on Apr 16, 2009 at 12:01 PM

    Neat experiment, Ben! It is sort of a bridge between the Java interface and duck typing of languages like Python and Ruby. With an interface, you have to explicitly define it in a separate construct/entity with a name. Any class implementing that interface must implement ALL of the methods it def... read more »

  • An Experiment In Non-Data-Type ColdFusion Components

    Posted on Apr 13, 2009 at 9:50 AM

    I think a large part of the confusion comes from 1) ColdFusion's confusing implementation of OO. 2) Our industry's addiction to using Java concepts and nomenclature whenever talking about OO. And since CF is built on Java, and now has a Java-like "interface" construct one could be forgiven for f... read more »

  • Exploring Mixins And Javascript Objects

    Posted on Apr 2, 2009 at 10:20 AM

    I liked that you explicitly bound the variables to the global "window" object. The best practice is to explicitly define local variables with 'var' and global variables as 'window.foo'. You could theoretically leave off the 'var' to implicitly set a global variable. But this entails a performance... read more »

  • Is It Time For "Practical" Object Oriented Programming (OOP)?

    Posted on Mar 30, 2009 at 2:41 PM

    I was heartened to see that your post generated so many encouraging comments. What a kick-ass community! The only thing I can add is this: the object-oriented paradigm does not require greater intelligence, merely a different style of thinking. Never doubt for a second your supernatural aptitude ... read more »

  • Storing Property Data In Javascript Function Objects

    Posted on Mar 10, 2009 at 2:15 PM

    Another use of setting properties on a function is memoization. If you have a function that takes a while to run, after the first time it's called you can store or 'memoize' the result. Here's a crude example: function fn() { if (!fn.memo) fn.memo = expensiveOperation(); return fn.memo; } If y... read more »

  • Applying Flattened CSS To XHTML For Use In Remote Environments

    Posted on Mar 9, 2009 at 5:07 PM

    Great idea for a utility! I have to agree with Rick O that the real wow factor comes with parsing CSS. The killer app would be processing a bunch of external CSS files to update an HTML file in the manner you show above. It would really help an organization reuse existing styleseets. You could... read more »

  • Reconciling Different Types Of APIs And What Data They Return

    Posted on Mar 4, 2009 at 3:07 PM

    I heartily agree with you that "cleanliness is not an end in an of itself". But what's so terrible about the client getting JSON or XML back from the server instead of user-friendly error messages? Take any popular web service API as an example (Google, Yahoo, Twitter, etc.) When you call one of ... read more »

  • An Intensive Exploration Of jQuery With Ben Nadel (Video Presentation)

    Posted on Feb 12, 2009 at 10:02 AM

    Great presentation, Ben! It seems like so long ago that we first discovered jQuery. And the engineering under the hood has only improved since then! If you haven't already, you might want to take a look at Slideshare ( http://www.slideshare.net ). I see it used for slides in presentations by fro... read more »

  • Ask Ben: Finding XML Nodes That Have Children With The Given Case-Insensitive Phrase

    Posted on Feb 12, 2009 at 9:58 AM

    Great post, Ben! I think XPath and XSL are often underused, and I always dig your posts on how to get more mileage out of them. Your examples ("I Think ColdFusion Knocked Up My Daughter"??) are as twisted and borderline-inappropriate as always. Rock on, Mr. Nadel!... read more »

  • Strange ColdFusion URLDecode() and GetEncoding() Behavior

    Posted on Feb 5, 2009 at 10:14 AM

    This month marks 9 years since I started doing CF development. And I am still more than a little grumpy that you can't use "url" as an identifier. I'm not hating on the Fusion here, I'm just saying...... read more »

  • Winners Of My 1,000th ColdFusion Post

    Posted on Jan 26, 2009 at 10:10 AM

    Holy cow - what a delightful surprise on a Monday morning! And congratulations on your 1001st post, which includes one of the wackiest random number generators I've ever seen. :)... read more »

  • My 1,000th ColdFusion Post - What It Means To Me (And Free Prizes)

    Posted on Jan 23, 2009 at 2:39 PM

    This blog is in a category of its own in the world of technology. One loner dedicated to exploring a platform, mentoring newbies, providing a community for open discussion, and sharing without embarassment his mistakes and hiccups along the way. Your mind-boggling SEO power is well deserved. When... read more »

  • jQuery v1.3 Released On jQuery's 3rd Birthday!

    Posted on Jan 14, 2009 at 2:02 PM

    If you really want to geek out, check out the full release notes: http://docs.jquery.com/Release:jQuery_1.3 There are pretty graphs, and many links to long articles on other sites explaining the principles behind many of the changes. With this release, jQuery represents the state-of-the-art of J... read more »

  • Using jQuery With Custom XHTML Attributes And Namespaces To Store Data

    Posted on Jan 9, 2009 at 11:26 AM

    Encoding metadata in an XHTML attribute is definitely a powerful technique. But like anything in development, you should always weighing the benefits against the potential drawbacks: in this case, defining behavior in your markup. Separating a page's content, style, and behavior leads to more main... read more »

  • Ask Ben: Extracting Data With Regular Expressions vs. ColdFusion List Functions

    Posted on Dec 13, 2008 at 7:27 AM

    I can't believe I've never heard of verbose regular expressions! Especially since a quick Googling turned up a post on your blog from January 2007. (Your Google mojo never fails to amaze me.) You can't go wrong learning as much as possible about regular expressions. It is one of the most transfe... read more »

  • Object Oriented Programming And ColdFusion - What's The Point?

    Posted on Oct 27, 2008 at 4:11 PM

    Why object-oriented programming? I think the benefits to decomposing your application's functionality into discrete pieces are almost too numerous to list. You can isolate changes to one part of the application, reuse components, unit test one tiny piece at a time, etc, etc. But object-oriented p... read more »

  • Hal Helms On Object Oriented Programming - Day Two

    Posted on Oct 22, 2008 at 7:55 AM

    These posts from Florida are pretty thrilling to read, Ben. Keep up the good work, and enjoy that weather! It's getting colder in NY, so prepare yerself for a chilly return.... read more »

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

    Posted on Oct 14, 2008 at 2:47 PM

    Getting back to the point that Ben made about 5 hours ago, I agree that OO design articles could definitely be better written. I think part of the problem is that Java's conception of OO has become enshrined as the one true way. In Java, there is no prototypal inheritance, multiple inheritance, or... read more »