powershell in action
PowerShell in Action is one of the first books about PowerShell to be published. Don't tell Manning, but I planned on buying the book before they gave me a review copy. Worked out on both sides, I think.
Anyways, I thought this book was great. It's much more in depth than O'Reilly's Monad, but I think that book was more of a rushed preview. It's split up into two parts: the first teaches the language itself -- syntax, variables, looping, etc. The second part shows the reader how to use and apply the language -- such as reading files and working with .NET, WMI, and COM. Together, the two parts make an excellent PowerShell course.
I've taught myself several different scripting languages over the years, so I was really tempted to just glance over the first section. I'm glad I didn't. Bruce did an excellent job at teaching the basics while not treating the reader like a total beginner. There was a perfect balance between basic concepts and more advanced techniques. A great example of this is the coverage of the switch statement. Everyone who knows at least one language knows how switch works, but Bruce went a step further and demonstrated how this simple conditional can be a powerful text processing tool if used the right way.
Unfortunately, you won't be an expert in .NET or WMI after finishing the second section, but at least you'll be familiar with the concepts and be able to move on on your own. The best thing about this section was the massive amount of example code given. So while learning about all the different ways PowerShell can be used, proper scripting form and techniques are staring you right in the face.
There's no better way to learn PowerShell than from someone on the core PowerShell team -- and that's exactly what you get with this book. I thought it was a great read and really learned a lot from it. I give it a 9 out of 10.
