I’m glad there was an Iranian nuclear deal if for no other reason because it might thaw relations between our countries moving forward.  Americans and Persians have a lot more in common than most people seem to realize.  As far as being a framework that will in any way help to contain nuclear escalation in the Middle East – fat chance.  If the GOP was smart, they’d take this deal, get their guy elected President, have him demand an unreasonable inspection regime, then howl and point and let loose the dogs of war when they don’t comply.  We should be calling on BOTH our friends and enemies to support a broader nuclear-free Middle East.  Only then can we begin to address the real concerns leading to proliferation.  #soapbox


Recently I had fun hacking the SparkFun Simon Says game I got when I took a soldering class at SparkFun HQ.  The board uses a programmable ATmega chip so with the addition of a simple USB header you can upload Arduino “sketches” into the game and modify its behavior.

I added an easter egg.  It’s activated in a similar fashion to the easter egg that comes pre-loaded with the game (hold down a button as you turn on the device.)  However doing so bypasses the game and puts you in “synth” mode.

The buttons are configured to represent bits in a 4 bit “nibble” (thus the name “NibbleSynth”.)  This allows you to play 15 chromatic notes depending on the configuration of the buttons you press.  This leads to some pretty interesting progressions and forces the player to think in binary a bit if they are hunting for one note in relation to another.

Here is a video of me feebly going up and down the chromatic scale:

Here are some links to the Simon kit itself and a tutorial on how to hack the controller:



And finally, below the fold you will find the hacked sketch to make the “NibbleSynth” easter egg.  All credit to the original authors – I just hacked the crap out of it 🙂  Just copy/paste into your Arduino IDE, follow the instructions in the above tutorial and enjoy!

Read the rest of this entry »

Welcome to the Inaugural Tech Entry for this blog.  Maybe it will be the first of many.  Maybe not.  Or maybe I’ll make you hunt for anything useful here through a mess of self-important ramblings and idiotic brain farts.  Only time will tell.

I’m writing this here because I couldn’t find any word of it anywhere on the internets – which could very well just be for my lack of search prowess.  So I’ll lay it out here.  In case you were wondering:


You may suspect this off the bat, so let me take this opportunity to verify those suspicions.  I ran some simple tests on my first-gen VZW Motorola Droid where I wrote 16kb of data 1kb at a time.  Committing after each 1kb write operation averaged a total write time of ~250ms.  When I delayed the commit until after all the write operations were complete, the total write time averaged ~30ms.

You may be tempted to make a commit to SharedPreferences after any invocation of the Editor.  “Just to be sure.”  This is a sensible notion.  And like all things in mobile, it’s the sensible notions you have to watch out for!  (Just kidding… kind of…)  Committing to shared preferences on single, user-initiated operation makes sense.  But if the commits start getting queued or triggered on a regular basis for whatever reason, your app’s performance can really suffer.

The simplest solution is to remove any offending commit’s and instead call it once in the onPause() event.  This should ensure any pending data to your SharedPreferences structure will be written as your app surrenders control.  I haven’t run into this personally, but I suspect if you’re doing something really crazy with SharedPreferences and it takes an incredibly long time to commit changes you may run into trouble with the onPause() event kicking you out before it’s done.  In which case, of course, something a little more sophisticated is in order.  But I’d say this is a simple enough solution that it’s totally worth a shot and only move on to something more complex if it doesn’t work for you.

Just remember: the more you can limit calls to commit() in your code, the smoother it should run!

God help us, everyone!

June 12, 2010

Are you ready for an account of a man alone, 3 days on the road with severely active Crohn’s colitis?

Too bad.

WWDC KeyNote Leaked

Amalgamated Press – CUPERTINO, CA

High-ranking anonymous sources within Apple are confirming today the major theme of this year’s WWDC keynote speech will be the company’s change in direction from a computer manufacturer to a toy company.

Analysts have speculated since the release of Apple’s iPad that this was the direction the company was headed.  The keynote speech will serve to confirm the news to loyal fans and shareholders.  A new line of products are to be rolled out and demonstrated by Jobs himself at the WWDC, including the long-awaited “iGlasses”.  According to reports, users will be able to wear these glasses to see through to the bones in their hand.  Said one Apple employee weepily, “it’s magical!”

Among other announcements will be the release of a new OSX version planned for Q3.  Tentatively named Swamp Donkey, Jobs is prepared to announce the complete merger of OSX and the iPhone OS.  New features will include the exclusion of all Flash and Java runtimes.  In fact, users will be pleased to learn that all Adobe products have been black-listed from the new OS.  Users will have to jailbreak their MacBooks in order to read a PDF or run Photoshop.  All graphical development for Apple products must occur in Gimp from this point on.

Hail dear leader!

Friday, May 28, 2010


September 4, 2009

How many cigarettes have I smoked stressing the cancer risks of Cimzia?


December 18, 2008

Another blog is loosed upon an unsuspecting, uncaring, and ultimately unmoved sphere.  Welcome!  Glad you could make it!