olly - Fotolia
Colliding egos, Machiavellian subterfuge, cutthroat tactical maneuvers.
This isn't the backdrop of a ripping yarn a la Game of Thrones, but a sampling of what you'll discover in a behind-the-scenes book about the development of PowerShell book titled Shell of an Idea: The Untold History of PowerShell.
Don Jones had the idea for this PowerShell book simmering on the back burner for several years before some of the people directly involved in the development decided to go on the record about the Herculean efforts required to bring PowerShell from a concept to a default tool -- or "in the box" -- in the Windows OS.
Jones interviewed PowerShell's inventor, Jeffrey Snover, and other team members and collected their anecdotes for an engaging narrative that offers a look behind the curtain of the high-pressure development process at Microsoft circa the early 2000s. Even with the blessing of Bill Gates, PowerShell still had numerous hurdles to jump before it was allowed to enter the Windows ecosystem.
Despite a promising start, it seemed PowerShell would be another venture that would wither on the development vine. However, a chance encounter between Snover and a friend who worked on Exchange Server resulted in PowerShell being added as an administrative tool in Exchange 2007. With that key advancement, the effort to get PowerShell added to the Windows OS took a step closer to reality.
The following excerpt from Jones's PowerShell book comes from the chapter entitled "Windows, Again" and picks up the action at another crucial turning point for the automation tool.
With PowerShell's triumphant 2006 release as part of Exchange Server 2007 -- although you could also download the shell all by itself from Microsoft's website -- it was time to try and get back "in the box" with Windows itself. The motto for version 2 of PowerShell was "PowerShell Everywhere," meaning the team wanted PowerShell to ship with Windows, putting the shell everywhere Windows was.
The team worked incredibly hard to clear all of the Windows Architecture team's "gates" to inclusion in Windows. They went through Bill Gates reviews, they ticked off all the checkboxes they were given, and finally had to deal with management and politics.
Brian Valentine had been the primary high-level objector to PowerShell's inclusion in Windows, and he was the one who'd denied the Design Change Request (DCR) files by Charlie Chase to "let PowerShell in."
Bob Muglia, higher in the org chart than Valentine, set up a private meeting between the two men. Snover has a colorful, amusing, and incredibly NSFW turn of phrase for that conversation, and if you're ever at a cocktail part with him, ask him about it. By the way, he drinks Budweiser. Not Bud Light.
After the meeting, Muglia sent out the kind of email you'd expect a high-level, professional, corporate executive to send out: I appreciate your perspective, I understand your concerns, but this is the business decision and we're going to move ahead. It's the type of email you send out to try and allow all sides to save face, even though, in some decisions, not everyone can have their way all at the same time. If you've been advocating for something other than what becomes the final decision, it's an honorable way out of the argument.
Valentine didn't take it.
He hit Reply All to a list that's been described as "pretty much everyone," and launched an impassioned, emotional diatribe against PowerShell being included in Windows. This was likely driven at least somewhat by him supporting this team members who were themselves fighting to keep PowerShell out of Windows, but it was too late. The decision had been made, and the next version of Windows would ship with Windows PowerShell v2 "in the box."
PowerShell was now real, it wasn't just an Exchange thing, and it was about to be in the hands of every Windows user on Earth.
Editor's note: This chapter excerpt is from Shell of an Idea: The Untold History of PowerShell by Don Jones, published on the Leanpub platform. To read more about the book, click this link.