The Old New Thing

Why does TaskDialog return immediately without showing a dialog?

A customer reported a problem with the function. We've encountered a strange behavior in the function. A user reported that when exiting our application, our program played an error beep that didn't appear to be associated with an error. After investigating, we found that the sound is coming from our application trying to display an error ...

Wildly popular computer game? The Windows product team has you covered

In Windows 95, the most heavily-tested computer game was DOOM. Not because the testers spent a lot of time developing test plans and test harnesses and automated run-throughs. Nope, it was because it was by far the most popular game the Windows 95 team members played to unwind. It was a huge breakthrough when DOOM finally ran inside...

On understanding that getting married comes with changes in lifestyle

A friend of mine who had been married less than a year received a phone call from Adam, one of his still-single friends: "Hey, Joe! Irving and I are going into town, hit some bars, hang out at some clubs, wanna come along?" My friend replied, "Hang on a second." A beat. "Nope. Still married!" As far as I know, Adam and Irving are still ...

Which ferry should we take from Germany back to Denmark? Oh, it's this one, except for that one word I don't understand

Writing that entry last Friday reminded me that I never did share my stories of that emergency vacation, save for a cryptic list of learnings. Here's a little story about the ferry crossing. Part of the trip involved driving from Copenhagen (København) to Munich (München), which means taking a ferry. (It's faster than driving ...

Non-psychic debugging: Why you're leaking timers

I was not involved in this debugging puzzle, but I was informed of its conclusions, and I think it illustrates both the process of debugging as well as uncovering a common type of defect. I've written it up in the style of a post-mortem. A user reported that if they press and hold the F2 key for about a minute, our program eventually stops...