Yes seriously, that's the title of this post. And I'll explain why. Many of us use PowerShell (PoSH) for automation. If you are working on Windows and you don't use PoSH for automating and scripting basic tasks then you're missing out big. PoSH, which started as one of the first Open Source projects in Microsoft, is deeply ingrained into Windows. Both on the server and the client. It's a beautiful and powerful scripting language that allows you to not only manage you Windows OS but services such as BizTalk, SQL Server, IIS etc. The list is big.
Microsoft Azure also relies heavily on PoSH for automation, provisioning and management. PoSH is one of many ways you can manage you Azure cloud infrastructure so if you're not a big fun of that, there are more options. And I seriously hope you've embraced automation, no matter the tool. PoSH is built on top of .NET which is both a curse and a blessing. Curse because it has a tight dependency on the underlying .NET framework so if you're still on Windows XP, you've got limited options. (I sincerely hope that you are not, but it's worth mentioning it). However, the benefits of this dependency far outweigh the previous limitation. Because, for me PoSH offers many cmd-lets for scripting tasks. They abstract functionality and allow you to do some magical stuff. However, sometimes these cmdlets become too much or are unable to implement a piece of functionality. In that case, you can easily import any namespace from the .NET framework and code away as if you were writing an applicatin in C#. That's, in fact, my favorite part!
So PoSH comes with many cmd-lets and modules (internal and external) that allow you to do amazing things. The only problem with this is the sheer number of these cmd-lets.
Note: cmd-lets are PoSH functions designed to execute a specific operation.
For the Gui People, still in it's infancy, is a neat tool that allows you to search and drill down to each cmdlet using a Graphical User Interface (GUI). Sometimes having a visual representation can be extremely useful. Sure, you can run the
get-help cmdlet (think of it like
/help or man pages) to get more details about a specific command but how do you find that command in the first place? And do you find it as useful as what this tools has to offer? I believe that FTGP has great potential to become much bigger. I love its simplicity and usability with a nice workflow: find the module you want to manage and get a full list of cmdlets along with examples on how to use them.
I would encourage you to use it and give the maintainer Steve Jeffery @moss_sjeffery as much feedback as you can. As I said earlier, this project is still in its infancy so we can help make it something much bigger. The project will soon be OSS and will accept contributions. However, until then, please feel free to contact Steve or me directly.
As always, feel free to use the comments and let me know if you find it useful or have any suggestions.