2011 PowerShell Deep Dive
New this year, TEC and Microsoft offer a PowerShell Deep Dive, with sessions and community networking opportunities you won’t find anywhere else. The PowerShell Deep Dive will be Monday through mid-afternoon Tuesday during TEC. We are offering a special price pass for delegates who wish to attend only the Deep Dive; please note that this is not a full TEC pass.
The PowerShell Deep Dive schedule includes attending the TEC keynote of your choice on Monday morning. Then, the PowerShell specific sessions will be of two types:
1) Regular Sessions
Regular sessions will be integrated into TEC, across all four conferences.
2) Deep Dive Sessions
Deep Dive sessions will be comprised of a 10-15 minute intro presentation/demo with a follow-up interactive discussion with delegates. Topics will be very targeted and include drills.
See below for Session Descriptions.
PowerShell Deep Dive 2011 Videos
Speaker: Jeffrey Snover
Jeffrey Snover on PowerShell Deep Dive 2011
Speaker: Don Jones
Don Jones on PowerShell Deep Dive 2011
Speaker: Dan Harman
Dan Harman on PowerShell Deep Dive 2011
Speaker: Hemant Mahawar
Hemant Mahawar on PowerShell Remoting, Hosting, Delegation, and Deep Dive 2011
Pre-Conference Workshop:
Windows PowerShell Pre-Deep Dive Crash Course
Presented by: Don Jones
Get the most from the PowerShell Deep-Dive by quickly coming up to speed on intermediate topics and preparing you for the full-court, heavy-duty discussions and breakout sessions of the main track. Windows PowerShell author, MVP, columnist, and trainer Don Jones (Microsoft TechNet Magazine, WindowsITPro.com, Redmond Magazine, and more) takes you from just past the basics to just short of expert-level PowerShell topics. You’ll need to bring a background in scripting or programming (any language will do) to get the most from this course, which will cover things like Advanced Functions and Modularization, details on pipeline binding, information on the Extensible Type System and formatting system (and how to customize them), using .NET Framework classes from within the shell, and more. The focus will be on PowerShell-specific techniques and “gotchas,” with a strong emphasis on semantics, patterns, and practices that help make an effective PowerShell user.
Workshop is 8 to noon Sunday.
PowerShell Sessions:
Advnaced Managing Group Policy with PowerShell
Speaker: Darren Mar-Ella
This is an advanced session that will drill into a variety of GP management tasks using Microsoft’s own GP Module, native AD PowerShell functions and the author’s own (free) scripts and modules for managing GP. We’ll cover managing the lifecycle of GP (creating, linking, permissioning, modifying settings), creating inventories of and basic health checks on your GPO infrastructure, as well as look at the ability to report on the status of GP processing across your network.
An intro to PowerShell and Why You Need It
Speaker: Brandon Shell
Join us to learn why PowerShell is important in the VDI world as we dive directly into practical use and provide an intro into PowerShell. The session will cover the basics and provide all the information you need to start using PowerShell to make your life easier. This session will use SBC related scenarios that will provide practical and actionable examples you can start using right away.
Automating BPOS Exchange Administration with PowerShell and C#
Speaker: Jerry Camel
BPOS Exchange provisioning is a process that is becoming more and more popular and customers are already asking for BPOS to be integrated into Enterprise IDM solutions. We will take a look at the BPOS Exchange administration cmdlets along with techniques on using them from C#. We will keep an open architecture that allows for future proofing our compiled code against changes to the PowerShell commands and we will discuss ideas on incorporating the technology into an XMA.
Defining domain-specific vocabularies using Windows PowerShell
Speaker: Kirk Munro
PowerShell was built from the ground up to be a rich, extendible scripting language. While it is of paramount importance to keep commands you add to PowerShell consistent with the rest of the scripting language, there are domains where great elegance and simplicity can be achieved by stepping away from this model and creating domain-specific vocabularies instead. What is a domain-specific vocabulary and how is it an important extension point for Windows PowerShell? What domain-specific vocabularies come with PowerShell? What are some examples of domain-specific vocabularies that can add great value to PowerShell? How do you go about creating a domain-specific vocabulary? How do you create a domain-specific vocabulary of commands while maintaining consistency with the rest of PowerShell commands? Come to this session and join PowerShell MVP Kirk Munro in a discussion about the use of domain-specific vocabularies in PowerShell, where you will learn the answers to these questions and more.
Files, FIM, & PowerShell
Speaker: James Booth
Although FIM is moving more and more towards life in the cloud, there are still many cases where you will need to process good old-fashioned text files on disk for synchronization and reporting. PowerShell is the ideal tool for dealing with these files. Of course, PowerShell right out of the box does a great job of plain text and csv files. Using this as a jumping off point, this session will show you how to extend PowerShell’s basic capabilities to handle AVP and LDIF files, process XML run histories and MA configurations, and automate archiving of logging data. Along the way we will make some slight diversions into PowerShell’s Extensible Type System and the new *-Job cmd lets in PowerShell v2. Come to this session and you will leave with a deeper understanding of PowerShell’s potential, as well as a handy toolkit of scripts that will make all of your file processing jobs easier.
Managing Hyper-V with Windows PowerShell
Speaker: Kirk Munro
Unlike most Microsoft server platforms, managing Hyper-V with Windows PowerShell is not as straightforward as it should be. Hyper-V management tools do not include a module or snapin with well-designed cmdlets to facilitate PowerShell-based management and automation. Without cmdlets available, what are your options? There are actually quite a few options available, most of which are free, but some of these come with a significant learning curve. In this session Kirk Munro, the world’s first self-proclaimed Poshoholic, will show you how to sort through the various options that are available and get the most out of your Hyper-V management experience with PowerShell. He will demonstrate how to perform essential management tasks such as provisioning VMs, modifying VM configuration, and changing settings on the hypervisor itself. Topics covered will include Hyper-V management with PowerShell using WMI, freeware modules and solutions, and commercial cmdlets in Microsoft System Center Virtual Machine Manager 2008 R2.
Mastering Format and Type Extensions
Speaker: Jeffrey Hicks
WIndows PowerShell is designed with administrators in mind. The goal is to present the most useful information to you with the least amount of effort. But sometimes you need something out of the box. Do you have a preferred way to view process objects that requires scripting every time? Does your script create a custom object that you would like formatted in a specific manner? This session will explain PowerShell’s formatting system and how to master it with your own formatting and type extension files, including how to incorporate these files into your scripts and modules.
WMI Gotchas and Hidden Gems
Speaker: Richard Siddaway
WMI has been around for a long time in the Windows environment. It has a reputation for being very powerful but very difficult. PowerShell has changed this to a certain degree:
• It’s easier to use
• It’s still relatively undocumented.
PowerShell opens up WMI in a number of ways but introduces a number of “gotchas”. A number of key questions will be answered:
• Is Invoke-WmiMethod always the answer?
• How can I change WMI information?
• How does WMI authentication and authorisation work?
• Should I use explicit remoting, implicit remoting or WMI?
• WMI overlaps with some cmdlets e.g. Get-Process and Win32_Process – which should I use when?
• How do I get the best of WQL? Do I use queries or filters?
The key take aways from this session will be:
• WMI offers a treasure trove of functionality to the administrator
• It’s not as difficult as it was
• The gotchas can be overcome
Deep Dive Sessions:
FIM PowerShell Deep Dive
Speaker: Craig Martin
Look at me, I know PowerShell, I know FIM. Now look at you, need to know FIM, you need to know PowerShell. Look at me, I have mad mountain biking skills and will be riding my bike up and down those Red Rocks. Now look at you, you can use PowerShell and today’s session to help you manage FIM like a guru. Come to this session to see real PowerShell scenarios to make you look like me(except for the biking), including the following:
• Automate FIM deployment tasks
• Discover the FIM extensibility points to enable scenarios that are not yet very out-of-the-box
• Automate FIM operational analysis
Leverage PowerShell with vbScript and vice versa
Speaker: Sean Kearney
A Session showing Administrators how they can leverage Powershell with vbScript and vice versa. Could be one half just Console / One half just vbscript. The importance for an Administrator / ITPRO is to know not just that “Powershell can Leverage and merge with the Legacy” (Since not everybody is running Windows 7 Server 2008R2 setups) but in how it can be achieved.
First half could involve working with standard fare console stuff (NETSH, Sysinternals) – Second half in stuff like vbScript needing to launch NEW powershell stuff (maybe even remoting from a vbScript) or something like that.
Mastering Format and Type Extensions
Speaker: Jeffrey Hicks
WIndows PowerShell is designed with administrators in mind. The goal is to present the most useful information to you with the least amount of effort. But sometimes you need something out of the box. Do you have a preferred way to view process objects that requires scripting every time? Does your script create a custom object that you would like formatted in a specific manner? This session will explain PowerShell’s formatting system and how to master it with your own formatting and type extension files, including how to incorporate these files into your scripts and modules.
PowerShell Deep Dive: Defining domain-specific vocabularies using Windows PowerShell
Speaker: Kirk Munro
PowerShell was built from the ground up to be a rich, extendible scripting language. While it is of paramount importance to keep commands you add to PowerShell consistent with the rest of the scripting language, there are domains where great elegance and simplicity can be achieved by stepping away from this model and creating domain-specific vocabularies instead. What is a domain-specific vocabulary and how is it an important extension point for Windows PowerShell? What domain-specific vocabularies come with PowerShell? What are some examples of domain-specific vocabularies that can add great value to PowerShell? How do you go about creating a domain-specific vocabulary? How do you create a domain-specific vocabulary of commands while maintaining consistency with the rest of PowerShell commands? Come to this session and join PowerShell MVP Kirk Munro in a discussion about the use of domain-specific vocabularies in PowerShell, where you will learn the answers to these questions and more.
The PowerShell Library for Hyper-V: How it was Built, and How it is Used
Speaker: James O’Neil
The “PSHyperV” PowerShell library has had over 40,000 downloads from Codeplex.com (with another 25,000 downloads of the documentation).
With 120 functions, and over 5,000 lines of PowerShell 600 lines of formatting XML and a megabyte of on-line help it is one of the biggest PowerShell community projects as well as one of the most popular.
This session will look at the lessons learnt on the project, the WMI techniques used in building the library, how the monolithic V1 was broken into manageable pieces , how functions were designed to be supportive to users and prevent them from accidentally doing damage and it will show the library in use managing HyperV.
There will be more Deep Dive Sessions to come…
Seats are limited! To take advantage of the TEC 2011 PowerShell Deep Dive discount, email TEC2011@quest.com.

















