My Career – Part 11: Windows 7 (2006 – 2009)

Everybody hated Windows Vista and everybody loved Windows 7. They did not understand how one release could be so bad and next so awesome, and if we could do one awesome release, why not do that for every release? The secret is that we did not actually do much feature work in Window 7 – all feature development occurred in exactly 3 developer sprints (I forget exactly how long they were, but something like 4 weeks each) followed by an equal time spent for integration and stabilization. Of course, there was a period after these sprints finished to fix remaining bugs, but no new feature development was done after the 3rd sprint.

This worked because Windows Vista already had most of the code and features necessary to make a great operating system – it was just lacking a certain amount of fit and finish. Steven Sinofsky (the president of the Windows division) made everybody spend a huge amount of time (it might have only been 6 months, but it felt like a year) carefully thinking through their Windows 7 plans with the goal of finding the precision changes needed to turn Windows Vista into Windows 7. Every plan was meticulously documented and every change had a corresponding threat model. Nobody was allowed to write a single line of code until all documentation was approved by a feature committee.

My office in building 84

I had always been the “video guy” in the graphics division, but especially so for Windows 7 – we made a decent investment to implement missing features that were forcing video applications developers to use private APIs that were published by the three graphics IHVs. I finished this video work in the first two sprints, and was then asked to do some work on GDI interoperability for Direct3D10 and Direct3D11 (which I barely finished by the end of the sprint).

One thing that I did as part of my Windows 7 investigations was to write a very long document called “Why Video Glitches” in which I enumerated a bunch of technical issues across the video stack, and it went a little viral within our part of the Windows division. A few people even suggested we should submit it as a “think paper” for Bill Gates (he supposedly allocated one week a year mostly unplugged in order to read documents and books). My boss warned me that if anything in the document was incorrect, I would likely get in trouble. I never heard any such accusation, however, and many of the issues that I described were fixed in Windows 7.

After sprint 3, I was asked to pick up bugs from the other teams (they did not need me to actually fix the bugs – just to figure out what the bugs were). I was on loan to several teams during this time and it was kind of fun drilling into the various tech stacks.

Windows 7 was an interesting release because it was both way more thoughtful and bureaucratic. Sinofsky was right to slam the breaks on the development culture which led to so much chaos during Windows Vista development, but it only worked because he also did not require the team to do much new development. In other words, it was not a playbook that we could go back to for every release.

To celebrate the Windows 7 launch, the graphics team had a morale event where we assembled skateboards (and then signing them). I even ended up building a skateboard for Steven Sinofsky, which he did not ride because he was actually a skateboarder (he sent me some recent pictures of him riding a ramp) and he thought that the wheels were too cheap. In the spirit of celebration, I attempted my first 360 in 30 years and landed it on my second attempt.

The Windows 7 launch party was fun and included the band The Presidents of the United States (they even wrote their own little song about Windows 7, which mostly consisted of singing the words “Windows 7”).

Leave A Comment

Your email address will not be published. Required fields are marked *