10 Years at Microsoft


I started at Microsoft the day after Labour Day, 1995 (which I soon learned was spelled Labor Day). This was about a week after the Windows 95 launch, so things were still pretty crazy on campus. It took years for the football (er, soccer) fields to recover from that, and in recent years the turf was replaced with a synthetic surface to better handle such events.

My First Real Microsoft Bug

I was hired in 1995 as a developer on the Visual C++ team, working on the C-runtime (CRT). I was to investigate the various versions of STL available at time, and determine which would be bundled with the compiler. However that task was soon parked and my time turned to a more urgent one: a ship-stopper bug in the Macintosh version of Visual C++ 4. (A ship-stopper is a bug that literally freezes the release of a product). In this case there was a problem with the C++ exception handling code, when it would sometimes run the catch block twice, with disastrous consequences. The fix took several weeks in total, and in the process I discovered a lot more cases that didn't work, some in the x86 version too. (The real fix was never determined, the PPC EH code was nasty: however the "good enough fix" was to remember if we had just run a given catch block, and to not do it twice). The good news was this got me a ton of exposure to management, as every day I would have to go to the War Room to explain progress (or lack thereof) on the bug. As a result of this, I was asked to join the Galileo team, working on a new T-SQL debugger. In due course Galileo became Visual C++ Enterprise 4.2, and over the subsequent years I expanded from the T-SQL debugger to the C++ debugger, to the lead on the entire VS debugger, and the acting development manager for C#. Then it all changed.

Products I Helped Ship

Visual C++ 4.0 Oct 95
Visual C++ Enterprise Edition 4.2 Aug 96
Visual C++ 5.0 Feb 97
Visual C++ 6.0 July 98
Visual C++ 6.1 (cancelled 99)
Visual C++ Processor Pack Sept 2000
Visual Studio 7.0 Jan 2002
Visual Studio 7.1 Apr 2003
Visual Studio 8.0 Soon!

How Many Bugs?

According to the database, I personally fixed 289 bugs in VS 8. If that is an average (and I'm not sure it is, but bear with me), then I have fixed over 2300 bugs in my 10 years here, which is roughly one per working day. Its a lot harder to ask the database how many bugs I created in the same time (and that's probably a good thing)...

Comments (3)

  1. Rik Heywood says:

    Plus you quadrupled the number of memory windows in the debugger to a staggering 4!

  2. morning says:

    where is VC6.1?I never see it…where can i get it?

  3. Andy-Pennell says:

    VC6.1 was cancelled as it says. Its C++ Debugger was the best we had for a long time internally, most of the improvements eventually showed up in VC 7.1.

Skip to main content