Monday, June 26, 2006

Poor Design or User Error?

The garage in my gym seems to have banged up structural support beams in all the wrong places.

As I was driving out of the garage tonight, barely avoiding scraping them in my new car, I realized that banged up structural support beams are the perfect metaphor for user error, and banged up parking posts are like examples of flawed workarounds for a flawed design.

Upon first glance at a banged up structural support beam, one thinks, "look at all the idiots who scraped up their cars because they can't drive for shit." But then, one begins to wonder, is it really their fault? If the beams are so scraped up, then maybe they were built too close together?

Auto-Update Or Not?

I just skimmed a great post on flow | state about software that auto-updates itself (or rather, software that does not).

I've been pondering this for quite some time. When Google released Google Talk, I was impressed that they had the balls to roll an auto-update clause into their EULA:

Automatic Updates. The Google Talk Client may communicate with Google's servers to check for available updates to the software, including bug fixes, patches, enhanced functions, missing plug-ins and new versions (collectively, "Updates"). During this process, the Client sends Google a request for the latest version information. By installing Google Talk, you hereby agree to automatically request and receive Updates from Google's servers.

The old me, unix geek and control freak (a subject that deserves and will receive a much longer post at some future time), was ticked off. It's my box, and I'll control what software gets installed when!

The new me, the one who wears the geeks do it in front of windows shirt and blogs in a wysiwyg text form (on my work blog, anyway - heh), was a bit enthused.

The decision to auto-update or not is a fight between three camps:

1. The control freak who wants complete control over his PC. He empties his recycling bin religiously, never auto-saves passwords in his web browser, and can give a rough estimate off the top of his head as to how much available hard disk space is available.

2. The average user. His stress level rises every time he sees a "Toast" in the system tray, or a dialog box like the one in this post. He wants to spend his time using his computer, not administering it.

3. The legal department. These are the people that decided it was a good idea to make Windows users press the PAGEDOWN key 10 times before they could accept the EULA and install previous versions of Windows.

In any event, my own opinion is to go the Google route and auto-update consumer software on consumer PCs, but perhaps respect a global auto-update setting that applies to all software, and is enabled by OEMs by default, but can be disabled by power users and businesses. Additionally, it'd be nice if apps would expose a UI option to disable auto-updating when enabled by default.

That said, forcing upgrades becomes a difficult proposition if the user is given the option to reject the update. Google only needs to support the most recent version of Google Talk, whereas Windows Live Messenger supports a long trail of previous releases.

Interesting food for thought...

Saturday, June 24, 2006

WLLPBVEB Traffic Feature Rules!

I know it's hardly breaking news (the feature launched a few weeks ago), but I've gotta say, I love the traffic feature of Windows Live Local powered by Virtual Earth Beta.

For example, check out my morning commute - complete with driving directions and traffic overlayed.

I still find the WLLPBVEB interface to be quite a bit clunkier and slower than Google Maps, but the traffic feature trumps usability - most of the time (admittedly, sometimes I get frustrated with WLLPBVEB and fall back to the clean, simple Google Maps). The Beta of Yahoo Maps has traffic too, but their interface still has quite a ways to go.

I'm also surprised that neither WLLPBVEB nor Google Maps allow you to modify the route. Mapquest lets you choose a route that avoids highways - but how could would it be to let me click on the portion of the route that goes over one bridge, then drag and drop it onto another bridge, and have the rest of the route update. That's my cool random feature request of the day. :-)

Friday, June 23, 2006

"What do you do?"

Every time I start a new job, I find myself trying to figure out how to best answer the question, "So, what do you do?"

Here's my latest, to the average person who asks:

I design software at Microsoft that helps IT professionals manage their day to day IT operations.

It's concise, digestible and answers a few common questions at the same time:

1. Where do you work? (Microsoft)
2. What is your role? (I design software)
3. What do you work on? (software to help manage day to day IT operations)
4. Who is your customer? (IT professionals)

It's sort of a "pick your poison" question - letting the questioner choose what she wants to ask more about next. What's working at Microsoft like? What do you mean by design software? How does your software help? What kind of day to day operations? Or, sometimes, the questioner just nods quietly, at which point I tell her about all the non-computer stuff I'm interested in too. :-)

