Book coverI like PowerShell books. Every time I hear about a new one, I am impatiently waiting, or – even better – I immediately buy it in some version of early access program. That’s why I like Manning‘s MEAP (Manning Early Access Program). If you don’t know it – you’ll pay a price for electronic version of book and as soon new chapter is finished by author, you receive it in PDF. You can read the book during it’s creation and you can also post your comments (or errors you find) to Author forum so you can influence final version of the book. I like it as it’s a way how I personally can give something back to PowerShell community.

Last addition to my library is book from Don JonesLearn Windows PowerShell in a Month of Lunches. Don is well known author, speaker and trainer and he’s also PowerShell MVP. I like what Jeffrey Snover wrote about Don: “If you ever find yourself thinking Don is wrong about something he says about PowerShell, your best bet is to double check first. I invented the thing and that is MY policy. (seriously)”. You can find whole “funny” discussion here.

Basic idea of the book is easy – every chapter will take you an hour so you can study it during your lunch. I did it this way during Early Access period and can say it works. I took my notebook to our company’s cafeteria I spent nice times with learning. What’s inside the book? You can find whole table of contents at Manning web but let me mention the chapter I found most useful for me (Please note – it’s my personal opinion, don’t want to tell that other chapters are not useful!).

  • Chapter 3: Using the help system – if there should be just one chapter to read – it’s this one. As PowerShell contains really great help system, if you learn how to use it, you are on a good way to be successful. Sometimes I am surprised how people are unwilling to read help.  For me – help is the key to PowerShell mastery.
  • Chapter 6: Objects: just data by another name – Whole PowerShell is about objects, so you need to understand what the object is, what is method or property.
  • Chapter 7: The pipeline, deeper – another core concept. It’s first touched in chapter four but in this chapter you’ll see what’s ByValue, ByPropertyName or how to use custom properties using Select-Object cmdlet.
  • Chapter 13: Working with bunches of objects, one at a time – this chapter shows you when (and why!) to use “direct piping” to cmdlet (Get-Service | Stop-Service), when use ForEach-Object (Get-Service | ForEach-Object { $_.Stop() }) and also mentions some other methods. In this chapter you’ll find how to use pipeline effectively.
  • Chapter 17: You call this scripting? – here you’ll find how to create scripts with parameters and it’s own help. This chapter also contains description how pipeline(s) works when calling multiple commands and you’ll learn a bit about scoping.
  • Chapter 21: Creating your own “cmdlets” and modules – shows you how to make your functions “pipeline ready” and how to reuse them using modules.
  • Chapters 24 & 28 – those are a bit special and contains some useful tips/tricks/gotchas you’ll find during your learning process.

Every main chapter of the book contains also Lab section, so you can practice what you learned. Most chapters contains also Common points of confusion part – here Don mentions commons mistakes he frequently see when teaching PowerShell – so you can avoid it in your life.

There is also support web page you can use. It’s accessible at morelunches.com and contains all lab answers. Best part of the web are video demos for every chapter – I found it pretty useful. You can find more videos at Don’s YouTube Channel.

Even this book is intended for administrators who are starting with PowerShell, I can say that also intermediate users can learn something useful. Starting today, if someone ask me what to recommend for PowerShell newbie, this book is my answer.