HTML5 With Modernizr… Come on in! The Water’s Fine.

Things are afoot. I’m building out the redesign of Drunkenfist.com, and we’re working on an internal redesign at work. I’ve been toying with the idea of using the new HTML5 semantic elements for both and to that end I took some time to evaluate Modernizr, the small JS library that programatically exposes HTML5/CSS3 feature support […]

HTML5 Demo: Tracking Video Progress With Google Analytics

There’s a back story to this one. I once failed to get video progress tracking working with a Flash video player and Big Expensive Analytics Company™ code. It was a real pain in the ass. We missed the deadline, wasted about 8 hours and eventually just dropped the feature. A frustrating experience for all involved. […]

HTML5 Notes: My First Time Using the Canvas Element

Quick verdict? It’s fun. The long verdict (albeit one not base on the work I did here?) The accessibility concerns are valid and will need to be addressed before we end up with a replay of Flash circa 2000. And no one wants that. Anyway, the example I did do for the demo is actually […]

As If URL Shorteners Alone Weren’t Bad Enough, Now They’ve Mated With URL Hijacking Frames

The Digg Bar is the most obvious (and noxious) example, but the new trend of URL shorteners coupled with a URL hijacking frame is spreading alarmingly. More and more I’m seeing this odious technique. These things break bookmarks, wreck navigation cues from the URL and are generally sleazy and rude. And there’s how to beat […]

JavaScript Perfromance Tip- Don’t Test Against obj.length. Test Against a Local Variable.

I saw it yesterday in some code I was debugging and I realized I’ve become hyper sensitive to this common pattern: var anchors = document.getElementsByTagName(‘a’); if (anchors.length > 0){ for (var i=0; i < anchors.length; i++) { addEvent( anchors[i], 'click', trackLinks ); }; }; Why am I sensitive to it? Well, what are some of […]