I love tripping across relatively harmless bugs.  Amazing how the same types of bugs keep showing up over and over and how we don’t test our code enough before releasing it.

Weather.com has a new radar feature called TruPoint.  Rather than showing radar images from T-30 minutes to the present, this feature predicts future weather patterns of radar images.  T+30 minutes.  Kinda neat if it can actually show the magical storms that materialize out of nowhere just when the traditional radar implies blue skies for as far as the eye can see.

So if a prediction program is T+x, and x is negative, are we going forward or backward in time?

Anyway, I mucked around with the feature and got it to hang.  (Not on purpose.)


Here’s the new TruPoint feature in the lower right corner - now I’m gonna be able to see when this mess passes by! Cool!

After a bit, I couldn’t get anything to update.  Including “Past” or “Right Now” either.  Then I noticed that it was loading the predictive images and got hung on “Loading Image 3 of -1″ shown in the red box below:

Oops.  Love it.  Here it is, the smoking gun!.  But what’s COOL is that the main symptom is staring them in the face!  We wouldn’t be sure what’s putting the program in this precarious temporal state, but at least we would know where in the code to start looking backwards from.  (Interesting thought, for a feature that looks forward in time.)

So I wondered, what should this really look like?  I was able to get the predictive TruPoint to work correctly, and verify that it creates and loads 20 images and then starts a new radar loop.  A happier version of the counter is shown in the lower left below.

I wasn’t able to duplicate the problem, but I imagine some set of keystrokes involving the options for “Radar” “Clouds” “Temperature” and “More” while in the TruPoint mode whacked its insides.

Darn those little overrun/boundary condition problems.

Darn us for not testing thoroughly.  (And darn those marketing and sales folks for assuming it’s just a quick little feature addition and promising it 3 days after the idea surfaces.)