Powershell Basic Training Program
If you decide to run a marathon, one of the first things you have to do is choose a training program. Training programs prescribe incremental steps that you’ll need to take in order to attain your goal. In running, this usually involves gradually increasing your weekly mileage and long distance runs for several months before the race. Training programs are usually categorized as beginning, intermediate, or advanced based on your experience and goals.
After giving my first presentation on Powershell yesterday at the Topeka User Group meeting, I feel that I am finally ready to start planning out an intermediate training program for myself so that I can be properly prepared for my next goal, which is to present an Advanced Powershell session at Tulsa Tech Fest 2007. The session will cover how to extend Powershell through snapins (PSCX, Quest AD CmdLets), tools (PowerTab, PS Analyzer, PrimalScript), custom cmdLets (Powershell SDK), and custom providers (SQL, VSS).
Before I move on to my new program, however, I’d like to take a moment to reflect on how I would have done things differently over the last several months if I had to start my learning from scratch again. Here is a basic program that I would recommend based on my experience with these resources. It is broken into three stages based on complexity so I recommend you get through all the resources in the first stage before moving onto the next, but the order within the stages doesn’t matter.
Stage 1
- WebCast: Scott Hanselman – Developer Productivity Tools Part 3
- WebCast: PowerShell Week - Day 2: CmdLets
- Tutorial: MS Scripting Center Task-Based Tutorial
- PDF Quick Reference: PowerShell Cheat Sheet
- Podcast: HanselMinutes – Monad (show 11)
- Blog post: Learning PowerShell without leaving the command line
Stage 2
- CmdLet Exploration: Try all built-in CmdLets using Get-Command, Get-Help, and Get-Member. Don’t forget the -example param for Get-Help
- Podcast: Hanselminutes – Interview with Jeffrey Snover (Powershell Architect)
- Podcast: Hanselminutes – Interview with Bruce Payette (Powershell Dev Lead)
- Snap-In: Install and learn PSCX (see my last post for overview)
- Tool: PowerTab (provides intellisense)
- Demo SQL Provider: Download and install info on this Powershell Team Blog post.
Stage 3
- Book: Powershell in Action by Bruce Payette
- WMI Exploration: If you want to do anything against remote computers, you’ll have to master WMI. Use gwmi -list | ?{$_.name -like ‘win32_*’} to see a list of useful objects and start exploring.
- Sample Scripts: Script Center Repository
- Blog: Powershell Team
- Blog: Keith Hill
- Blog: Powershell Guy
- Blog: Dmitry
Of course, these are only a fraction of the resources available, but these were the ones I found to be the most helpful and concise. I’ll post my intermediate training plan as soon as I get it all worked out.
Popularity: 5% [?]
Comments(2)


ACE !!
[...] Powershell Basic Training Program | Caffeinated Coder [...]