Quote Dump

The opposite of the religious fanatic is not the fanatical atheist but the gentle cynic who cares not whether there is a god or not.
– Eric Hoffer
If history repeats itself, and the unexpected always happens, how incapable must Man be of learning from experience.
– George Bernard Shaw
I have long been of the opinion that if work were such a splendid thing the rich would have kept more of it for themselves.
– Bruce Grocott
Learning to dislike children at an early age saves a lot of expense and aggravation later in life.
– Robert Byrne
Cynically speaking, one could say that it is true to life to be cynical about it.
– Paul Tillich, The Courage to Be

Foo Fighters

Saw Foo Fighters last night at the Target Center and man do they rock. More later.

Update: It’s later.

I loved this show for several reasons:

  • The opening acts were tolerable. The first band, whose name escapes me, had a decent heavy metal sound. The second was Serj Tankian of System of a Down fame. I like his voice, his lyrics and his politics (see especially Axis of Justice).
  • The Foo Fighters are tight. The whole show was just really well produced and the music was fan-fing-tastic.
  • The stage show was great as well, with the whole band strolling out to a round stage that dropped from the ceiling mid-show. They played a few songs, then the rest of the band went back as Dave Grohl did some solo work. I was lucky enough to be right next to the walkway as the band strolled by, which was pretty cool.
  • The band members seem to genuinely like each other and obviously have fun playing the show. The opening bands, while good, did not have nearly as much fun as Foo Fighters. The camaraderie, joking, shout-outs, all lent a small-venue feel to a stadium show.
  • Local artist Jessy Greene was the target of much of Dave’s praise, which she accepted with some embarrassment, probably not helped by the audience’s spontaneous “Jessy…Jessy…Jessy” chant. She plays a mean violin/fiddle, and can sing pretty good too.

Anyway, if you have a chance, go see this band play!

Bug in Microsoft ASP.NET AJAX Extensions 1.0

Here’s the story:

I created a drop-down calendar control for a website I’m helping to build at work. The website needs to work not only with American date formats, but in British, French, Italian, German and Spanish formats as well, including a format which includes the three-letter abbreviation for the month (e.g., 31-Dec-2007). The Date.parse function built into the browser cannot parse this particular format, so I was hoping to leverage the localization features of the AJAX Extensions library. However, I kept getting an error at a function called “Sys$CultureInfo$_getAbbrMonthIndex”, deep in the bowels of the library. Here’s the entire function (line breaks added):

    function Sys$CultureInfo$_getAbbrMonthIndex(value) {
        if (!this._upperAbbrMonths) {
            this._upperAbbrMonths = this._toUpperArray(
                this.dateTimeFormat.AbbreviatedMonthNames);
        }
        return Array.indexOf(this._upperMonths,
            this._toUpper(value));
    }

Can you spot the error? Hello!? It populates an array called _upperAbbrMonths, then promptly looks for an entry in the _upperMonths array. Suffice it to say, if that particular field has not been defined yet, you get a variable undefined error. I fixed it by registering a startup script in our base Page class with the following script:

Sys.CultureInfo.prototype._getAbbrMonthIndex = function(value)
{
        if (!this._upperAbbrMonths) {
            this._upperAbbrMonths = this._toUpperArray(
                this.dateTimeFormat.AbbreviatedMonthNames);
        }
        return Array.indexOf(this._upperAbbrMonths,
            this._toUpper(value));
};

That fixes the bug. The interesting this is that this bug is “fixed” according to MS, because the new version of the library produced in .NET 3.5 has it fixed. Of course, if you’re stuck in .NET 2.0, you’re SOL.

links for 2008-02-13

links for 2008-02-10