Much like a top mechanic, I keep a well-organized toolbox filled with up-to-date, high quality tools, ready to tackle any management, troubleshooting or automation project of the day. With the recent release of SAPIEN Technologies new 2014 lineup, I have some new tools and updates.
Wanna' see what's in my toolbox? I'm happy to show you around on one condition. I'm interested in what you have in your toolbox, so share and we can discuss!
As an admin working heavily with products such as Microsoft Exchange, Exchange Online, System Center and others, I find that I need many different tools depending on the management task at hand. My Windows 8.1 desktop has everything neatly arranged on the taskbar so the right tool is always a click away, but I also have my own secret aliases to launch a variety of my tools from the Windows PowerShell Console - including Microsoft Word just in case I feel the urge to write a blog about something new I've learned. So, here are some of the tools in my toolbox and how I use them.
Windows PowerShell Console
I have friends, colleagues, and several students that laugh when I open the Windows PowerShell Console to launch my browser. I admit that placing a shortcut on my desktop or taskbar is probably a better approach, however I'm almost always in the Console. I have the Console open to "check" on things, run reports, manage or troubleshoot a problem, basically using the Console as the interactive tool it was designed to be. I can easily get help on a cmdlet, launch additional tools, and run my scripts. So, when you see me open the Console and type:
PS> Start iexplore www.bing.com
It's "ok" to laugh, it's the habit of always having the Console open and at my fingertips. But the Console is not the only tool in my toolbox. I need to automate and build reusable solutions and the console just isn’t the place for that.
Yes, I use Notepad from time to time. Normally it's for something simple and short, like modifying my profile or quickly copying a one-liner from the Console. For me, this is an old habit from years of scripting when I would walked up to computer and there was nothing else installed. Many of us that started out with PowerShell 1.0 continued to hone the "Notepad" skills. For new admins starting with PowerShell, Notepad is probably not something you need in your toolbox; we have the built-in ISE now and makes Notepad look like an old rusty screwdriver.
Windows PowerShell ISE
Let's face it, the ISE is great and I use it all the time. Syntax highlighting, a GUI Console with easy-to-use cut and paste operations to make a new script, who wouldn't use this over Notepad. The ISE is a great tool for working out an idea, learning and creating a new one-liner, building a function or writing out some automation. Everyone needs this as part of their toolbox.
But wait…there's more…
My toolbox doesn’t stop with the ISE. Many of my projects require working on Modules of cmdlets, longer and more complicated automation scripts and sometimes I need more features (like package and deployment) that the ISE doesn’t provide. Does this make the ISE bad? NO! The ISE is great for what it is designed to do, that’s why I have a toolbox of many tools and not just a hammer.
Many of my friends are professional developers and rely on professional development packages like Microsoft Visual Studio and Apple Xcode. The reason for them is the added tools and features that help them accomplish their tasks. As a PowerShell Admin working on more and more complicated solutions, I too need additional tools. While I may not need Visual Studio yet, I could use the help from a professional development package.
SAPIEN PrimalScript 2014
Disclaimer: I've used PrimalScript for a very long time and I admit I'm a fan of SAPIEN Technologies. They have earned my respect over the years by providing me with high quality tools that make my life easier. It's that simple. PrimalScript has 50 different parsing languages - so no matter if it’s a PowerShell script, Perl, AutoIt or Java, I'm equipped. You might not need to work with a variety of different languages but there is much more to this product that may fit your needs such as easy to use script signing, creating .exe's and packaging tools.
I've been using the new release version and I personally think that SAPIEN has hit the mark once again. The cost is much cheaper than Visual Studio and the tools are designed for many administrative tasks, which means it fits for me. I could spend pages explaining why I use PrimalScript, but is it right for you? I don't know - that's why you should check out the webpage and see. Remember, if you decide to try out the evaluation version, let me know what you think and if you decide to add it to your toolbox.
SAPIEN PowerShell Studio 2014
From time to time I've found myself in need to create a graphical tool to help support an admin or helpdesk. Often these are simple graphical tools, manipulating some user properties of a mailbox or in Active Directory. While I encourage helpdesk folks to learn PowerShell, let's face it, it's just much easier for them in most cases to use a graphical tool. This is why PowerShell Studio is in my toolbox. It's really like having the great graphical creation tools from Visual Studio in an affordable development environment using PowerShell.
Again, this may or may not be a business challenge you face, so take a look at the website for more information and take the evaluation out for a spin. If the only language you will need at your office is PowerShell, then this might be the perfect tool for you. I'm curious so let me know.
The Glue in my toolbox - SAPIEN VersionRecall 2014
I've written here in the past about VersionRecall, a quick, simple version control program that keeps versions of your scripts for easy comparison and recovery. I don't have the hardware/software for Microsoft Team Foundation Server, and I really don’t need those features that TFS provides. It's a great product and if you have TFS, or something like it, then you already have your solution, but I always wanted something that could provide automatic version control that was super simple and easy to use. That's why it’s the glue in my toolbox, keeping all my scripts versioned and backed up, so the next time I'm wondering what change did I make that broke my function, I can easily make a comparison.
Again, you can always try it out for yourself on their website.
Microsoft Visual Studio
This tool is in my toolbox for entirely different reasons then the others; education. When students or colleagues notice I have Visual Studio, they usually ask if I'm a developer. Well, to get better at automation with PowerShell, I'm becoming one. No, I'm not leaving PowerShell for the lands of C# - it's simply that I'm learning more about the development process, skills, and deeper knowledge to help improve my abilities. These improvements directly impact my job capabilities, so the investment in Visual Studio has been worth it.
I do want to mention, that if you are a developer that wants to work with PowerShell and you have Visual Studio - which I'm sure you do - check out PowerShell MVP Adam Driscoll's PowerShell Tools for Visual Studio. I have them loaded into my copy of VS and I really like what he has done. You might find it helpful, so check out his page here.
Closing my toolbox
So that’s the short tour of my toolbox and how I use the tools inside. So, what's in your toolbox? What do you like to have at your fingertips? We all have slightly different jobs with different requirements, but the discussion can help us learn from each other. There is no right or wrong answer!