In March 2016, SAPIEN Technologies, Inc. posted a survey asking users and administrators which versions of Windows PowerShell they’re running. We got 148 responses by the April 8 when we closed the survey. This blog post reports the findings. While reading them, please keep in mind that this is not a statistically valid survey. We didn’t select users or control for anything. Still, I did not expect these results.
I might be a bit naïve about enterprise computing, but I’m surprised by the widespread adoption of Windows PowerShell 4.0 and 5.0. My sense is that the community moved much more slowly from 2.0 to 3.0 and then still quite cautiously to 4.0.
But, things have changed!
Half of users run 5.0 most often
In general, almost half of the respondents (49%) run PowerShell 5.0 most often, even though it’s fairly new.
I don’t have the data, but I suspect that this is very quick adoption for a new version of PowerShell and it’s likely to have been driven by the assertive push of Windows 10. Remember that WMF 5.0 was released in December 2015, then retracted in early January, and then re-released on 28 February 2016. The time since release didn’t seem to affect the survey results; the data trends did not change over time.
This was one-choice only (radio button) question, so that might have pushed people who use several versions into a false choice.
85% of users run 4.0 or 5.0 most often
Right behind 5.0 is Windows PowerShell 4.0 at 36%. Combining the two means that 85% of users are using a version greater than 3.0, which is the unofficial standard version. Only 11% use 3.0 and only 4% use 2.0 most often.
Official work version: PowerShell 4.0
When we asked about the “official version used at work,” the numbers shifted a bit, but not as much as I would have guessed. As expected, 16% of respondents skipped this question, which I interpret to mean that their workplace doesn’t have an official version of Windows PowerShell.
Again, this was one-choice only (radio-button) question.
51% of users report that their official work version is Windows PowerShell 4.0. In fact, more users reported that PowerShell 4.0 was their “official version” than PowerShell 2.0, 3.0, and 4.0 combined.
PowerShell 2.0 and 3.0 were almost tied at about 18% and PowerShell 5.0 came in last, as expected, at 12%.
We also asked which version each participant used most often at work, in case they didn’t need to use the official version.
I don’t have an official explanation for the popularity of 4.0, but I suspect we’re seeing some coattails from Windows Server 2012, Exchange 2010 and 2013, and Configuration Manager. Several participants mentioned that installations and upgrades of PowerShell 5.0 failed, but they’re likely to try again now that 5.0 has stabilized.
This comment is pretty typical:
“At work we tend to stick with whatever PS version the OS came with, while I tend to develop on the latest version whether at home or at work.”
It actually might summarize all of these results.
PowerShell Versions Used at Work
In addition to asking about the official version used at work (choose one), we also asked about versions used at work. This was a checkbox question in which respondents could select more than one choice.
PowerShell 4.0 “won” this round with 71% of participants selecting it. PowerShell 5.0 was not far behind at 49%, even though WMF 5.0 was not officially released for down-level systems until after the survey closed.
In this choose-many question, PowerShell 2.0 rose to 41% using it at some time with PowerShell 3.0 at 43%, which is about the same, given the lax data.
I would have expected to see PowerShell 3.0 at nearly 100%. I use it sometimes, even though I don’t have to, if only to test scripts in a 3.0 environment.
As expected, 2/5 of users, 41%, still use PowerShell 2.0 at work. That’s important data for planners.
At home, it’s 5.0
In our own homes, where we can presumably use what we please, 86% are using PowerShell 5.0. With the release of WMF 5.0, we can expect this number to increase.
This was a choose-many question, where the numbers don’t sum to 100%, but this is still a huge result.
Windows PowerShell 4.0 lagged significantly at 28%, with 2.0 and 3.0 at 4-5% — far lower than I would have guessed.
Again, the survey wasn’t scientific and I might have teased out more data by asking if they “ever” used a version, or if they “needed” a certain version.
Conclusion: People are upgrading
When we released the 2.0 version of Windows PowerShell, it was a struggle to get people to try the new version, even though it had the much-requested remoting features. PowerShell 3.0, which exploded with new cmdlets and modules, simpler syntax, more powerful language, and cool features like session config files, took a while for many users to switch.
PowerShell 4.0 brought us Desired State Configuration, but again, it wasn’t a very quick switch.
That seems to have changed with PowerShell 5.0. Users upgraded quickly. Although 4.0 remains the most commonly used version in all categories, few people are stuck at 3.0 refusing to upgrade. I wonder if the new fast-release cadence of Windows is prompting enterprises to upgrade more quickly.
The comments revealed that many of the respondents who use PowerShell 2.0 at work are “stuck” there for a variety of reasons, including the time and cost of reviewing, approving, and migrating to a new system. We might see some of these switch to 5.0 with the upcoming release of Windows Server 2016.
If you have any insight, please post it in the comments. And, thanks to everyone who participated in the survey.
[Thanks to Krishna Vutukuri (@KCVutukuri) on the PowerShell team for correcting errors in the WMF 5.0 release dates.]