The ice-cool Australian responsible for pushing Windows 2000 toward the finish line last week took a break from the pressures of driving the world's highest profile software project.
Iain McDonald deserted Redmond to fly back to Australia and deliver some home truths to delegates at TechEd99, Microsoft's annual extravaganza for the technical community.
For the past eight months, McDonald has led the team of 3000 Microsoft developers struggling to perfect 27 million lines of Win2000 code. The experience has left him with strong opinions on how to manage a high-pressure, large-scale software project. Among them:
* Some bugs aren't worth fixing. Those that are include reproducible crashes, hangs, security breaches and data corruption. But "some fixes can be deferred. The important thing is to fix the right bugs," according to McDonald. And while you're fixing them, remember that "the last bug is found when the last customer dies".
* Get tough-minded about missing delivery dates, not defensive. "Dates don't matter. If you hit a date but deliver a piece of junk, why bother?"
* Quality matters. "Quality is our highest priority; my mantra is reliability. It is not a bad thing if we slip two weeks if it means we keep the quality bar up.
It is better to ship the right product six months late rather than the wrong product on time.
* Halfway through a project is not the time to start throwing more people at it. More is lost in bringing newcomers up to speed than is gained from their input.
"All you have to play with is time, features and quality. Features and quality equal time. You can't lower the quality bar so you either cut features or you slip."
* Put in long stress runs to push the system beyond its limits for extended periods.
* Don't set long project milestones. Limit them to eight to 12 weeks because longer periods encourage procrastination and demotivate people.
McDonald blasted as a "myth" the widespread belief that Microsoft relies on beta series users to do the hard yards as unpaid code testers. True, Microsoft sent out 500,000 beta 3 early evaluation copies.
On the burning question of when Win2000 will finally ship, McDonald promised Release Candidate 2, traditionally the last stop on the journey to the shipping dock, will appear this month.
The code is proving more stable and passing stress tests to higher numbers than ever before and points to Win2000 as being "a much higher-quality system that anything Microsoft has previously released".