Connection Strings

PowerShell Roadmap Shows Scripting Language Straddling Developer, Operations Roles

PowerShell Core, the version aimed at providing scripting capabilities across a number of platforms, will eventually supersede the Windows-only version. A beta is available now, with a full release planned for end of this year.

I hate the term DevOps. It's actually a great term, when it comes to one of those mashup words that actually means something. I just hate the whole idea of the deliberate separation using the tired old capital O in the middle of it. It messes with my editorial sensibilities.

So, ugly word in print, great word in what message it tries to convey. If there is a definitive Microsoft technology for DevOps, it's PowerShell. Even though it follows that ugly middle capital convention, the scripting language is getting nearer and nearer to that middle ground, straddling both the developer and IT worlds in equal measure. It's useful in both camps, and looking at a recent roadmap from the PowerShell team, it's only becoming more so.

A look at the roadmap shows two versions. The one called Windows PowerShell is the one most Windows admins are familiar with, which is "built on top of .NET Framework." The other, PowerShell Core, stretches out the traditional language to macOS and Linux platforms and does it using some of Microsoft's developer tooling capabilities. The idea is to maintain some compatibility between the two, writes Microsoft Program Manager Joey Aiello, in the roadmap blog post

"To that end, we're leveraging a technology called .NET Standard 2.0 to provide binary compatibility with existing .NET assemblies," he explains. "Many PowerShell modules depend on these assemblies (often times DLLs), so .NET Standard allows them to continue working with .NET Core."

As Aiello explains further, the PowerShell team has been able to maintain quite a bit of compatibility between the versions, but there's still some work to do, as some Windows-oriented modules have yet to be ported to .NET Core. The resulting work so far is encapsulated in a PowerShell Core beta that's available now via GitHub here, and can be run alongside with a current working install of PowerShell without issues. Aiello notes that the goal is to have a solid release by the end of this year.

Version 5.1 of Window PowerShell is likely to be the last one, which will continue to be supported as Windows 10 and Window Server 2016 are supported. But, he says there will likely be no "major feature updates or lower-priority fixes," as PowerShell Core becomes the officially endorsed Windows scripting language.

Where's the Dev part in DevOps? Back in May, the PowerShell team released a 1.0 version of its PowerShell for Visual Studio Code extension that allows for creating, editing, and debugging PowerShell scripts natively in VSC. For those who prefer the full VS IDE, it's not there yet, but Posh Tools developed an extension as an option, downloadable from the Visual Studio Marketplace. (Current fix and update info on new builds are here; the most recent is a July maintenance release.)

In the meantime, there's lots of good PowerShell content over at VSM's sibling site,, from contributor Boe Prox. You can find all of his stuff starting here.

Speaking of DevOps, follow Microsoft's DevOps blog. Brian Harry's blog has been a great source of VSTS info, but you'll get more DevOps nuggets on working with VSTS, TFS, version control, CI/CD, and more from the rest of the team here.

Here are a handful of other links we've run across that might be useful to you, in no particular order and definitely not conforming to any particular theme:

Know of an interesting link, or does your company have a new or updated product or service targeted at Visual Studio developers? Tell me about it at

About the Author

Michael Domingo is a long-time software publishing veteran, having started up and managed developer publications for the Clipper compiler, Microsoft Access, and Visual Basic. For 1105 Media, he managed, Virtualization Review, and was Editor in Chief of Visual Studio Magazine and host of The .NET Insight Podcast until 2017. Contact him via his photography Web site at

comments powered by Disqus


  • How to Create a Machine Learning Decision Tree Classifier Using C#

    After earlier explaining how to compute disorder and split data in his exploration of machine learning decision tree classifiers, resident data scientist Dr. James McCaffrey of Microsoft Research now shows how to use the splitting and disorder code to create a working decision tree classifier.

  • Microsoft: Move from Traditional ASP.NET to 'Core' Requires 'Heavy Lifting'

    There are plenty of reasons to move traditional ASP.NET web apps -- part of the old .NET Framework -- to the new cross-platform direction, ASP.NET Core, but beware it will require some "heavy lifting," Microsoft says.

  • Purple Blue Nebula Graphic

    How to Compute Disorder for Machine Learning Decision Trees Using C#

    Using a decision tree classifier from a machine learning library is often awkward because it usually must be customized and library decision trees have many complex supporting functions, says resident data scientist Dr. James McCaffrey, so when he needs a decision tree classifier, he always creates one from scratch. Here's how.

  • Blazor's Future: gRPC Is Key

    Blazor guru Steve Sanderson detailed what Microsoft is thinking about the future of the revolutionary project that enables .NET-based web development using C# instead of JavaScript, explaining how gRPC is key, along with a new way of testing and a scheme for installable desktop apps.

  • Don't Do It All Yourself: Exploiting gRPC Well Known Types in .NET Core

    If you're creating business services that send dates and decimal data then you may be concerned that gRPC services don't support the relevant data types. Don't Panic! There are solutions. Here's how to use them.

.NET Insight

Sign up for our newsletter.

Terms and Privacy Policy consent

I agree to this site's Privacy Policy.

Upcoming Events