About 2 months ago, Steven Sinofsky and Jon DeVaan started the “Engineering Windows 7” blog. The instant I saw the blog, I wanted to contribute to the blog (because I love writing :)).
I spent a fair amount of time thinking about what to write about and realized that one thing that wasn’t likely to be discussed was how the actual software engineering process of Windows 7 worked – not the data behind particular features, but how the hard core engineering work was managed. So I wrote it and submitted it to Steven and Jon.
My article (it’s too long to be considered a “post”) went live on the Engineering 7 blog sometime last night.
Larry, thanks for sharing this.
I find it incredible that an insight like this is featured on the "executive's" blog. On the spot for "Engineering" Windows 7.
Really excellent and honest article Larry. It is very enlightening. Thank you for taking the time to write it. Much appreciated.
That's a very interesting post, a good read. I enjoyed reading the replies... so many vitriolic opinions, based on apparently little to no experience in software development.
The article did omit the reasons for the shift in process, though, and when it took place. I imagine work on Win7 started before Vista shipped -- changing the process at the start has to be easier than in the middle. Which perhaps implies nobody on the ground at MS was overly surprised with Vista's reception?
Out of curiosity, is it possible to see the documentation required for an actual feature? I can imagine the answer is probably "life is too short to get the approval", but you never know.
It might be a chance to educate the ignorant masses, although they'd probably just latch onto something irrelevant. I wonder if the internet is always going to be so polarised with opinions, or whether it will, one day, encourage people to think before posting?
That was very interesting. I have been programming since CP/M and MS Dos 1.0. Actually meet Mr. Gates once in High school when Microsoft was first starting, he was a special guest for the programming class I was in.
I really found the issues with the testing of Vista interesting and I hope to use them as examples of why Testing needs to be part of the initial development instead of just handing the product to test. I have had this happen several times and it usually results in something not getting caught by testing and latter found by a user. Of course user interviews should also be part of the development but I am sure you guys had lots of user opinion and requests for Windows 7.
steveg: Actually a lot of this was triggered by Steven and Jon being placed in charge of Windows development.
Steven and Jon had adopted many of the ideas I laid out when they were in Office and they brought those ideas to the Windows division.
I'm very curious about whether developers write documentation or whether they are completely focused on coding.
If you do write documentation, could you outline what kind of documentation? Maybe elaborate a little on that part of your job.
Developers write the design specification which says how the feature will be built. Program managers write the functional specification (which says how the feature should work) and testers write the test specification (which says how the feature will be tested).
I'm a firm believer that every developer should be a competent (not good, but competent) technical writer.
After the design and functional specification are written we have professional technical writers who write the actual SDK documentation which is then reviewed and corrected by the developers and program managers.
Cool. How much freedom do you have in writing the documentation? Do you follow certain company standards, or do you just do what suits you best?