Maybe you’re not “a dev”. You don’t really know C#. Why would you want to write a compiled PowerShell cmdlet? Well, compiled cmdlets are necessary to play with other C# libraries/systems, and they’re usually faster, and end users can’t mess with them. It’s easier than you think to get going.
PowerShell is great because it abstracts a lot of the “developery” stuff away from the person writing PowerShell code, and lets them focus on writing scripts and modules. That’s great! That is, until you have to want to do something that PowerShell won’t let you do, or you want to put a PowerShell front end on some C# code your devs developed, or your end users keep modifying parts of the scripts you’re deploying since they can just open them in notepad and edit them.
Writing compiled PowerShell cmdlets is easier than a lot of people think, and a seasoned PowerShell Pro will pick it up quickly.
Thomas Rayner is a Senior Security Service Engineer at Microsoft with many years of experience in IT. He is a master technologist, specializing in DevOps, systems and process automation, public, private and hybrid cloud, security and .NET coding. Thomas is a former 4x Microsoft MVP, Honorary Scripting Guy, an international speaker, best-selling author, and instructor covering a vast array of IT topics.