RTFM

I just got my copy of Powershell TFM by SapienPress.  I was lucky enough to get an advance copy last year at TechED, but it only had the first 4 chapters.  Anyway, the book is beautiful, and very complete.  I've only spot-checked the final copy, but I already know that reviewing it will almost be perfunctory.  Don Jones wrote this, and not only have I never seen him put ou

I just got my copy of Powershell TFM by SapienPress.  I was lucky enough to get an advance copy last year at TechED, but it only had the first 4 chapters.  Anyway, the book is beautiful, and very complete.  I've only spot-checked the final copy, but I already know that reviewing it will almost be perfunctory.  Don Jones wrote this, and not only have I never seen him put out crap, I've thoroughly enjoyed everything I've seen from him.  I reviewed his VBScript videos a while back, and you can see it here

There are a couple things I like about this book.  First of all, I'll read anything with such an enjoyable title:  Powershell TFM.  Can you get a better title than that?  Of course, on the cover they have a definition of TFM, which they translate as 'The Foremost Manual'.  That's the only thing that gets me.  If you're going to have such a great title, go all the way.  Don't hide behind your mother's skirt and peek out from behind.  We all know that it really stands for 'The F'ing Manual'.  They even make mention of the old saying RTFM (without translation I might add) right on the front cover.  So I say, if you're going to have a TFM, have a proper one... go all the way with it and say what it really is.  And for those of you who don't know, RTFM is 'Read The F'ing Manual'.  It's what you tell someone when they ask you a really basic question about something.

The other thing I like about it is Don Jones.  Like I said, I've enjoyed his stuff for quite some time and he really has a way of explaining things in not only an easy-to-understand, and complete way, he also tends to go in the right order.  I've reviewed many books and videos, and sometimes the order people choose to teach things in is really confusing.  Jeffery Hicks co-wrote this with Don, and I'm sorry to say I'm not familiar with his work at all... sorry Jeff.

Now, why am I mentioning this in a DBA blog?  Well, because Powershell is going to be important to us all.  I don't see it going away, it's simply too powerful of a tool to let go.  I do believe it'll take some time to catch on, but as soon as Exchange 2007 starts taking hold, and Vista, and Longhorn are in tight too, you'll start to see people enjoying the flexibility of Powershell.  I actually believe that Powershell could replace SMO for SQL management.  There's no reason it wouldn't.  MS has already said that Exchange 2007 was written to be fully compatible with Powershell, so it's only a small leap to making that same requirement of SQL Server.  I'll ask them what their plans are for SQL and Powershell when I have my next talk with them in a couple weeks.

I also think that DBAs should start learning Powershell now.  It's an incredibly powerful scripting environment for Windows, and something we've needed for a long long time.  I personally get called into writing VBScript in Windows fairly often, so I can't imagine that everyone else is escaping that task.  Like I've said on a number of occasions... DBAs often get called on to do all kinds of things that are officially not part of our jobs, simply because we know how.  We've always had to script DTS in VBScript, so it's only natural that they ask us to do the Windows VBScripts if it needs doing.  So what kinds of things have I had to script?  Well, I've had to script performance collections a lot.  If your dept doesn't have a lot of budget for expensive monitoring tools, then you do what you can.  So I end up writing different WMI scripts and performance counter stuff and log it all to a DB so I can either alert or report off of it.  This is exactly the kind of stuff I'll be looking to Powershell to take care of for me because it's so much richer than VBScript.  I've also had to script service stop/start scenarios to help clear user connections before major DB operations.  I've also written a load balancing script for a TS farm.  And let's not forget the WMI/VBScript for matching LUNs up with drive assignments.  Anyway though, the point is that DBAs have plenty of occasions to flex their scripting muscles outside of SQL, so learning Powershell is the next logical step. 

But why should you learn it now?  Why not wait until it's a little more ubiquitous?  Well, again, you don't want to be a complete beginner when the market shifts in that direction do you?  You want to have a few months at least under your belt, and if possible, a year or so.  It's amazing... though you think you won't need it now, that's only because you don't have it in your toolbox.  Once you see the types of things you can do, you'll go out of your way to script projects in Powershell. 

Now, for the setup.  Do you have to actually have Vista or Longhorn to run Powershell?  Actually, Powershell didn't make it into Vista, so you have to download it separately.  There's also a version for XP, so you can start using it right away.  Here's where you can find out more and even download Powershell.  If you're not sure why you should even learn it, then get this book because Don and Jeff tell you exactly what it's all about and why.  And trust me... when another year has gone by and you still haven't done anything about Powershell, you'll hear my words in your sleep.

So seriously... RTFM guys.

Related:

Copyright © 2007 IDG Communications, Inc.