Here is information about my books and training projects. I appreciate your support when purchasing copies. It helps pay the mortgage and allows me to continue what I'm doing. I always appreciate user reviews on appropriate sites like Amazon, as well as word of mouth recommendations. If I'm speaking at a conference or user group meeting, I'm more than happy to sign whatever you put in front of me.
Live Classes
In addition to the material on this page, I would also love to come to do PowerShell training for you and your organization. I think you'll need to set aside at least 3 days for any sort of fundamentals class. Most of my clients find 5 days is even better, especially if you want to dig into topics such Desired State Configuration (DSC) or Just Enough Administration (JEA).
All course material is drawn from my books and is almost always tailored to the client. During the class, I often adapt material and exercises "on-the-fly" to better meet the students' needs and abilities. I try to incorporate as much real-world and practical exercises, often drawing from the students' job and company needs.
I have taught many, many students, literally all over the world. Here is a sampling of possible courses:
- PowerShell Fundamentals
- Advanced PowerShell Scripting and Toolmaking
- DSC/DevOps Fundamentals
- DSC/DevOps Advanced
- Just Enough Administration
- PowerShell 7 Jump Start
- PowerShell Remoting Deep Dive
Even though people talk about "training" what they really need, and the approach I take is teaching. Training implies learning how to "click here" and "run this". Teaching means learning the material at a deeper level so that you can continue to learn and grow after the class ends. That's why my courses involve intense hands-on exercises and minimal PowerPoint.
Ideally, you will want to have a training environment where each attendee has access to a dedicated computer or laptop with at least 12GB or more of RAM and 100GB of hard drive space, that supports virtualization and can run the latest version of Hyper-V. Detailed setup instructions will be provided.
My teaching fees are per day and all-inclusive (i.e. travel expenses). I also try to schedule teaching engagements at least 6-8 weeks in advance. Short notice classes may be possible but usually with a premium to cover the typically higher travel expenses.
If it makes any difference, in addition to being a PowerShell MVP I was a Microsoft Certified Trainer for 13 years. I dropped the certification as I wasn't teaching a lot of Microsoft Official Curriculum. If you are interested, please drop me a line about your learning needs.
Books
This is a listing of most of my books that are still in print or relevant. For beginners the recommended reading order is Learn Windows PowerShell in a Month of Lunches - Learn PowerShell Scripting in a Month of Lunches - PowerShell Scripting and Toolmaking. In between the Lunches books I'd also recommend going through the PowerShell Practice Primer.
The PowerShell Practice Primer (LeanPub 2018)
I have wanted to create a book like this for years. Once you've started learning PowerShell the best way to improve and learn more is by doing. But it can be challenging trying to figure out what to do with it. This book consists of 100 simple, beginner exercises to test your PowerShell skills and improve them. Most of the solutions require no more than a few lines of PowerShell commands that you would type at the console. No scripting is required or expected. This book is targeted for someone who has completed Learn Windows PowerShell in a Month of Lunches, or equivalent experience. When you purchase the book from Leanpub you also get a number of downloadable extras including a script file version of each exercise chapter complete with region markings so that you can open it in the PowerShell ISE or Visual Studio Code and use the editor to take notes and develop your solution. This is the real learning goal: how you figure out a solution is where you really learn how to use PowerShell.
PowerShell Scripting and Toolmaking with Don Jones(LeanPub 2020)
This is the book Don and I have wanted to write for some time and the LeanPub agile publishing module makes this a very attractive book. The book covers all of the practices and patterns you will need to create useful PowerShell scripts and tools. You need some basic PowerShell skills to get started (see the next book) but after that, this book will get you ready for the next level. There is naturally some overlap with the Learn PowerShell Toolmaking in a Month of Lunches book, but this title allows us to dive into areas we couldn't before and the "Forever" edition makes it easier for us to provide updates and correct errors.
Learn Windows PowerShell in a Month of Lunches 3rd Ed. with Don Jones. (Manning Publications, 2016)
This is the for IT Pros who need to jump-start their PowerShell skills. A month of easy to follow lessons to get you started on the road to PowerShell success. Highly recommended by many in the PowerShell community. This edition has been updated to reflect changes in PowerShell v5, although the fundamentals haven't really changed since PowerShell v3. Once you've finished this, you might want to consider the next book in this list.
Learn PowerShell Scripting in a Month of Lunches 3rd ed. with Don Jones (Manning Publications, 2017)
You have some PowerShell skills at the command prompt. Now take them to the next level and learn how to create PowerShell tools. Do you want to be the person who runs the command or the person who creates it? Which job sounds more interesting and most likely pays better? This book will take you from scripter to toolmaker in a month of lunches and you don't have to be a developer. This edition has been updated to include PowerShell v5 and has some slight restructuring over previous versions.
PowerShell in Depth: An Administrator's Guide 2nd ed.(with Don Jones and Richard Siddaway, Manning Publications, 2014)
A complete reference guide to PowerShell 4.0, targeted at IT Pro's written by 3 PowerShell MVPs with decades of experience. It is assumed you have some experience with PowerShell. This is not the first book for an absolute beginner. Go through the two Lunches book first, then get this. For everyone else we want this to be the book you keep on your desk.
Out of Print
Managing Active Directory with Windows PowerShell: TFM 2nd Ed. (SAPIEN Press 2011)
This second edition of my book shows how to manage Active Directory using the Microsoft Active Directory provider and cmdlets or the free Active Directory cmdlets from Quest Software. Some material from the first edition, such as using ADSI, has been moved to appendices.
Out of print but you might find used copies for sale somewhere.
WSH and VBScript Core: TFM (SAPIEN Press 2007).
A complete reference guide to VBScript for IT Pros packed with real-world examples. Not sure if this is in print yet, or even if you really need it since your automation language and tool today should be PowerShell.
Learning Video
I've been creating video-based learning material for over 10 years. Today you can find all of my work at Pluralsight. Here is a sampling of my PowerShell-related courseware.
Windows PowerShell and Regular Expressions
Many IT Pros, at least those from the Windows world, think regular expressions are hard or don't know why they might want to use them. Why bother learning and using them in your PowerShell scripting or even at a console prompt? In this course, Windows PowerShell and Regular Expressions, you will learn the key regular expression concepts and techniques that you can immediately put to use in PowerShell.
Your First Day with PowerShell
You've decided to take the leap and begin learning PowerShell, but you don't know where to begin or what to do first. In this course, Your First Day with PowerShell, you'll learn the fundamental knowledge of Powershell and how to utilize the program efficiently. First, you'll explore the critical skill of how to use the Powershell help system. Next, you'll discover how to use commands and be introduced to aliases, cmdlets, providers, and PSDrives. Finally, you'll learn how to configure, navigate, and get the most out of the different PowerShell consoles. By the end of this course, you'll develop an understanding of the fundamental knowledge to efficiently utilize Powershell.
So, you've been reading blog posts, searching the Internet, and running commands in PowerShell, although you really don't understand what you are running or why it works the way it does. In this course, Putting PowerShell to Work, you'll learn how to build your skills to be a more efficient PowerShell user. First, you'll discover how to use PowerShell effectively from a command prompt. Next, you'll explore how objects work in the pipeline with cmdlets. Finally, you'll gain an understanding of how PowerShell’s formatting system works, and why. By the end of this course, you'll have the necessary knowledge to begin making PowerShell work effectively for you. Software required: Windows 10 system.
Windows PowerShell is a terrific tool, but naturally, you need to use it more than just on your local computer. In this course, PowerShell on the Network, you’ll learn how to put PowerShell to work for you in a networked environment. First, you'll discover how PowerShell handles traditional or legacy remoting. Then, you'll explore the modern way PowerShell works in a network environment, and how easy it is to run a command on one or 100 remote servers. Finally, you’ll learn how to get management information from your servers with WMI and the CIM cmdlets. When you’re finished with this course, you'll have the foundational knowledge for remotely managing servers and desktops in your network, and you'll be ready to take on more advanced PowerShell networking topics.
Automation with PowerShell Scripts
You have reached a point in your PowerShell experience where you want to move beyond typing commands at a prompt. You want to automate processes and tasks so that they are consistent, documented, and easy to run. This course is intended to provide the beginning scripting knowledge you need to begin automating your workload with PowerShell.
Play by Play: PowerShell from Idea to Action with Don Jones and Jeff Hicks
This course is something a bit different. I spent an hour with Don Jones in front of a camera talking about the process of using PowerShell to solve a problem. In the span of about an hour, you'll get a better understanding of how you might move from a problem or idea and how to begin solving it with PowerShell. There is a lot of banter and this is a rare opportunity to see Don and me together. I had a blast making this and hope you find it not only educational but entertaining as well.
PowerShell Remoting Fundamentals
I created this course to teach PowerShell beginners how to get started with PowerShell remoting. The course covers the basics about setting up remoting, how to use it in one-to-one situations as well as running commands on many remote servers at once. Also covers remoting security, including using SSL and topics such as Implicit Remoting and Disconnected Sessions.
Advanced Windows PowerShell DSC
This is the followup course to the DSC Fundamentals. This includes more advanced material such as working with certificates and setting up SMB or HTTP Pull servers. The course includes in-depth walk-throughs of configuring a Windows-based server with DSC as well as configuring a Linux installation.
This is my introductory course to using Desired State Configuration (DSC) with PowerShell 4.0. It covers the concepts, terms, and basics of using DSC with an emphasis on using the Push model.
I hope you find my efforts worth your time and money. Thank you.