Matt's Blog: while { coding }
    Back to Matt's Homepage   |   Hire Matt

Stockton Syndrome

I don’t know about you, but lately I’ve been seeing lots of ads for conferences here and there. I just missed PyCon ‘08 in Chicago. I’ll probably miss WWDC in SF this summer. And the odds of me making it to another OOPSLA are slim to none these days. Still, I try to be optimistic about such things. From time to time a conference will catch my eye and I’ll give some thought to attending. And so I saw a blurb the other day for the eBay Developers Conference in Chicago this June.

Not being big on flying, I headed over to Amtrak to see how many arms and/or legs they wanted for a ticket.

For the most part I have no real problems with Amtrak. They are running an under-appreciated and underfunded service in an almost non-existent market on tracks they don’t own and have no control over. Many people I’ve talked with over the years say they long for a European-style rail system where train travel is widely available, simple, and popular. Amtrak will never be any of these things, sadly. There’s just too much that needs fixing. But I digress.

Amtrak has a decent website with features and functionality that have steadily improved over time. Like any other travel-industry website there is a small learning curve, but for the most part it is easy and pleasant. That pleasantness even extends to the check-in procedure at the station. If you order your ticket online you can pick it up from a simple automated kiosk that will print out a neat little ticket that is a classic example of how forms should be designed. With it’s classic 50’s styling you’ll feel like Cary Grant in North by Northwest. Bring your own Eva Marie Saint.

Amtrak Station, Salem OR

Don’t be fooled though. The website, the modern kiosk, and the wonderful ticket design all hide a secret that you probably already know: Amtrak is fucking insane. Like ‘Kramer doing stand-up at the Apollo’ insane. Like Cameron Diaz in Vanilla Sky insane. I think you get my point.

Still, the train is the train. Biggest thing I like about the train? It will never, at any point, fly at 30,000 feet. Call me crazy, but I’ve got a thing about sitting in a fuel-filled aluminum tube 6 miles in the sky. I’m sure it’s just me. Whatever.

So I went on the Amtrak site, punched in PDX to CHI, selected June something-or-other for the dates, and presto, here’s what they gave me:

Amtrak Schedule

Do you see what I see?

In case you can’t read their time table, this lists four possible trips that I could take to get to Chicago. So far, so good. The first trip looks best: Portland to Chicago, straight through. No muss, no fuss; $245.

The next two are a little more complicated. I can take the train to either Seattle or Spokane. Then I get to dick around for a while before catching a connecting train to Chicago. No savings to be had here. In fact one is mysteriously $26 more.

And then comes my favorite, trip #4. It’s a chance to save $25! For clarity I’ll describe the itinerary:

  • I take the train from Portland to Sacramento.
  • I take a bus from Sacramento to Stockton.
  • I take another train from Stockton to Bakersfield.
  • I take the bus from Bakersfield to LA.
  • I take a final train from LA to Chicago. (Assuming I made my connection in LA. Trust me, I wouldn’t.)

So to sum up, I take trains and buses 1000 miles south, then I take a train 2000 miles northeast. Eventually this gets me 2100 miles east of where I started. Just like Pythagoras said, right?

Here’s the stats:

  • Total distance: roughly 3000 miles
  • Total time: approximately 66 hours
  • Total savings: $25 (No, not priceless. Sorry.)

Why the hell would Amtrak even suggest something this inane?

Clearly they are taking the Traveling Salesman problem way too far. Actually, I take that back. I have no idea what they are doing algorithmically over there. The real problem – from a user standpoint anyway – is that they aren’t filtering well.

There are very few parameters to this problem: My needs are simple and specific; their abilities are limited and finite. As far as I’m concerned, there should be no more than three possible trips presented when the parameters are so few. Why three? Because there are only three factors at stake that either customers or Amtrak care about. What are they?

  1. Price
  2. Time
  3. Quality

Notice I say “no more than” three trips. In this particular case there should only have been two shown to me. Let’s work through it:

Right away we see that Trip #1 is priced lower than Trip #2. Notice that Trip #2 takes almost 4 hours longer. And it has a connection. Connections equal risk, and risk equals lower quality. So Trip #2 is out.

Trips #1 and #3 are the same price, but Trip #3 shaves about an hour off the travel time. The quality is lower because there’s a connection, but it is only one connection and it is train-to-train. I’d keep this in the list. You never know who wants to save that hour.

Finally, Trip #4 is cheaper than any of the other trips, but it is over 20 hours longer!! If that isn’t enough of a reason to shit-can it, there are four connections, alternating between trains and buses. Throw in a plane and some pillows and you’d have a John Candy movie.

Wait.

Those aren’t pillows!