Skip to main content

Building an optimal phone tree

I am yet to meet someone that enjoys the prospect of calling an automated customer support number to complete a transaction. Fortunately many such tasks can now be completed on the web and that mode of interaction, while not always perfect, is generally a lot more efficient. There's much more bandwidth in the form of a screen to share information and the interaction model is much richer with keyboard/mouse over touchtone keys.

However, every once in a while a support website dead-ends with 'for more information call 1-866-555-1322' and there's nowhere else to go. What follows puzzles me without fail. Never have I wanted to call to get a reprint of my last statement or change my mailing address. My tasks  seem to end up under the menu 8, submenu 6, choice 9 section, deep down in the tree.

Who is the tree structure being optimized for? I'd like to believe the answer is 'the majority of callers but not me' such that the average caller is faced with the least hassle in navigation. That would be aiming towards optimal which is good. But I wonder if they're really measured and arranged in that way at all. I suspect most trees are built via construction - either by primary tasks, or by departments (these boundaries shouldn't show to customers) or by the time the capability was added to the phone tree (yikes!). Perhaps an ideal phone tree would actually constantly adjust based on tasks and demand so that the 'please listen carefully because our options have recently changed' message actually meant something.

Alas, the best predictor of a good customer support phone call still seems to be an immediate answer by a real person who can relate to service they're representing.

• −    − •    − • •    − • − −     − − −    • −    • − •    • − • •    •    − • − −
• −    − •    − • •    − • − −     − − −    • −    • − •    • − • •    •    − • − −

Simple PivotTables in PowerShell

Quick script for PivotTable-like functionality in PowerShell. I find myself using this a lot.

[sourcecode language="powershell"]

Rotates a vertical set similar to an Excel PivotTable

Given $data in the format:

Category Activity Duration

------------ ------------ --------

Management Email 1

Management Slides 4

Project A Email 2

Project A Research 1

Project B Research 3

with $keep = "Category", $rotate = "Activity", $value = "Duration"


Category Email Slides Research

---------- ----- ------ --------

Management 1 4

Project A 2 1

Project B 3

$rotate = "Activity" $keep = "Category" $value = "Duration"

$pivots = $data | select -unique $rotate | foreach { $_.Activity}

$data | group $keep | foreach { $group = $.Group $row = new-object psobject $row | add-member NoteProperty $keep $.Name foreach ($pivot in $pivots) { $row | add-member NoteProperty $pivot ($group | where { $_.$rotate -eq $pivot } | measure -sum $value).Sum } $row } [/sourcecode]

• −    − •    − • •    − • − −     − − −    • −    • − •    • − • •    •    − • − −

Collaborative filtering win

Among many other things, sells jewelry. Given the amount of business I've sent their way over the years, it seemed fitting that we'd get my wedding band from Amazon also.

For this particular purchase I was  delighted by the recommendations for other products I might be interested in. For a mens gold wedding band, size 9, the top suggested item is none other than the venerable Linksys WRT54G router.

I am in good company.


• −    − •    − • •    − • − −     − − −    • −    • − •    • − • •    •    − • − −

Symmetric bus route numbers

In building any kind of system or infrastructure, strange things can happen when your designers and engineers aren't representative of your real users: you end up optimizing for the wrong audience.

This problem surfaces in software design all the time. I recently read something to the effect of "Every time you ask a user to make a choice about something they don't care about, you've failed." While the most configurable, flexible application might be an engineers dream, all those configuration dialogs, checkboxes and sliders are not awesome for consumers. It seems many of the innovations in user interface design over the last ten years have been the reduction of such clutter, noise and confusion.

Apparently this pattern surfaces in other fields too. For example, Seattle bus routes are identified by a single number which represents the route in both directions. You have to combine that with the final destination to figure out which one you want. Except that some buses terminate at different points along their route so even that rule doesn't always work. And sometimes you know you need to go in one direction but are unsure which . It's fine once you know how it works but a nightmare for newcomers and tourists.

My guess is that both drivers and route planners think in terms of circular or out-and-back routes which the same drivers traverse every day. Reasonably enough it makes no difference to them which direction they're driving in.

Why not have a 5A and 5B bus that go in different directions along the same path? You can always get back to where you came from by switching the letter.

Bonus point: I started drafting this very post on a bus just minutes before I overheard a rider ask "is there more than one 271 that goes to Issaquah?" to which the driver replied "no there's not, but this one's heading to Seattle."

• −    − •    − • •    − • − −     − − −    • −    • − •    • − • •    •    − • − −

Sounders FC beat FC Dallas

A couple of years ago Seattle added another professional sports team to its list - Seattle Sounders FC an expansion team in Major League Soccer (MLS). The last serious soccer match I saw was Manchester United playing Chelsea in a summer game in Qwest Field several years ago and before that it must have been Stoke City in Britannia Stadium a long time before. Suffice it to say, it has been a very long time since I'd enjoyed a proper football game.

It was a cool, clear and dry night and the lights of the stadium beckoned.


I was impressed by the level of crowd engagement (quite different from the previous soccer game at the same venue). Singing, chanting, horns, drums and rowdiness behind the goal; just like England. There are still a few subtle differences, however.


The whole lower level of Qwest Field was filled, a record mid-season attendance of more than 33,000 people. Good to see such a level of interest and support.


It was a good game and all the more enjoyable to see the Sounders win 2-1.

Sounders game set on Flickr.

• −    − •    − • •    − • − −     − − −    • −    • − •    • − • •    •    − • − −

Halloween ideas

Might take a bit longer than a week to build this one. Next year!


• −    − •    − • •    − • − −     − − −    • −    • − •    • − • •    •    − • − −

The Oakleys go to California

Last Sunday, Amy's parents hosted a post-wedding reception for us in California. Marking the end of what has been almost a year of celebration, we had a great time and I had the chance to put a lot of familiar names to actual faces.

Eve, everyone's favorite Food Network star, did a fabulous job with the cake and posted some pictures on her site at Eve Samonsky. Jen made a small photo gallery too.

We flew back early on Monday morning, precisely one year after I asked the question. It has been a whirlwind of a year but I wouldn't have given it up for anything.

• −    − •    − • •    − • − −     − − −    • −    • − •    • − • •    •    − • − −

Favorite apps du jour

There are a few apps and websites I'm really enjoying at the moment.

  • Skype. Video chat is high quality and 'just works' even to far corners of the world. Brings remote friends and family closer together.
  • Foursquare. Strangely addictive about-town game where you 'check in' to report where you are.
  • Tinychat. This is how video conferencing and collaboration should be. Not hugely sophisticated but easy to set up and works.
  • Yelp. The critical mass is there and the bulk of reviews are good quality. Angie's List was handy for a year but is going to have a hard time competing over the long run.
  • RescueTime. Still in my two-week trial but I love the idea of passively collecting information about activity. This particular tool consists of an installed app that tracks where you're spending screen time (along with offline activities like meetings and phone calls) and a web-based reporting dashboard.
  • Mint. Once you swallow the whole 'trust your bank credentials to someone else thing', this website and iPhone app make tracking money really easy.
  • Tweetree, SimplyTweet, TweetDeck. Twitter clients of choice depending on form factor.
Still on the look out for a good massive-dataset visualization toolkit.
• −    − •    − • •    − • − −     − − −    • −    • − •    • − • •    •    − • − −

A/B testing content

I enjoyed reading a story about how The Huffington Post A/B tests various different headlines in real time.

The use of A/B testing is widespread among high traffic internet sites and can often provide very useful insight into user behavior patterns and, in aggregate, a great picture of what works and what does not. It's not a panacea, however, and the results are rarely black and white, leaving some room for interpretation. Regardless I do like the idea of applying the same technique to content as to presentation and algorithms.

There's a story about how the staff at  radio listening stations in Britain during World War II became able to recognize the foreign radio operators by subtle habits in the rhythm and speed of their Morse code. Presumably writers for a multiple-source publication like HuffPo have their own vocabulary and grammar habits in the wording of their article titles too so it would be fascinating to see whether the increased engagement actually represents a subconscious preference for a particular contributor rather than headline effectiveness itself.