Archive for January, 2007

Religion’s Role in America

Great op-ed piece in yesterday’s Seattle Times/PI Sunday paper: “God Help Us: Religion’s Role in America“.

Often when this sort of opinion piece shows up, I read through it and can quickly sense the bias (either toward or against religion)… a bias that tends to undermine the message. But I was impressed in this piece to sense a very well rounded perspective on what’s wrong (and what’s right) about religion in this country, and what we should, nee MUST, do about it.

Having recently finished the “Reading Lolita in Tehran” book, I was particularly interested to read the section on Turkey. One of the key messages of the Tehran book was that the oppressive regime had mandated certain behavior in the name of religion — in my opinion, quite undermining the actual practice of religious faith.

But the brief discussion of Istanbul, Turkey in the op-ed piece was used as a demonstration of how a society containing people of varying religious belief can get along nicely — allowing the very observant to be very observant, while allow the less observant or non-religious to be less observant or non-religious, respectively.

Comments off

Stattraq 1.1.1 and Evan’s fixes

While upgrading to WordPress 2.1 I did a periodic spin through my plugins to get the latest and greatest updates. I noticed that Stattraq 1.0b was no longer the latest update — in fact, there’s a new maintainer: “Murph” and he’s released a version 1.1.1 with a number of fixes.

Unfortunately, I had made a bunch of tweaks to 1.0b over the year I was running it. Bug fixes, performance improvements, anti-referrer-spam stuff. Mostly stuff I hacked together myself or picked up from other blog comments while I was troubleshooting some problem.

The good news is that windiff showed me that a number of these fixes were included in 1.1.1. The bad news is that windiff showed me that a number of these fixes were NOT included in 1.1.1

So I made the fixes again to my copy of stattraq.php. And then I tried to post the details back to Murph’s blog so that they could hopefully get integrated going forward. But the blog comment posting stripped all the meta data out and undoubtedly makes the changes hard to follow.

So, here (below) is what my blog post was supposed to look like. Also, here’s a link to my modified stattraq.php file in case you want to use it and/or DIFF it with your own changes.

The intended comment:

Couple of things I had fixed in my copy of 1.0b that are “rebroken” in the 1.1.1 release. Please consider integrating these so I can just run the baseline going forward:

1) Blogs using pretty permalinks (ie – not “?p=64” style) don’t properly break page views out into the list of pages; everything shows up as “multiple pages”. This is because it’s not able to resolve the page view back to the actual page.

Changes:
$s_id = session_id();
<! // **EVAN – Move $urlRequested up to here (need it before you can get the article ID) and fix it to be the right value
<! $urlRequested = $_SERVER[‘PHP_SELF’] . $_SERVER[‘REQUEST_URI’] ;
<! // ** EVAN – End of $urlRequested change (except for commenting the original out below)
<!
// need to get the real article_id or type of server request (RSS, RDF, ATOM, Ping, etc)

and

$ipAddress = statTraqGetIPAddress();
<! // $urlRequested = $_SERVER[‘PHP_SELF’] . (isset($_SERVER[‘QUERY_STRING’]) ? “?”.$_SERVER[‘QUERY_STRING’] : ” );
!> $urlRequested = $_SERVER[‘PHP_SELF’] . (isset($_SERVER[‘QUERY_STRING’]) ? “?”.$_SERVER[‘QUERY_STRING’] : ” );
$browser = statTraqGetBrowser();

2) Make sure favicon.ico is excluded from tracking also. Also, change the insert style to “DELAYED” to improve performance.

