April Chicago PowerShell Users Group (CPUG) Virtual Meetup


Details
Overall Agenda (times are approximate and may shift slightly):
5:30 – 5:35 PM CDT: Welcome and Agenda Review
5:35 – 5:55 PM CDT: “Who Doesn’t Love a Progress Bar?” by Daniel Stutz
5:55 – 6:00 PM CDT: Q&A
6:00 – 6:20 PM CDT: “Pure Speed: Exchange Online v2 Commands Versus v1 Commands” by Daniel Stutz
6:20 – 6:25 PM CDT: Q&A
6:25 – 6:45 PM CDT: “Introducing PowerShell v7” by Ryan Kellerman
6:45 – 6:50 PM CDT: Q&A
6:50 – 7:10 PM CDT: “What is my Program Doing and Where Am I: Now Without a Graphical Debugger” by Sam Hansen
7:10 – 7:15 PM CDT: Q&A
7:15 – 7:35 PM CDT: “Exotic PowerShell: Running PowerShell in Interesting Places” by Frank Lesniak
7:35 – 7:40 PM CDT: Q&A
7:40 – 8:00 PM CDT: “Making Copies of Objects in PowerShell – More Difficult Than You Think!” by Frank Lesniak
8:00 – 8:05 PM CDT: Q&A
8:05 – 8:30 PM CDT: Closing Remarks, and Scheduling Buffer
Session Abstracts:
“Who Doesn’t Love a Progress Bar?” by Daniel Stutz
Tired of watching the terminal selector blink endlessly while you try to pull 1000 mailboxes? Have you ever wondered how far you are at any point in a script? Sometimes it feels like eternity but attend this talk and you will be able to add a progress bar to almost any script in PowerShell!
Attendees will leave this talk with the basic understanding of how to implement a progress bar as well as some use cases as examples.
“Pure Speed: Exchange Online v2 Commands Versus v1 Commands” by Daniel Stutz
Finally, pulling mailbox information and other Exchange data will no longer be the equivalent of watching paint dry. The new v2 commands for Exchange were just released, but how much faster are they in reality? Microsoft claims the new commands to be up to four times as fast but in this talk, we will see if these claims hold true.
“Introducing PowerShell v7” by Ryan Kellerman
A sort of State of the Shell; how it all fits together, and what you should know to get started thinking and working in PowerShell 7. Microsoft in recent years has gone in several different directions with PowerShell (and .NET in general) but the work that went into this latest release and upcoming releases is starting to pull things back together again.
“What is my Program Doing and Where Am I: Now Without a Graphical Debugger” by Sam Hansen
Are you working on systems where you can’t install your favorite PowerShell editor and debugger? PowerShell’s built-in debugging functions to the rescue!
Attendees will leave this session with an understanding of how to use PowerShell’s built-in debugging tools with a demo of the full functionality, built-in shortcuts, and Get_PSCallstack to better debug errors occurring in your code.
“Exotic PowerShell: Running PowerShell in Interesting Places” by Frank Lesniak
You may have heard of Azure Cloud Shell – which allows you to run PowerShell within a Linux container hosted in Azure. But there are lots of other cool places to run PowerShell: macOS, ARM computers, Raspberry Pis, and even Frank’s arcade machine. In this quick demo, Frank will show off some of these “exotic” ways to put PowerShell to work.
“Making Copies of Objects in PowerShell – More Difficult Than You Think!” by Frank Lesniak
$x = $y; $x is now a copy of $y, right? Nope!
Ever try and make a copy of an object in PowerShell and then write changes to the copy, only to find out that those changes messed up the original object? You are not alone. PowerShell uses the equals sign to assign a pointer to an object, not to make a copy of it as you might expect. In this talk, you will see why copying objects in PowerShell is very confusing and unexpectedly tricky, and knowing how to use backward-compatible and reliable code for dealing with this problem.
Frank will share code written to allow you to copy objects in PowerShell reliably; he will give a demonstration of it in this talk.

April Chicago PowerShell Users Group (CPUG) Virtual Meetup