The Daily Parker

Politics, Weather, Photography, and the Dog

Infinite cover recursion

Via Sullivan, Gotye has assembled a "YouTube orchestra" of people covering his song "Somebody That I Used To Know:"

Says Mashable's Neha Prakash:

Looks like even Gotye knows his song, “Somebody That I Used to Know,” is an overplayed, viral sensation that has spawned an entire genre of YouTube covers. So the singer decided to acknowledge the hundreds of piano-playing, harp-plucking, and guitar-strumming fans who paid tribute to the catchy tune.

Gotye explained: "All audio and video in Somebodies is from the YouTube user videos featured, each of them a cover or parody of Somebody That I Used To Know. No extra sounds were added to the mix, but I used some EQ, filtering, pitch-shifting and time-stretching to make the music.

"

Very cool.

Update: Gotye listed all the covers he used on his blog.

ENSO pattern suggests another mild winter

The WGN Weather Blog reported this weekend that the El Niño-Southern Oscillation has turned warm in the past couple of months, and is getting warmer. The Climate Prediction Center started noticing in July:

Nearly all of the dynamical models favor the onset of El Niño beginning in July - September 2012 (Fig. 6). As in previous months, several statistical models predict ENSO-neutral conditions through the remainder of the year, but the average statistical forecast of Niño-3.4 increased compared to last month. Supported by model forecasts and the continued warmth across the Pacific Ocean, there is increased confidence for a weak-to-moderate El Niño during the Northern Hemisphere fall and winter 2012-13. El Niño conditions are likely to develop during August or September 2012 (see CPC/IRI consensus forecast).

Normally, warm winters lead to warm summers in Chicago, with the pattern resetting in late Autumn. That is, even this record-breaking summer could be followed by a bone-chilling winter. But El Niño years tend to give Chicago warm, dry winters. I'm all for mild winters—except that mild winters tend to cause warm summers, which I am not in favor of.

At least autumn should be lovely here.

Cooled off. Finally.

I got back home last night after spending a week in cool, California coastal weather. Apparently I brought some of it with me:

The return of sunshine this weekend is to send temperatures higher. It's a change which will be noticed given the fact it follows the first back to back below-normal days in over 6 weeks. Saturday's predicted 26°C high represents a 3°C increase from Friday's 24°C reading—and Sunday's 29°C tacks another 2°C on the day's peak reading.

But, while warm and eminently comfortable, the readings predicted Saturday and Sunday are the lowest of any weekend since June 2-3—10 weeks ago!

Yes, we're having the coolest weather in 10 weeks. I opened my windows when I got home, and I will likely keep them open through tomorrow afternoon, which would be the first time since early June I've kept them open for a full day.

It will get warmer this week, unfortunately, but after the warmest July in U.S. history we have to expect a warm August, September, and October.

Today, though, I'm really enjoying the weather.

Crystallizing the class wars

Via Robert Wright, National Journal's Jim Tankersley thinks choosing Ryan makes this a contest for the middle class against the poor:

Poor and middle-class workers tolerate fewer attacks on the rich in America than in other developed nations; most of them still believe that if they work hard enough, they’ve got a shot to get rich, too. Still, it’s tough to win a class war squarely on the side of the wealthy. Aspirational voters don’t like the possibility that government policy is rigged to help the rich get richer and keep the middle class from getting ahead. That’s where Obama’s attacks have connected.

That’s also why putting Ryan on the ticket is a chance for Romney to turn the class attacks back on Obama, reframing the election as a choice between a challenger who wants to boost the middle class and a president who wants to funnel hard-earned middle-class tax dollars to the poor.

I disagree. I think it underlines how the election is a choice between the strong preying on the weak vs. reducing the gap between the two in the first place. Paul Ryan is a radical right-winger, who truly believes that everyone should live and die by their own abilities. The Democratic Party, on the other hand, thinks government should provide some assistance, to everyone (by providing infrastructure, policing, education, etc.) and to the needy (through national health care, food assistance, etc.).

Paul Ryan doesn't want to help you, unless you're already well-off.

James Fallows, for his part, doesn't think Ryan is a "serious" candidate:

I mentioned earlier that if asked to choose an adjective to describe the budget plan presented by Rep. Paul Ryan, I would suggest "partisan" or "gimmicky," as opposed to "serious" or "brave." Most budget proposals are both partisan and gimmicky, so this is no particular knock against Rep. Ryan. But it's worth mentioning because so much of the pundit-sphere (excluding the Atlantic's Derek Thompson) has received the plan as a dramatic step forward in clear thinking about our fiscal future.

