Q&A: Father of PowerShell on Future of DevOps, Automation and Container Support
Jeffrey Snover, the inventor of the popular Microsoft scripting engine, forecasts where PowerShell is going and outlines containers' role in automation.
- By John K. Waters
As Microsoft and Chef Software Inc. forge ahead with their partnership, the two companies together hope to further enable cross-platform and cross-cloud automation in a way that brings development and operations teams together. That's now possible thanks to compatibility between Windows PowerShell and the Chef Automation Platform and the arrival of Windows containers.
The inventor of Windows PowerShell, Jeffrey Snover, is a big fan of Chef and made that known at the company's annual developer conference last month. Snover, a Microsoft distinguished engineer and the lead architect for the Windows Server division, demonstrated his famous object-based, distributed automation engine, scripting language, and command-line shell to an audience of Chef users at the annual ChefConf gathering in Santa Clara, Calif., last week.
Steven Murawski, a software developer on Chef's Community Engineering team who declared, "PowerShell has done wonders to bring a consistent command-line and automation story to the Windows platform," introduced Snover. "As Chef embraces PowerShell, our capabilities in the Microsoft stack continue to grow," Murawski said.
In his "PowerShell from the Ground Up" talk, Snover demonstrated a distinctly developer-focused capability: the new ability of Windows PowerShell 5.0 to define classes. "Keep in mind that we are doing this over the course of time and we're implementing just enough classes so you can write DSC resources very simply," Snover explained.
Although Snover admitted that Windows PowerShell is primarily a tool for IT pros and operations teams, his goal from the outset was to create a tool that would connect operators and developers. "We've got a term for that now -- it's called DevOps."
Redmond magazine Contributing Editor John K. Waters talked with Snover after his presentation.
Redmond: Why is Microsoft partnering with Chef?
Snover: We are a platform company, and we want to enable companies like Chef to manage everything on the Windows ecosystem. We want to make it possible for a customer to go to these companies and say, hey, do you support DSC, and if they say yes, then they don't have to worry about deploying and managing configuration data for software services and managing the environment in which those services run. And Chef has been great.
You advocated strongly for automation 13 years ago in your Monad Manifesto, in which you articulated a long-term vision and started a development effort that became PowerShell. The Azure PowerShell module currently provides about 20 Azure Automation cmdlets, so it's clear that Microsoft is on board. But what about the rest of the industry? Are enterprises on the right track today? Do people get it now?
No, I'm afraid not. Just think about how many people are still on Windows Server 2003 clicking Next. The DevOps guys are definitely on the right track. But they represent an early vanguard of the industry. And when you talk to them, they'll tell you that they are, in fact, the vanguard in their organizations. So with DevOps, what we're seeing is really the vanguard of the vanguard.
Everyone seems to be unveiling a container strategy these days. Just last year Microsoft and containerization superstar Docker jointly announced plans to develop a native Windows Server based on the Docker engine. How do containers fit into the emerging automation picture?
OK, now we're talking about the vanguard of the vanguard of the vanguard. Exciting stuff, but anyone who tells you that they know how containers are going to play themselves out over the course of the next three to five years is making it up. We're all on a journey. It's amazing technology, and it's going to change things, but how it's going to do that, no one knows.
How might containerization change things?
One of the things I see is that a number of the configuration tasks currently done by operators late in the process are going to move forward and be done by developers as part of the build process.
In fact, you talked during your presentation about new support in PowerShell for developers. Is that part of an evolution or a response to a particular demand?
It's a logical next step. Along with the things I mentioned here, it's being integrated with Visual Studio, so you can now edit your PowerShell scripts in Visual Studio.
Which is perfectly in line with the hopes you expressed in the Manifesto, right?
Yes! If you look at the Manifesto, I talked about the problem being that the technology was keeping these two different groups of people [dev and ops] from integrating well together. We wanted one technology that made it easier. And, indeed, there were some things in PowerShell that developers found off-putting, and we've been addressing that.
PowerShell fans -- of which there are bazillions -- love its command-line interface. But there are critics out there who argue that wizard- and GUI-based approaches are more efficient and modern. How do you respond to that criticism?
Look, if you're not adding value through differentiated IT -- if you're just using a GUI and doing click-next, click-next, click-next -- you're probably in trouble. Those standardized values are going to be offered through the cloud at dramatically lower prices and higher service-level agreements. In that scenario, you're just not needed. But if you can figure out how to take those standardized offerings and turn them to your business advantage, there's a huge amount of value that one could add. Ask yourself, how can we take these technologies and better integrate them into our processes and use them to better advance our business agenda? There, I see a ton of value.
What's the coolest thing you see on the horizon for PowerShell, beyond PowerShell 5.0?
Well, because we're now on this Agile footing, and a monthly release cadence, it's very difficult to have those big moments. But that's OK: Consumers may love drama, but drama and the enterprise don't go together. What you'll see is a steady pursuit of the core principles: applying IT to advance business goals, getting people to work together, making it a safer environment, and being able to secure systems.
John K. Waters is the editor in chief of a number of Converge360.com sites, with a focus on high-end development, AI and future tech. He's been writing about cutting-edge technologies and culture of Silicon Valley for more than two decades, and he's written more than a dozen books. He also co-scripted the documentary film Silicon Valley: A 100 Year Renaissance, which aired on PBS. He can be reached at firstname.lastname@example.org.