Depending on the audience, I might vary the answer from time to time. If I'm talking with someone in the software industry, I might replace "I design software" with my role - "I'm a Program Manager". If I'm talking with someone else who works at Microsoft, I'll replace "Microsoft" with my group, name my product and a few of the other products we ship, and elaborate on some of the scenarios our software enables - anticipating their almost certain follow-up questions.

Depending on the job, I've also varied it quite a bit. When I worked for a small startup, I'd say "a small startup called >Name>". And if the role is generally familiar, it's easy to be even more concise: "I'm a firefighter in <City>."

So, out of curiousity, what do you do? If you took the time to read up to this point, it should only take you about half as long to type an answer in the comments. ;-)

Tuesday, June 13, 2006

New Toy!!

I woke up to a call at 6:30am this morning telling me that my 2001 A4 needed over $1800 worth of servicing to fix a severe oil leak, replace rear brake pads, and resolve a few other issues. Add to that the emissions check + almost $400 Washington registration I was about to renew (thanks all you WA residents who voted for then against the monorail resulting in taxes but no actual monorail), and I was about to sink over $2200 into a 5 year old car with a dented and scratched up body and who knows how many other issues!

So, after mulling it over for about 10 minutes, I realized it was time to bite the bullet and get a new car.

I ended up spending the morning over at University Audi. My service rep, Jennifer, and my Sales guy, Brian, were both really cool, helpful, laidback people. No pressure at all. We chatted about cars, they lent me keys to go test drive on my own for a bit, and then we worked out a great deal - knocking a few grand off MSRP, giving me a fair trade-in value for my old car, and not charging me for any of the service work. I definitely recommend Brian as a sales guy if you're looking for an Audi in the Seattle area.

I've gotta say, negotiating the deal was actually rather fun. I recently took a negotiating class at work, and got to put what I learned to good use.

I went into the situation armed with the following strategies and information:

1. I had the MSRP, average invoice, and average true market value price for the car I wanted. I had a rough estimate of how much they would need to sell the vehicle for to make it worth their while.

2. I knew how much I owed on my old car, how much the repairs would cost if I did not trade it in at that point in time, how much the car would be worth in the future, and the risk of needing future repairs on an out-of-warranty vehicle - information that helped build a BATNA (best alternative to a negotiated agreement).

3. I let them name the first number, asking how much they would knock off the MSRP. I used the data from point #1 to negotiate down from their starting point (we even visited together at one point).

4. I knew the KBB price of my old car and the price that I could sell it for elsewhere (a search of completed auctions on Ebay is a great data point. craigslist is okay too.) I knew all of the points that made my old car desirable - no collisions, no severe damage, records of regular servicing, and most importantly very low miles (less than 9,000 miles/year). I knew they could flip it quickly, and again roughly the price point at which it would be worthwhile. At one point, we looked through their book and the blue book together.

5. Even though they knew they had my car in for service, I held off on discussing anything related to a trade-in until after we talked about the new car pricing. They asked early on, and my answer was simply "Well, that depends on the trade-in deal we end up working out. If we can't work one out that I'm comfortable with, I might look around and see what I could get for it elsewhere, then explore buying my next car at some point after." That said, I knew that if I looked elsewhere, I would probably be stuck paying for at least most of the service/parts fees. But I kept my poker face, and they agreed they would rather make a deal quickly on the spot.

6. I was heavily leaning towards leasing, but didn't mention this until the other numbers were worked out. I got a really great deal on the last Audi I leased, and brought the old paperwork with me as a reference point. Leases can be confusing. Certain numbers, like residual amounts, can be far more important than an interest rate would be for normal financing. I ended up with a great deal on a 3 year lease, writing an ~$600 check to drive the car off the lot, including the first car payment + misc tax/licensing fees. The net increase in monthly payments * number of remaining payments, in moving from old to new car, will be about the amount I would've spent on service and parts today.

7. I did all of this on a weekday, when dealership business is generally slower.

And don't get me wrong. The dealership was happy with the deal too. I think it was what you call a win-win negotiation.

Oh, and the car... the car is a black/black 2006 A4 2.0T with the premium and technology packages (yay Bluetooth!). I absolutely love it!

P.S. Wikipedia has a good starting point page on negotiation. It's quite an interesting subject. There are some references to good negotiation books there too.

Sunday, June 11, 2006

Contextual Spellcheck

From the same team who brought you the red squiggles we all take for granted each and every day, Thierry Fontenelle, a Microsoft computational linguist, has posted a blog entry announcing brand spankin' new blue squiggles!

