PowerShell + DevOps Global Summit 2023
2023-04-24..2023-04-27
Bellevue, United States
[PowerShell + DevOps Global Summit 2018, PowerShell + DevOps Global Summit 2019, PowerShell + DevOps Global Summit 2022, PowerShell + DevOps Global Summit 2023, PowerShell + DevOps Global Summit 2024, PowerShell + DevOps Global Summit 2025, PowerShell + DevOps Global Summit 2026]
who it's for
PowerShell developers, DevOps engineers, infrastructure engineers, automation engineers, platform engineers, tooling authors, technical writers
topics
Pester test automation; PowerShell remoting over SSH; CICD with GitHub Actions; Azure DevOps security; Optimizing Chocolatey packages; PowerShell abstract syntax tree techniques; Visual Studio Code for PowerShell; PowerShell module development and publishing; Jupyter Notebooks for PowerShell; WinGet PowerShell modules; Ansible for Windows infrastructure; AI generated code for PowerShell
| title | author | length |
|---|---|---|
| Keynote - More than two decades in shell and ops | Brendan Burns | 50m |
Describes a cloud deployment engine that initially succeeds only about 80% success rate in the wild because package servers and concurrency cause flaky… | ||
| Anthony's Favorite dbatools cmdlets and Use Cases | Anthony Nocentino | 44m |
Uses the community dbatools PowerShell module to automate real tasks: Connect-DbaInstance to reuse connection objects, Backup-DbaDatabase and… | ||
| Leverage from Pester to automate Azure Storage Account testing | Daniel Silva | 46m |
Uses Pester with the Az PowerShell module, Terraform and GitHub Actions to run automated validation against Azure Storage Accounts: creates Key Vault secrets… | ||
| Coding with the lights ON - OpenTelemetry from code to prod | Roni Dover | 51m |
OpenTelemetry instrumentation flips observability from absent to actionable: about 10 lines of code adds traces and metrics collected by an OpenTelemetry… | ||
| Improving Shell usability - Crescendo | Jason Helmick | 44m |
Crescendo turns arbitrary native command output into real PowerShell cmdlets by generating a small module and manifest from a declarative JSON config… | ||
| Building applications with infrastructure as code | Talia Nassi | 33m |
Claims that Infrastructure as Code guarantees repeatable, versioned provisioning and reduces risk by keeping configuration in a repo; demonstrates Terraform… | ||
| State of the Shell | Jason hellmick, Steven Bucher | 53m |
PowerShell announces concrete changes and measurable results: 27 releases since last year and telemetry hitting 1.3 billion sessions in March, plus thousands… | ||
| Welcome message | James Petty, Heidi Erpelding Welch | 25m |
Conference opens with logistics and community commitments: schedule changes and room flips, 200 CFPs for 50 slots (~25% acceptance), a $5,000 donation that… | ||
| Don't Destroy Your Datacenter with Azure DevOps | Steven Judd | 39m |
Azure DevOps often ships without Azure AD auditing enabled so connect the org to Azure Active Directory, turn on log audit events (default retention 90 days)… | ||
| Sustainable, Maintable and Durable. Azure Durable... | Jaap Brasser | 01h 14m |
Title says it all but here’s the decision: concrete demos use Azure Durable Functions with PowerShell deployed from VS Code to a Function App and backed by a… | ||
| TaskJob: Manage .NET Tasks as PowerShell Jobs! | Justin Grote | 41m |
TaskJob claims it converts .NET Task objects into native PowerShell Job objects so asynchronous .NET APIs behave like familiar jobs; implementation is a C#… | ||
| Streamlining Software Management with... | Stephen Valdinger, James Ruskin | 49m |
Claims Chocolatey provides a universal Windows packaging format and a business suite that actually builds, internalizes, hosts and deploys packages; demos show… | ||
| Optimizing Chocolatey Packages for Others | James Ruskin | 35m |
Describes the Chocolatey Community Repository pipeline: submission hits ~70 validation rules, then automated install/uninstall on a 2019 VM, plus VirusTotal… | ||
| Code Golf: The zen of writing bad code II | Kevin Marquette | 01h 28m |
Walks through concrete PowerShell code golf: using the code.golf web runner (PowerShell 7), shaving whitespace and aliases, replacing if chains with ternary… | ||
| It's Raining Modules | James Ruskin | 22m |
Practical guide to shipping PowerShell modules: compares hosting options (PSGallery, GitHub/GitLab packages, Azure Artifacts, Cloudsmith, Nexus, Artifactory… | ||
| Exploring and Building Cross-Platform TUIs | Andrew Pla | 44m |
Demos use terminal.gui on .NET Core and the Microsoft Console GUI Tools module to build cross‑platform TUIs: Out-ConsoleGridView for in‑terminal grids… | ||
| Testing in Production | Talia Nassi | 32m |
Argues that staging lies and the only way to know a feature works is to test in production behind feature flags, using Split/LaunchDarkly/Harness; create test… | ||
| Your Code is Flawless, But How YOU doing? | Dave Carroll, Andrew Pla | 55m |
Pairs coding practices with concrete self-care steps: maps parameter validation to setting boundaries, uses try/catch as a model for noticing triggers and… | ||
| CICD with Github Actions | Chris Ayers | 48m |
Forty-five minutes of hands‑on detail showing how GitHub Actions runs CI/CD: YAML rules, workflow dispatch and event triggers, jobs vs steps, hosted runners… | ||
| PowerShell Lambda using Custom Runtime | Mohamed Wali | 40m |
A native PowerShell custom runtime for AWS Lambda runs PowerShell directly instead of compiling to .NET, returns full pipeline and Write-Output logs to… | ||
| Azure DevOps security - Lessons learned | Björn Sundling | 49m |
Azure DevOps shows concrete attack paths and fixes: allow public projects literally exposes every API endpoint (including undocumented ones) to an anonymous… | ||
| AWS CDK in PowerShell | Takaki Matsumoto, Trent Blackburn | 45m |
An AWS CDK implementation for PowerShell exists as an open source module that downloads CDK NuGet packages, imports the C# assemblies as DLLs, and exposes… | ||
| Drive Rapid PowerShell Adoption Using Jupyter Notebooks | Michael Soule | 45m |
Claims that a new hire becomes productive the first day with only credentials and a preauthored notebook backed by JupyterHub on Fargate. Shows concrete… | ||
| Deploying an Observability Stack in One Line of Code* | Anthony Nocentino | 41m |
Claims a full observability stack launches with one line of code using Docker Compose and containers. Actual build uses an openmetrics exporter, Telegraph as… | ||
| How I created my PowerShell Escape Room | Michiel Hamers | 43m |
A home escape room uses a PowerShell main control script to orchestrate four Windows machines, a Surface RT, Raspberry Pi and micro:bit sensors, plus a beamer… | ||
| PowerShell on AWS CloudShell | Trent Blackburn | 46m |
Shows PowerShell 7 built into AWS CloudShell with preinstalled AWS CLI and AWS Tools for PowerShell modular modules that auto-update, plus 1 GB persistent… | ||
| year of improvements to your PowerShell editing experience | Sydney, Andy | 45m |
Extension delivers 12 stable releases and 36 preview releases, with 380,000 monthly stable users and 8.1 million total installs. A two‑year rewrite of the… | ||
| Taking Automation to Task | Steven Judd | 45m |
Windows Task Scheduler work is concrete: PowerShell uses the ScheduledTasks v1 cmdlets but they omit triggers and settings (no monthly trigger via cmdlets)… | ||
| Continuous Load Testing with GitHub Actions | Chris Ayers | 45m |
Uses GitHub Actions to run JMeter scripts against an app deployed by Bicep/ARM, invoking the Azure Load Testing service as the controller so nodes auto‑scale… | ||
| From PowerCLI to API – Taking Your Automation Skills to... | Joe Houghes | 51m |
Shows that switching from PowerCLI object wrappers to raw API calls cuts overhead and reveals more properties and methods: concrete timing examples 1.89s vs… | ||
| Writing Pester Tests at Scale | Jaap Brasser | 39m |
Claims concrete fixes for real scaling problems: migrating to Pester v5 breaks old import patterns so tests must load modules in a BeforeAll block; a module… | ||
| Getting Ahead By Deleting Code | Thomas Rayner | 01h 26m |
A PowerShell chatbot prototype that triggers existing scripts in a company messenger is described including the exact stack: PowerShell Universal for UI… | ||
| Beyond Pester 103: Applying a Testing Mindset | Glenn Sarti | 43m |
Shows concrete refactors: a monolithic AD cleanup script splits into functions (Get-OldAccounts, Exclude, Disable, Delete, Log) and Pester tests for 45‑day… | ||
| Parsing Event Logs for FREE | Phil Bossman | 46m |
Shows concrete PowerShell commands and measurements: use Get-WinEvent not Get-EventLog, prefer filter-hash tables for speed, and push work to remotes — filter… | ||
| Tempting Fate: Patterns & practices for shareable scripts and functions | Joel Bennett | 47m |
Concrete rules for shareable PowerShell code: always wrap Begin/Process/End blocks in try/catch around Begin/Process/End blocks and rethrow by default so… | ||
| ugit: git, PowerShell, and the object pipeline | James Brundage | 57m |
ugit wraps git so commands emit real PowerShell objects not text, using command interception, parsing git output with regex to produce PSCustomObjects, and… | ||
| Contribute to Docs like a Microsoft Insider | Sean Wheeler | 48m |
Shows the exact workflow: fork and clone the windows-powershell docs repo, create a working branch, push and open a PR to main (never live), use the GitHub CLI… | ||
| Best practices for automating Azure with PowerShell... | Aleksandar Nikolić | 47m |
Clear, actionable items: use Azure PowerShell on PowerShell 7 or higher and keep two module versions side‑by‑side so scripts can be tested when monthly… | ||
| Your Superpowered Windows Infrastructure Toolkit: Ansible,... | Josh King | 01h 28m |
Adds Ansible to a Windows toolkit and shows concrete results: a Linux control host runs Ansible against Hyper‑V to create two VMs from a VHDX (mount, resize… | ||
| Code generation From API Swagger Yaml schema to PowerShell module in 4 easy steps | Daniele Pecanha, Zhenhao Ye | 47m |
YAML OpenAPI schemas become a published PowerShell module by running Swagger Codegen, generating a C# client and PowerShell stubs, pre-processing refs to… | ||
| A revival of Azure Automation | Aleksandar Nikolić | 47m |
Azure Automation is repositioning as a process-automation service with live support for PowerShell 7.1 and 7.2 runtimes, hybrid runbook workers (Arc/on‑prem… | ||
| Leveling up on GitHub: Tips + Tricks for Beginners to... | Isaac Levin | 44m |
Shows concrete GitHub workflows and tools: a profile that updates every five minutes, editing in the browser with github.dev editor, full cloud development via… | ||
| Everything you wanted to know about working with and testing JWTs and JWKs | Tony Guimelli | 51m |
Creates and decodes JWTs with a PowerShell module, signs with x509 and publishes a JWKS via an Azure Function, and validates with new Json web token and test… | ||
| Documentation is UX! - Change my mind | Glenn Sarti | 43m |
Argues documentation is part of user experience and shows concrete results: a documentation pipeline built in under a day that generates cmdlet help with the… | ||
| Optimizing Visual Studio Code for PowerShell, 2023 Edition | Justin Grote | 01h 32m |
Demonstrates concrete VS Code changes that actually speed PowerShell work: timeline view keeps per‑file save history locally (with optional cloud changes… | ||
| Conjuring data with APIs | Stephen Valdinger | 01h 30m |
Shows how to turn OpenAPI/Swagger schemas into usable PowerShell functions using Invoke-RestMethod, demonstrates auth patterns (Basic and Bearer), builds a… | ||
| Invoke-Build: PowerShell in CI/CD | Joel Bennet | 48m |
Invoke-Build scripts run PowerShell build tasks that aim to make laptop and CI builds identical, using incremental inputs/outputs so net restore and net build… | ||
| PowerShell with SQL Statement Data Gathering | Bruce Stump | 39m |
PowerShell connects directly to the database with invoke-sqlcmd and a custom OpsVerification module instead of fragile web scraping or RPA, runs as a scheduled… | ||
| Deploying software and scripts using ... | Phil Bossman | 47m |
An open source PowerShell packaging toolkit claims to standardize app packages with a single folder structure, built‑in logging and localization, and… | ||
| Making Kubectl PowerShell friendly (no Crescendo, no JSON) | Anthony Howell | 43m |
Claim: kubectl outputs PowerShell objects without no Crescendo wrappers or no JSON parsing by intercepting kubectl stdout, inserting semicolons… | ||
| Amazing feats of the Abstract Syntax Tree | James Brundage | 49m |
Claims that PowerShell exposes its AST is public and that a transpiler can rewrite script blocks into runnable code are demonstrated with concrete tools… | ||
| A Complete DevOps Experience for .NET and PowerShell... | Brian Beach | 44m |
Claims a single AWS product delivers end-to-end DevOps for .NET and PowerShell by showing a live build: a serverless .NET Lambda scaffolded from a CodeCatalyst… | ||
| PowerShell & Your Next Career Steps: Oh the Places You'll Go | Adil Leghari | 01h 31m |
Community connections turn into jobs: a $2,000 self‑paid Summit trip in 2019 leads to a Chocolatey offer after a hallway conversation with Rob Reynolds, and… | ||
| Managing a Hybrid Infrastructure with PowerShell | Matthew Dowst | 41m |
Uses the Azure Arc agent plus PowerShell remoting and the Azure REST API to run commands across clouds and on‑prem, distinguishes set-azvm run command (creates… | ||
| BluebirdPS: From Nesting to Hatched and Flying | Dave Carroll | 47m |
BluebirdPS is a PowerShell module that wraps the Twitter REST API with a .NET C# output assembly, targets PowerShell 7, and implements OAuth1 and OAuth2 flows… | ||
| Shell Enhancements | Steven Bucher | 39m |
Shell shows concrete features not promises: PSReadLine predictive intellisense is on by default (history-based and extensible plugins), PSReadLine 2.3 beta… | ||
| AI generated code in at your service | Pierre Roman | 49m |
Shows GitHub co-pilot, copilot lab and copilot CLI in VS Code and terminals, with demos that auto-fill repetitive code, translate languages, explain functions… | ||
| Getting Ahead By Deleting Code | Thomas Rayner | 42m |
Claim: career impact grows by deleting other people’s code and mentoring, not by counting lines. Concrete practices: use PowerShell, enforce thorough code… | ||
| Remoting evolving - SSH | Danny Maertens | 52m |
Claim: PowerShell remoting is moving from WinRM to SSH. Demo shows installing OpenSSH (inbox on modern Windows), editing sshd_config to add subsystem… | ||
| Improving Shell usability -DSCv3 | Jason Helmick, Steve Lee | 51m |
Claims a new DSC V3 prototype decoupled from PowerShell and able to supports Windows Linux and Mac with configs authored in JSON or YAML and an… | ||
| Linux Shell Debates or: How I Stopped Worrying and Learned to Love PowerShell | Rob Pleau | 39m |
Claims that PowerShell passes rich .NET objects across the pipeline instead of byte streams, demos importing CSV to objects (no text parsing) and contrasts… | ||
| Building a serverless Discord bot in PowerShell and... | Anthony Howell | 48m |
Builds a serverless Discord bot using PowerShell 7.2+ and Azure Functions and ships code in a public repo for discord.net.powershell. Uses slash command… | ||
| WinGet PowerShell Modules | Demitrius Nelon | 34m |
An alpha PowerShell module for WinGet lands on the PowerShell Gallery with a COM API backend that mirrors the CLI and aims for parity; released pieces include… | ||
| Using git bisect to track down hard to find issues | Cory Knox | 44m |
Shows that git bisect pinpoints the exact commit that introduced a behavior change, turning a search across 270 commits into a handful of steps by using a… | ||
| nothing matches | ||