Kinect v2 Final Hardware

WP_20140725_001

The final Kinect hardware arrived at my front door this morning.  I’ve been playing with preview hardware for the past half year – and working on a book on programming it as various versions of the SDK were dropped on a private list – but this did not dampen my excitement over seeing the final product.

WP_20140725_002

The sensor itself looks pretty much the same as the the preview hardware – and as far as I know the internal components are identical.  The cosmetic differences include an embossed metal “Kinect” on the top of the sensor and the absence of the razzmatazz stickers – which I believe were simply meant to cover up Xbox One branding.

WP_20140725_003

Besides allowing you to admire my beige shag carpet, the photo above illustrates the major difference between the preview hardware and the final hardware.  It’s all about the adapters.  At the top of the picture are the older USB and power adapters, while below them are the new, sleek, lightweight versions of the same.  I’ve been carrying around that heavy Xbox power adapter for months, from hotel room to hotel room, in order to spend my evenings away from home working on Kinect code.  Naturally, I was often stopped by TSA and am happy that will not be happening any more.

The Javascript Cafeteria

cafeteria, 1950

The Nobel laureate and author Isaac Bashevis Singer tells an anecdote about his early days in America and his first encounter with an American style cafeteria.  He saw lots of people walking around with trays of food but none of them paid him any attention.  He thought that this must be the world’s most devilish restaurant, full of waiters but none willing to seat him.

The current world of javascript libraries seems like that sometimes.  New libraries pop up all the time and the ones you might have used a few months ago have become obsolete while you had your back turned.  Additionally you have to find a way to pick through the dim sum cart of libraries to find the complete set you want to consume. 

But maybe dim sum cart is also a poor metaphor since you can get in trouble that way, trying to combine things that do the same thing like knockout and backbone, or angular and asp.net mvc (<—that was a joke! but not really).  It’s actually more like a prix fixe menu where you pick one item from the list of appetizers, one from the main courses and finally one from deserts.

This may seem a lot like the problem of the firehose of technology but there is a difference and a silver lining.  It used to be that if you didn’t jump on a technology when it first came out (and there was a bit of a gamble to this, as witnessed by the devs who jumped on Silverlight – mea culpa) you would just fall behind and have a very hard time ever becoming an expert.  In the contemporary web dev climate, you can actually wait a little longer and that library you never got around to learning will just disappear. 

Even better, if a library has already been out for a few months, you can simply strategically ignore it and pick the one that came out last week.  The impostor syndrome epidemic (seriously, it’s like a nightmare version of Spartacus with everyone coming forward and insisting they feel like a phony – man up, dawg) goes away since anyone, even the retiring Visual Cobol developer, can become an expert living on the bleeding edge with just a little bit of Adderall assisted concentration.  True, it also means each of us is now competing with precocious 16 year olds for salaries, but such is the way of things.

Obviously we can take for granted that we are using JSON rather than XML for transport, and REST rather than SOAP for calls.  XML and SOAP are like going to a restaurant and finding that the chef is still adding fried eggs or kale to his dishes – or even foam of asparagus. 

moto, chicago

Just choose one item from column A, then another from column B, and so on.  I can’t give you any advice – who has time to actually evaluate these libraries before they become obsolete.  You’ll have to just do a google search like everyone else and see what Jim-Bob or cyberdev2000 thinks about it – kindof like relying on Yelp to plck a restaurant.  Arrows below indicate provenance.

Appetizers (javscript libraries):
jquery
prototype

Corso Secundo (visual effects):
jquery ui – – -> jquery
bootstrap – – -> jquery
script.aculo.us – -> prototype

Soups and Salads (utility libraries):
underscore
lazy.js
Lo-Dash – -> underscore

Breeze

Amuse Bouche (templating):
{{mustache}}
handlebars.js -> {{mustache}}

Main Courses (model binding frameworks):
angularjs
backbone.js -> underscore
knockout.js
ember.js -> handlebars.js
marionette.js -> backbone.js
CanJs

Wine Pairings (network libraries):
node.js
edge.js -> node.js
Go

Sides:
CoffeeScript
bower -> node.js

Desserts (polyfills):
modernizr
Mozilla Brick
polymer

Actually, I can help a little.  If you ask today’s waiter to surprise you (and we’re talking July of 2014 here), he’d probably bring you Jquery, Lo-Dash, Angularjs, Go, bower, modernizr.  YMMV.