Blue squiggles are a new spellcheck feature in the new version of Microsoft Office that spots contextual language errors.

Pretty spiffy.

You can learn more about Office 2007 here, and even download a beta copy for free (yes, I conscientiously object to calling it the "2007 Microsoft Office system" for fear of not being taken seriously anymore).

Friday, June 09, 2006

Inventing Market Share

It irks me that Netcraft still uses "number of domain names hosted on windows vs. linux" as a measurement of windows/linux market share. This is largely apparent from their own analysis of their June 2006 survey.

unique domain name != unique web site

Content that constitutes a single site (or service) is often distributed over multiple domains. Case in point:

Similarly, content that constitutes different sites is often hosted on a single domain. Case in point (until sometime later today): MSN Spaces.

And then of course, you have the huge numbers of "parked" domain names, which aren't actually being used for anything, but still impact the market share statistics.

The domains/OS metric should be put to rest, in favor of better metrics involving usage, once and for all.

Later today, MSN Spaces blog urls will change from<NAME> to http://<NAME> Dare Obasanjo announced this change on his blog, and made the reasons for the change transparent.

However, I'm fairly certain that within the next 4 weeks, it will be spun as an evil Microsoft effort to tip the Netcraft numbers (see this story, for example). This will happen despite the fact that MSN Spaces was recently declared the most-used blogging service in the world.

The bottom line is that there's probably no evil master plan in play here, and either way, the metric is flawed and needs to be replaced to prevent people on either side from tipping the scale.

Excellence and Execution

IMAGE_097.jpgThe picture to the right is a coffee stand serving Starbucks coffee at Microsoft in front of a piece of the Berlin wall. I've never worked somewhere before where such powerful scenes jump out at you as you're walking down a hallway.

This week, I've spent a few hours attending EE/TwC sessions here at Microsoft (yes, even our internal acronyms are horrible and need help). EE/TwC stands for "Engineering Excellence/Trustworthy Computing". Dozens of the greatest leaders and individuals working at the company come together this week to present on various topics relating to job roles at the company.

One of the more inspiring talks was given by Jensen Harris, a Program Manager in Office. He has a blog, which I've just subscribed to. Jensen makes a lot of amazing points around user interfaces and the overall user experience. Everyone who designs stuff - software or other, should hear what this guy has to say.

Jensen has my respect because he:

1. Talks the talk.
2. Walks the walk.

Not only does he give an awesome story-style presentation and make great points - he also created (designs, codes, and maintains), in his spare time, an internal tool that developers, testers, and program managers across Microsoft use to track software bugs.

One of the things I've realized over the last year of my life or so is that great ideas are a dime a dozen, and talk is cheap (read: bikeshed principle). Execution is expensive.

Are you a talker or an executer?

Thursday, June 08, 2006

Shopping By Blog

When I hit up a mall or a department store, I always feel like I'm wasting loads of time sifting through loads of crap just to find the needle-in-a-haystack perfect shirt, or pair of jeans, or whatever.. is one of my favorite blogs, and totally helps me out with this problem. Check out some of the latest cool summery things I've found on it:

Hurley Reverse Polo

Short-Sleeved Linen Basics

Mod Stripe Polo

Summer Classic: A&F Cargo

Grn Apple Tree Denim Hoodie

Now, when I hit the mall, I know exactly what to look for!

Is there anything blogs don't do well?!

Sunday, June 04, 2006

iriver clix!

Last time I looked for a new mp3 player, I was pretty bummed out about the selection at the time.

Now that I've gotten hooked on URGE, I figured it was time to look around again. What'd I find? The new iriver clix!

This thing looks awesome. Reviews: CNET, PCMAG, Wired, Anything But iPod.

I actually found the device through the new advanced search. I was looking for a portal music player that met the following rough requirements:

1. Works with Windows Media DRM (i.e. URGE) download and subscription content
2. Internal rechargeable battery (via USB)
3. Flash storage (lightweight, low battery usage, no moving parts)
4. Relatively small and lightweight
5. FM tuner (mainly for the gym TVs, but also useful when traveling internationally)

The iriver clix seems perfect. At $200, it sits right at the upper end of the acceptable impulse buy price range (though I have been waiting 9+ months for it).

Unfortunately, I couldn't find it listed online at any local stores. So, it's on the way via UPS (iriver's web site lets you buy direct).

Can't wait!