The Daily Parker

Politics, Weather, Photography, and the Dog

Tommy Two-Cats (1988-2006)

My dad's oldest cat died Tuesday night. He was 18 1/2.

Here's Tommy in 1997:

He was the sweetest cat ever. Not the brightest (we called him "Forrest") nor the slimmest ("Tommy Two-Cats"), but definitely the sweetest.

Tom is survived by his best friend, Reggie.

The point of terrorism

Bruce Schneier reminds everyone how we can really defeat the terrorists:

The point of terrorism is to cause terror, sometimes to further a political goal and sometimes out of sheer hatred. The people terrorists kill are not the targets; they are collateral damage. And blowing up planes, trains, markets or buses is not the goal; those are just tactics. The real targets of terrorism are the rest of us: the billions of us who are not killed but are terrorized because of the killing. The real point of terrorism is not the act itself, but our reaction to the act.
And we're doing exactly what the terrorists want.
The surest defense against terrorism is to refuse to be terrorized. Our job is to recognize that terrorism is just one of the risks we face, and not a particularly common one at that. And our job is to fight those politicians who use fear as an excuse to take away our liberties and promote security theater that wastes money and doesn't make us any safer.

Best laid plans

I was going to have action shots of my new bike this morning, but I decided to take the bus to my office instead of riding for some reason:

I'll have more on the bike later, including the results of my first real ride on it (whee!), but right now I have to crunch a few million data points. I'm also suffering from the after-effects of a midnight inspiration last night, which (a) led to two hours of coding starting at 1:00 am, and (b) got the total speed of the application up 40%.

What a dumbass

First, I picked up my new bike yesterday. But that's not the subject of this post.

No, the unfortunate real subject of this post is, "I am stupid."

I had to import about 3.5 million data points recently, and now that I'm using the data, I discovered that this quick-and-dirty construct was dirtier than it was quick. See if you can spot the problem:

const string sqlTemplate = 
   "INSERT INTO data_points (foreign_key_id,year_num,payment,cost) VALUES ({0},{1},{2},{3})";

...

foreach (CustomStruct item in someObject.someList.Values)
{
   string sql = string.Format(sqlTemplate, parent.RowId, item.Year, item.Cost, item.Payment);

   ...
}

That is why I am now executing SQL statements that look like this:

ALTER TABLE items ADD swap decimal(10,2)
GO
UPDATE items SET swap = cost
GO
UPDATE items SET cost = payment
GO
etc.

I am now waiting for the SQL to run.

Longest. Bike ride. Ever.

Today I pedaled my butt off, all the way up to Wisconsin:

The total ride was 130 km (80.8 mi). I had intended only to go 120 km (74.5 mi) to prepare for the North Shore Century in four weeks. But, I took a wrong turn somewhere in North Chicago, and lost the Robert McClory Bike Path entirely. That added about 6 km (4 mi) to the trip. Another 4 km (2.5 mi) got added on when I popped a spoke in the middle of nowhere:

Fortunately, Anne was home and directed me to the Zion Cyclery, and they had me back on the path in under 15 minutes:

So, a good ride, and now I know I'm ready for the full Century on September 17th.

The President's Diary

As channeled through American Prospect columnist Julian Sanchez:

August 11: My anger at The New York Times subsides somewhat as I skim Foucault and Sartre. Surveillance serves its disciplinary function only if the populace is conscious of it. And if Americans aren't wrenched from being-pour-soi to being-en-soi (at least in relation to an observer who is Other) by the objectifying gaze of the state—well, then the terrorists have won.

Read more.

Judge takes away our DVR

A Federal judge has ordered Dish Network to disable almost all of its customers' digital video recorders after parent company EchoStar Communications lost a patent-infringement suit brought by TiVo:

Thursday's ruling from U.S. District Judge David Folsom in Marshall, Texas, demands that within 30 days, EchoStar must basically render useless all but 192,708 of the DVR units it has deployed.
The decision comes four months after a jury ruled that EchoStar should pay TiVo $73.9 million because it willfully infringed TiVo patents that allow the digital storage of TV programming.

Crap. This could be inconvenient. All those Lost episodes we've saved could be...um...yeah.

Update, 3:43 pm CDT (20:43 UTC): The Federal Circuit Court of Appeals in Washington has granted a temporary stay of injunction to give Dish Networks time to work something out with TiVo. (I couldn't find the actual order online.) So we get to keep our DVR for the time being.