I am a Systems Development Engineer for Amazon, Microsoft MVP, 2018 PowerShell Hero, and SoCal PowerShell User Group Founder. I have been passionate about PowerShell for a very long time. I enjoy learning about PowerShell and sharing the things that I discover.

Social Media / Contact Info

PowerShell Projects


The primary focus of this blog is on PowerShell. I love to learn and research ideas in PowerShell. When I find something interesting or new, I write about those discoveries.

When I cover fundamentals, my intention is that everyone walks away learning something. My coverage on hashtables gently introduces hashtables and continues on to take the topic to the most advanced details.

PowerShell Modules


DependsOn is a PowerShell Module that allows you to define dependencies in your data and order the data based on those dependencies.


PSGraph is a Powershell Module that allows you to script the generation of graphs using the GraphViz engine. It makes it easy to produce data driven visualizations.


PSGraphPlus is a Powershell Module generates graphs using PSGraph. It has commands that will generate graphs of git repos and local network connections. Most of my best demos are captured as functions in this module. It saves you the work of crafting those graphs yourself.


Chronometer analyzes a script or module during execution and reports line by line execution times. It allows you to see your code coverage and where most of your execution time is spent.


GetPlastered is a Plaster template that will turn a folder into a Plaster template that can deploy that folder. The idea is to use this as a starting point to create the Plaster manifest when you know it will contain a lot of files.


SelectAst is a helper command for working with the AST. It takes care of the delegate logic for you so you can select what you want with simpler syntax.