CodeStock 2014 notes

Ultimate UX Forgives

Mikhael Loo

My coworker Mikhael Loo revamped a presentation that he had given at our monthly meeting.  He went all out and created a memorable theme involving a monk to explain the way a User Interface/User Experience can be forgiving. The metaphor is the garden vs. the WORD?cage The main point is that if you make application so that anything that a user may mess up can easily be undone, then you do not have to lock them down so much. As was brought out in discussion, the unfortunate reality of many business cases is that rigid rules are necessary in some cases. The conclusion is that when possible, make it easy for user to undo a mistake and give users as much privilege as you can which simplifies testing the application and makes a more level playing field for all users.


Real World Single Page Apps: A Knockout Case Study

Cory House

Info: @housecor –

Q – follows spec for promises (jQuery promises is fine, but doesn’t follow spec)
_ (underscore) for Linq-esque library.
breeze / amplifyJS for routing
BrowserStack / for multi-browser testing
track.js – rollbar (Error logging, rollbar can work with Script Mapping so JS files can be minified)
AMD – async module definition pattern (confine scopes and dynamically pull in modules — require.js)

Cory gave an overview of the particular technology stack he and his shop used to build a Single Page Application. Above is a list of components with some alternatives in that stack. To contrast, he also showed the AngularJS stack which  simplifies things greatly by incorporating the whole stack into AngularJS.


JavaScript Design Patterns


Patterns are a recognizable way to do something
iife – (function(){ /*do something*/})();//call immediately
trick – (function($){ $.whatever(); })(jQuery);
chaining – var ib = new Something(); ib.blah().yah();
extend – inheritance vs. composition – composition easier to understand.
revealing module pattern – return signature.
DOM Object Bridge – wrap gets for DOM objects, making single query for it

Escaping Callbacks: Using Promises in JavaScript

Kevin Griffin
allows chaining
Use Q or something similar

Kevin gave a run down of how to use promises. Promises give structure to callbacks allowing for cleaner, more readable, chained code.

Becoming an Outlier: Reprogramming the Developer Mind

Cory House

Key Note
The power of Habit
“The maker’s schedule” – Most valuable assett = uninterrupted time
Rescue time
manicure stream
Microsoft Enterprise Architecture for the Enterprise
Head-first Design Patterns
Focus on things you can change
Perception is reality – how people see you, as far as they know, that is it
Teach yourself better than anyone else

The keynote was quite insightful. Many of the insight have hit home as I’ve read through 48 Day to the Work You Love and others. Basically, what’s your passion and how do you leverage that passion?

Leave a Reply

Your email address will not be published. Required fields are marked *