This will be a long 86 days to the election...

Park 23: Padres 2-0 over Cubs

The 30-Park Geas took me to Petco Park last night, where the 4th-place Padres beat the 4th-place Cubs:

I thought the park was OK. Like some of the other 21st-century parks, it seemed to lack character. It felt more corporate than, say, Camden Yards or even AT&T Park. The fans seemed to agree, as only about 27,000 showed up (out of a capacity of over 42,000.

But the lack of demand for seats let me get an 8th-row field box for under $80. And that, in turn, let me get photos like this one of Alfonso Soriano stealing 3rd:

Or this one of Travis Wood pitching:

I'm now up the coast, at my folks' house. More photos tomorrow.

Coronado, Calif.

I'm in San Diego for tonight's Cubs game. Both teams are near the bottom of their divisions, and both have had solid losing streaks lately, so this should be a fascinating game.

While here, I took the advice of one of my oldest-surviving friends—really, she'd inflict violence if I said how long we've known each other—and went over to Coronado for lunch at Alexander's Pizza. Good advice; it was one of the best slices of pie I've had in years.

Coming back, I couldn't help notice this passing by:

That is littorally huge an amphibious transport dock, the USS Green Bay, designed to carry a battalion of 800 marines hither and yon. Apparently it's heading home, to Naval Base San Diego.

Why you should always "sleep on it"

If one of the developers on one of my teams had done this, I would have (a) told him to get some sleep and (b) mocked him for at least a week afterwards.

Saturday night I spent four hours trying to figure out why something that worked perfectly in my local Azure emulator failed with a cryptic "One of the request inputs is out of range" message in the Cloud. I even posted to StackOverflow for help.

This morning, I spent about 90 minutes building a sample Cloud application up from scratch, adding one component at a time until I got to the same failure. And, eventually, I got to the same failure. Then I stepped through the code to figure out

And I immediately saw why.

The problem turned out to be this: I have two settings:

    <?xml version="1.0" encoding="utf-8"?>
    <ServiceDefinition name="Cloud" ...>
      <WebRole name="WebRole" vmsize="Small">
        <ConfigurationSettings>
          <Setting name="MessagesConfigurationBlobName" />
          <Setting name="MessagesConfigurationBlobContainerName" />
        </ConfigurationSettings>
      </WebRole>
    </ServiceDefinition>

Here's the local (emulator) configuration file:

    <?xml version="1.0" encoding="utf-8"?>
    <ServiceConfiguration ...>
      <Role name="WebRole">
        <ConfigurationSettings>
          <Setting name="MessagesConfigurationBlobName" value="LocalMessageConfig.xml"/>
          <Setting name="MessagesConfigurationBlobContainerName" value="containername"/>
        </ConfigurationSettings>
      </Role >
    </ServiceConfiguration>

Here's the Cloud file:

    <?xml version="1.0" encoding="utf-8"?>
    <ServiceConfiguration ...>
      <Role name="WebRole">
        <ConfigurationSettings>
          <Setting name="MessagesConfigurationBlobName" value="containername" />
          <Setting name="MessagesConfigurationBlobContainerName" value="CloudMessageConfig.xml"/>
        </ConfigurationSettings>
      </Role >
    </ServiceConfiguration>

I will now have a good cry and adjust my time tracking (at 3am Saturday) from "Emergency client work" to "Developer PEBCAK".

The moral of the story is, when identical code fails in one environment and succeeds in another, don't just compare the environments, compare *everything that could be different in your own code* between the environments.

Oh, and don't try to deploy software at 3am. Ever.

How to lose sleep one build at a time

While trying to move a customer's app into the cloud yesterday (and well into this morning), I encountered a problem that doesn't make any sense. I now very much want to find the guys who wrote Microsoft Azure's error handling and punch them in their faces.

When you access an Azure storage container, you have to use only lower-case letters, or Azure will throw a StorageClientException with the thoroughly unhelpful message "One of the request inputs is out of range." So, in all the code I've written that uses Azure storage, it makes sure everything that needs to be lower-case is actually lower-case.

So why am I getting the exception now? No one seems to know.

Worse, the exception only happens in actual deployments, not in the Azure emulator (which you use to test your code on your own computer).

I hope to have this figured out soon. Because I'd really like to get some sleep.