Asl.JS Now Auto-Generates Impress.JS Finger Spelling Presentations in HTML5

~2 min read

A helpful reader (thanks Remo!) suggested I update the sign language fingering Javascript project to display the fingerings on screen without a timeout.  It sounded like a good idea, and I thought it would be a synergistic addition as I’ve been wanting to do some dynamically created impress.JS presentations.  So, I’ve gone ahead and implemented dynamic impress.JS presentations in asl.JS.  As you’ve probably seen from my interactive resume (or its source code),  impress.JS is an open source Javascript library that allows you to create 3d presentations and slide shows in HTML5.

Read more →

Live Web Strobe Tuner is Live Now!

~1 min read

The culmination of a great deal of hard work has just been pushed live to the web, and the marketing push will begin.  I am very proud of what I accomplished, and the lengths Miso Media (my former employers) allowed me to push the boundaries of their web strategy.  This is a fantastic piece of technology, and will hopefully be the basis for a great deal of future products and web items.  It should easily integrate into any audio processing system, is portable to essentially any device, and should be standards compliant for many years.  It’s been tested to work on Chrome and Firefox for Mac, Linux, and Windows and requires the Flash plugin for audio input.  (Sadly there is just no getting around this requirement until browsers get with the HTML5 audio program).

Read more →

webGL + HTML5 Audio = Web Strobe Tuner

~2 min read

As some of you may know, I spent the past 8 months or so working at a great little music startup in Los Angeles called Miso Media.  Though I’m moving forward with my own projects up in Seattle, I look back on the work I created there with a terrific sense of accomplishment.  A great deal of my time was spent porting their proprietary FFT, affine transformation, and pitch detection algorithms to various embedded platforms.  I did some fun stuff with openGL texture transforms and shaders, but the real meat of the work I did was in optimizing for embedded platform efficiency.  As such, the porting of their polyphonic pitch detection algorithms to client-side Javascript became a feasible option and the last bit of my tenure at Miso I spent porting the fruits of my optimization efforts to HTML5, Javascript, and webGL.

Read more →

Automatically Updated Impress.js Resume using Git Submodules and Cron

~2 min read

As someone who has hired and been hired many times, I’ve seen and written my fair share of resumes.  Clean white sheets tree pulp embossed and inked with the accomplishments of the writer.  What an outdated system!  Worse still are the PDF and Word resumes, emulating the old pulp and ink model.  Ignoring the fact that you can’t convey motion, video, or interactivity in a paper resume, the main downside from my perspective is a lack of open source spirit.  All these resumes floating around and they’ve never taught anyone anything besides a written history of a job candidate.  Bleh.

Read more →

Debug Logs as Python Programs

~4 min read

As a programmer (or sysadmin, IT professional, cluster maintenance worker, scrum leader, etc) there will absolutely be times that a debugger isn’t powerful enough or optimal enough or simple enough.  For some classes of problems, whether they be visual (graphs, animations), size (too much stuff changing too quickly), security (only munged objects come with this module) etc, a debugger will only hinder your ability to work.  We inevitably go to data logging for these classes of problems, as it’s quite simple to learn and generally the first method that we’re taught.  Unfortunately, it’s also the most lackluster and limited method of debugging information that we have.  However, it doesn’t have to be.  I’m going to be highlighting a super simple but powerful idea that may just change the way you debug.  Debug logs that are fully executable Python programs.  Read on for more info and some examples.

Read more →

ASL.js American Sign Language Javascript

~1 min read

So I was unwinding after work today, and I thought it’d be fun to create a little Javascript function and mobile-optimized site for changing textual words to American Sign Language.  *FYI I throw stuff up on my GitHub all the time, and it doesn’t always make the blog.  Everything runs on the client browser, nothing is ever sent to my server and it’s safe to embed in applications.  It only took about an hour to throw together, mainly because the only public domain images are that of the manual ASL alphabet.  That in itself seems like a problem somebody should do a Kickstarter to solve (seriously).  Anyway you can check out the page here, and check the source out here.

Read more →

Speaking of a Blast to the Past, Here's an openGL Tron Game I wrote as an Undergrad

~1 min read

I just unearthed all of my homework from my CS courses from my undergraduate degree (1999-2003).  While assembling the retrospective gif for the previous post, I recalled I had a web page on my school’s csserver back as an undergraduate.  Google confirmed this, but more amazingly it was still serving my hand-written redirect page.  My amazement turned to horror as I realized I had served many a redhat ISO internally, and they were probably still lingering on there.  A quick ssh later, and I’m back in the csserver of my youth.  The account was never shut down, and the redhat ISOs were still there.  I made a quick copy of all the rest of the data, deleted the data from the account, and logged out.  I then realized what I had actually unearthed, a perfectly preserved history of each assignment I had ever completed for every CS class I had as an undergrad (dozens).  Not only that, i had written some simple openGL games for the csserver.  Sitting in the top level of a forgotten web directory was a compiled windows executable for a shitty little Tron openGL game you can download here.

Read more →

Now is the Time to Buy a First Generation E-Reader

~2 min read

Amazon, B&N, Kobo, Sony, and many others have recently released large color Android tablets/e-book readers out into the wild.  Effectively the third generation of e-book readers, these tablets priced at 150-250$ USD represent the current pinnacle of our e-book world.  But I’m not telling you to go buy them.  Oh no.  The value may be there but the price isn’t right and the technology isn’t optimum for reading books.

Read more →