Changes:
}
<! // **EVAN – also exclude favicon.ico
<! if (strstr($urlRequested, “favicon.ico”))
<! $isIgnored = true;
<! // **EVAN – end favicon.ico change
<!
if (!strstr($_SERVER[‘PHP_SELF’], ‘wp-admin’) && !strstr($_SERVER[‘PHP_SELF’], ‘wp-stattraq’) && !$isIgnored)
<! // **EVAN – make the “insert” a “Delayed” insert for performance
<! $wpdb->query(“INSERT DELAYED INTO $tablestattraq (session_id, access_time, ip_address, url, article_id, referrer, user_agent, browser, user_agent_type, search_phrase) values (‘”.$s_id.”‘, NOW(), ‘$ipAddress’,’$urlRequested’, ‘$article_id’, $referrer,’$userAgent’,’$browser’, $browser_type, ” . ($search_phrase==null?”NULL” : “‘$search_phrase'”) . “)”);
!> $wpdb->query(“INSERT INTO $tablestattraq (session_id, access_time, ip_address, url, article_id, referrer, user_agent, browser, user_agent_type, search_phrase) values (‘”.$s_id.”‘, NOW(), ‘$ipAddress’,’$urlRequested’, ‘$article_id’, $referrer,’$userAgent’,’$browser’, $browser_type, ” . ($search_phrase==null?”NULL” : “‘$search_phrase'”) . “)”);
$wpdb->show_errors();

3) Added in some additional referrer parsing plus antispam protection against some spam referrer strings

Changes:
$key = “q”
<! // **EVAN – added a few more search engines to parse for
<! }else if(strpos($referrer, “icerocket.”)!== false || strpos($referrer, “search.blogger”) !== false){
<! $key = “q”
<! }else if(strpos($referrer, “blogsearchengine.”)!== false){
<! $key = “p”
}else if(strpos($referrer, “yahoo.”)!== false){
$key = “p”
}else if(strpos($referrer, “aol.”) !== false || strpos($referrer, “netscape.”) !== false){
$key = “query”
}
<! // **EVAN – Antispam for search queries
<! else if(
<! strpos($referrer, “bingo”) !== false ||
<! strpos($referrer, “backgammon”) !== false ||
<! strpos($referrer, “casino”) !== false ||
<! strpos($referrer, “oyun”) !== false
<! )
<! {
<! return null;
<! }
<! // ** EVAN – end Antispam for search queries
if($s != null && $s != ”){return $s;}

Comments (8)

Montlake Transfers, the 48, and the 545

Bus Chick Carla (who, incidentally, evidently only lives a few blocks away from me and often rides the same series of buses) posted a blog post that is 1/2 of a post I’d been meaning to put up for some time: http://blog.seattlepi.nwsource.com/buschick/archives/110849.asp

In this post, she points out the insanity that is the process of getting from the 520 westbound “flyer” stop when exiting the ST545 bus and up (and across) to the southbound “island” stop where the 43 and 48 buses stop. This particular exercise is typically the most frustrating part of my day, and it leads to some of the problems I’ve previously observed here and here.

Short version of her post: it’s like running an obstacle course to get from the flyer stop to the island stop. You have to go up a long (ramp) hill, south a block, and then cross ALL-THREE-SIDES of an intersection (squaring it off) or go down the set of stairs and under Montlake to “cross” the street. I’ve discovered that even at a fast sprint up the hill (presuming I am unable to “dart”, dangerously, through stopped traffic on Montlake), it will take nearly 5 minutes to get from the 520 stop to the 48 pickup. Just awful.

And it leads into the 2nd half of the post I had intended to make: timing.

Given how random the bus arrivals are (traffic, number of stops requested, etc) I can’t even imagine how they make it happen, but inevitably as I watch mybus from my phone while stuck in 520 traffic I know that I’m just going to miss the 48. Barely. And quite often because of the horrible walk/run up and across the street that takes so long.

What’s a typical scenario? Well, I gauge it takes (best case) about 12 minutes from the time the 545 leaves Evergreen Point until I can be standing at the Island. This works okay if there’s no slow/stopped traffic on the 520 bridge or at Montlake, and it also assumes I can get up and over the street in my 5 min estimate.

The “inevitable” bit is that — with 12 minutes left before I get there — there is seemingly always one southbound 48 bus (let’s say to Columbia City) estimated to be at the island in about 5-7 minutes. No way I’ll make that one, of course. And then there’s another one 5-10 minutes behind (say, destined to Rainier/Walden or Rainier Beach)… now that’s one I ought to be able to get to, albeit just barely and perhaps by sprinting for it. And, each day, I say to myself “it’s a good thing there’s one coming 1-3 minutes after I’ll get there… won’t that be handy” because I notice that the next one (another Columbia City bus, perhaps) is running way behind and it’s now 20-30 minutes behind the 2nd bus in the pack.

Here’s where it breaks down. Over the course of that last 7 minutes on the bus, the first bus loses 2-3 minutes. Somehow. Every single day. So it ends up arriving just 2-3 minutes ahead of my 545. Still no way I can make it. But since the first bus is running further and further behind, it’s having to pick up more and more people who have collected during the long window with no bus; and the 2nd bus — with hardly anyone waiting to be picked up — ends up just right behind it (I’ve blogged about this frustrating bus-drafting technique before).

Yes, that’s correct: during that 7 minute travel across 520, my situation has changed from “1 bus a few minutes before me and 1 bus a few minutes after me” to the far less pleasant “both buses left (or are leaving) the island as the 545 pulls up to the montlake flyer stop” combined with “… and the next bus isn’t coming for 20-30 minutes”.

I don’t have a good solution. But I’m increasingly tempted to follow Carla’s example on days when it’s obvious I’ll just be standing around Montlake for a while and just ride the 545 all the way to downtown and work my way back home from there. It shouldn’t be this hard.

Metro, are you listening? I’m a dedicated bus rider and this is driving me nuts!

Comments off

Ski Trip and Sculpture Park

You might think I was actually around last week, what with the regular posts to the blog. Thank technology! I posted those before we left for a week’s vacation. Here are the details:

Ski Trip to Whistler

January 15-19: Jodi and I (plus MIL and Tim) headed up to Whistler, British Columbia for a few days of skiing on the mountain. On the way we drove through Vancouver – my first trip “to” this city. We then skiied 3 days in fantastic weather, including my trip from “Peak to Creek” during the whiteout conditions on the 3rd day! Many of these photos came from Jodi’s camera.

Sculpture Park Opening

January 20: Jodi and I went down to the new Seattle Art Museum (SAM) Olympic Sculpture Park for the opening weekend. Weather was fantastic, so it was CROWDED. Very cool park though!

Comments off

No, the Hawkins do not live here

Anyone who gets a new phone number takes the risk of instead “getting someone else’s old phone number”. It’s a bit of a pain for the few weeks it takes for folks who are used to calling the number’s previous owner to get used to calling the new number.

But what do you do when the former owners had the number for 50 years. And are evidently still handing it out, two years after they got rid of it? Well, it seems there’s not too much you CAN do about it. We still get their calls, two years after we got their (out of service) number. We still get calls from creditors – ok, nobody really tells creditors you’re trying to avoid when you change your number. We still get calls from random people – this too is reasonable, maybe they’ve fallen out of touch over years and just don’t realize the number is outdated.

What’s totally strange is when we still¬†get calls from close family and friends of the former owners. That said, it’s only slightly less strange when these same family and friends insist they have the right number and call back once, twice, three times or more over a few days.

Our answering machine message clearly states who we are (and more importantly, who we are NOT) but it only stops some of the callers. Recently it’s let up a bit, but for many months it was not unusual to get messages where the callers — immediately after they’ve clearly ignored the outgoing message from voices they would not have recognized, insisting that there no sense in leaving any message for the former owners — leaving a message asking the former owners to give them a call (by name, no number).

Perhaps the funniest one was the astonished message we received from our dentist office — calling, in fact, for the former owners… evidently longtime patients and still an active account. We had a good laugh about how strange it must have been to get us when looking for them, almost like a misdial if not for the clear connection expressed in the outgoing message.

Oh well. Sooner or later it’ll fall off now that it’s our number. Hopefully 2 years in we’re closer to “sooner” than “later”.

Comments off

Running to The Smiths

Lately Jodi and I have been trying to exercise fairly regularly in our condominium fitness room. We’ve been getting up a bit earlier a couple days a week and heading down for 30 mins or so of aerobic workout — me on the treadmill (ugh, she won’t let me do the stationary bike) and Jodi on the elliptical trainer.

But what’s actually helped to make running a couple of miles quite tolerable has been “The Smiths“. I’d never been much of a “listening to music when I exercise” type. In fact, historically I’ve always listened to my audio books while exercising.

Unfortunately, my Zune isn’t supported yet by Audible, so I’m constrained to only my sync’d music or the radio. I can assure you there’s not a lot on the radio at 6am, so I decided to hit the music.

The first day we we tried this exercise routine, I was strangely in the mood to listen to “The Smiths” and I ran 30 minutes to the first half of “Louder Than Bombs”. By our second day, I decided I wanted more of the same. And so it’s been each time we’ve exercised.

Maybe it seems perfectly reasonable to you that someone should exercise to The Smiths, but is seems pretty strange to me. Much like exercising to The Cure, there’s just a sense about their music style that makes me think of “depression”. I actually quite expected that I’d be unable to properly run to The Smiths and might even be running so slow as to not even work up a sweat. I had clearly forgotten how energetic the “depressed” music of Morrissey actually is!!

In fact, as I clenched my mouth shut to keep from belting out lyrics at the top of my lungs, I found myself cranking up the speed on the treadmill to “keep up” with the beat. Some of those songs are as fast as any 160bpm dance track!

And, most importantly, the half-hour of otherwise arduous running went by before I knew it. I felt refreshed, energized, and a bit like whistling my favorite songs.

Comments off

We’re Having a Baby

As alluded to in the last post – We’re Having a Baby! We’re now pretty well underway and Jodi is starting to show significantly enough that it’s time to announce it broadly. ETA is mid-summer, hopefully in enough time that we can bring along our new addition when we go to Wisconsin for Martha and Adam’s wedding in August. We’ll see.

Here’s our most recent ultrasound picture from a couple weeks ago:

Sweet. Cutest 12 week ultrasound EVER. And so it begins. ūüôā

Comments (2)

Ending my year in books

You might have noticed that I haven’t posted my final book-details from 2006. Well, this is because I decided to finish out the several books I was in the process of reading at the end of the year, and then post a roll-up review to close out the year.

So, first, the year’s summary. Including these last couple, this past year I “read” (either in paper form or from Audible.com)¬† 34 books. Not too shabby. No idea how many pages it was, if for no more significant reason than many of them were audio books, so I couldn’t figure it out without looking them all up online. Yuck.

Without further delay, the books I finished out 2006 with:

158 Pound Marriage by John Irving – this is an older book by my longtime favorite author, and one I had not previously read. If you know anything about Irving you can probably guess, at least roughly,¬†the main themes. You’d be right. The book includes wrestling, Vienna, and some strange sexuality. Predictable, sure… but it was still quite an interesting book. The main character/narrator of the book is positioned, loosely, as a strong character — at least the equal of the other participants in the sexual intrigue. But as the book progresses, you find that this character is weak and pathetic. At least that’s what I got from it. I was saddened to reach the ending and realize that this character has ended up losing just about everything, and while the other participants were all also miserable, they at least had some control over their situation. It was clear from the beginning that it wouldn’t end well (when does it ever in an Irving novel!) but I didn’t foresee quite the ending that arrived.

Lolita by Vladimir Nabakov – here’s a book I probably should have read in high school or college, but never did. I had seen the movie remake from a few years ago with Jeremy Irons, so the basic story was not unfamiliar. What really hit me in reading the book was two unexpected things: 1) the story was not particularly titillating; at least not nearly as much as you’d expect given the controversial subject matter and 2) once again, the main character/narrator was a sad and pathetic individual. HH portrays himself in his writing as a super intelligent and capable individual, but it’s clear (and develops into more and more clarity throughout the novel) that he has limited self-control and his weakness for “Lo” overwhelms his civility to the point where he is incapable of interaction with the real world or allowing himself to acknowledge the inappropriateness of his action. I was also surprised (I forget, maybe this was in the movie too although it didn’t stick with me if so) that he was in prison for murder rather than for the sexual crimes. I sort of expected throughout the book that he would eventually go too far somehow and get caught, and it was a little disappointing that given how many people knew what was happening, nothing came of it until he killed someone.

Reading Lolita in Tehran by¬†Azar Nafisi¬†– I actually read Lolita in preparation for reading this book, so¬†it was a little disappointing to me that the book had so very little to do with Lolita. In fact, it probably should have been called “Reading Gatsby in Tehran” or maybe even “Reading a bunch of¬†Henry¬†James books in Tehran” since so much more time was spent on these books than on Lolita. But I suppose¬†it’s a more interesting sounding title, so I can’t really blame the author.¬†In any case, it was primarily a recounting of the time in the late 70s and throughout the 80s when it became oppressive to teach any of the great literature — any¬†ideas considered western or subversive¬†— in Iran. Iran is an interesting country, and it’s (here comes the ethnocentricity) sad that they’ve made some of the decisions that they have over the last 30 years. What was once a progressive country with a great future has been reduced to a religious totalitarianism marked by an inability to openly approach learning or question authority. There’s such a great history in that country to be proud of, and each day that goes by with a situation like this book describes is a tragedy.

The Everything Father to Be book by Kevin Nelson – Hmm. Why would I be reading a book about becoming a father? Don’t be so dense. Of course it’s because we’re expecting. And realistically, if you’re reading this blog… you probably already know that. But if you don’t and you’re one of my friends or family, then I apologize for not telling you directly. And Surprise! ūüôā

Comments (1)

ST2 Draft Package

On the 11th, Sound Transit announced the details of the ST2 “draft package” to the world. This fills in some of the proposed details for the ST2 plan that have been – to this point – fairly fluid and uncertain.

Exciting to see the proposal includes rail to Overlake Transit Center via Bellevue (as opposed to some of the earlier possibilities that ended in Bellevue, for instance). This is good news, although it can’t come soon enough — see my “we need rail” tirade from a few days ago.

Comments off

We so desperately need rail transit here in Seattle

Yesterday and today were proof positive that we desperately need rail transit in Seattle.

Last night, right at rush-hour we got dumped on out in Redmond — first some hail (to form a nice, slippery base) and then a couple of inches of snow that stuck firmly to the slushy hail. End result, hundreds of abandoned cars already stuck all over the roads by the time I left at 7pm.

Now, that’s unavoidable. Some folks will drive their cars and firmly believe that they can make it up (or down!) even the steepest icy hills without chains. I’m willing ot accept that some people are just foolish.

So what’s not unavoidable? How would rail have helped? Well… all those drivers who abandoned their cars combined with all of the folks who were already planning to use transit and converged on the buses. Buses that were idling at Overlake for hours. HOURS. Presumably because they were waiting for someone to bring them chains (which begs the question why we don’t keep chains WITH the bus, or at the very least in the transit center facility).

But even after these buses got chained up, they were going to be entering the parking lot that was 520.

Short version – there was ABSOLUTELY NO WAY to get home in a reasonable timeframe yesterday. No matter how much planning you did or how smart you were about taking transit, etc… you were out of luck unless you had just stayed home preemptively or were willing to walk home like so many did. That’s just broken.

Rail transit? Well, as evidenced in Denver the other week when they had the massive snowstorm that shut down the whole city, rail transit soldiers through. Masses of people descended on the Amtrak station to get out of Denver when this happened the other week. The same sort of thing would have worked here in Seattle yesterday. I — and THOUSANDS OF OTHERS who either had gotten their cars stuck or who simply decided to leave their cars parked safely in the parking garage at work — could have walked to Overlake and jumped right onto a fast, reliable light-rail train back through Bellevue and to Seattle.

Okay, so that’s yesterday’s impact. What about today? Well, this morning as I took Jodi to work at the VA (I drove her because it’s a 10 minute drive and a 60 minute bus trip… with transfers. And yes, I chained up the car) we noticed 23rd Ave was totally blocked right by Sam Smith park. Totally blocked by a jackknifed articulated metro bus. Presumably a 48 bus, based on the location. So even if Jodi had taken the bus today, she probably would have had a bad go at it given this result. Her 60 minute ride would probably have taken 2 hours or something.

How does this point to rail transit? Well, I think the central point of this whole post is that cars/buses/anything-that-runs-on-the-roads is quite liable to getting stuck or at least being significantly negatively impacted by bad weather conditions. Sure, maybe rail can face its own weather problems (here in seattle sometimes mudslides for tracks that are placed in ridiculous places, for instance)… but there have been at least 3-4 days THIS YEAR ALONE where it would have very specifically solved transit problems for MANY THOUSANDS OF PEOPLE coming to/from Redmond MS campus alone. I’m sure it would have been many TENS OF THOUSANDS of people across the region who would have benefited.

And that doesn’t even take the daily commute benefits of rail (overcoming traffic caused by traffic, not by bad weather) into consideration. Grade separated rail that can avoid the terrible HOV lanes on 520. Grade separated rail that can be FASTER and MORE RELIABLE than driving myself to work. I’d take that 5 days/week.

Comments off