Microsoft MVP Renewal: Third Consecutive Year

This morning, I received the coveted, diamond-like e-mail that most people anticipate with fervor. For the third year in a row, I have been awarded the Microsoft MVP award for contributions to the community. I very much enjoy, and am passionate, about being involved in various IT communities, locally, nationally, …

Continue reading

PSA: Upload your PowerShell Modules!

For some time now, the PowerShell Gallery has been available, enabling the upload of PowerShell modules to a centralized repository. This repository provides an easily discoverable location from PowerShell 5.0’s PowerShellGet module. In order to install a PowerShell module in PowerShell 5.0, a user must simply type Install-Module -Name <ModuleName>. …

Continue reading

Auto-Complete .NET Constructor Params

Introduction If you’re a regular PowerShell script or module author, you’re probably accustomed to creating .NET objects using object constructors. In the Microsoft .NET Framework, each struct or class can have one or more constructors. A constructor enables the type consumer to instantiate the object using a set of zero …

Continue reading

Azure Template Deployment with PowerShell :: MTUG Norway

On August 26th, 2015, I delivered a presentation on deploying Azure Resource Manager (ARM) JSON templates using the ARM PowerShell module for the Microsoft Technology User Group (MTUG) in Norway. This event was coordinated by Microsoft MVP Jan Egil Ring. You can view the 1.5 hour recording of the presentation …

Continue reading

Create a Visual Studio Project for your PowerShell Scripts

Are you eager to take advantage of Visual Studio PowerShell Tools? This video talks about how to create a Visual Studio Solution & Project to help you manage your PowerShell script files. If you’ve already got a set of one-off scripts, that doesn’t necessarily warrant a PowerShell module, but you …

Continue reading

PowerShell Splatting: Overview

Have you ever been writing a PowerShell script, and looked at how wordy and long the command becomes? If so, you’ll want to familiarize yourself with the concept of PowerShell Splatting. This technique allows you to declare your PowerShell cmdlet parameters in a HashTable (aka. dictionary or key-value pairs), and …

Continue reading

PowerShell: PSReadLine Module

The PSReadLine PowerShell module is a god-send in the world of the PowerShell console host. The console host (powershell.exe) has gotten a lot of flak, over the years, for lacking functionality that most non-Windows users are accustomed to having. Some of the enhancements that you get out-of-box with PSReadLine include: …

Continue reading

Azure RM: Resource Manager or Service Management?

Introduction If you’ve been working with the Microsoft Azure public cloud platform lately, you might be familiar with the terms “Service Management” and “Resource Manager” (Azure RM). These terms refer to two different REST APIs that enable access to Microsoft Azure cloud services. Cloud Services is an ambiguous term, because …

Continue reading

Compress & Extract ZIP Archives with PowerShell

Introduction PowerShell 5.0 includes a module called Microsoft.PowerShell.Archive, which enables you to compress and extract ZIP files from the command line, or inside your PowerShell scripts. If we use the core PowerShell Get-Command, we can dynamically discover the commands that are available inside this module. You should already be familiar …

Continue reading

Writing Interactive Scripts with PowerShell

If you’re authoring PowerShell scripts that are intended to be interactive, there are a couple of very easy ways to ask your users for input. Typically, user input falls into a couple categories: free-form text input, or a list of pre-defined values. We also might need to prompt the user …

Continue reading