We had a laptop refresh recently, and part of that process involved figuring out what tools I’d ideally like to have on standard Windows build in order to do my job. It was interesting looking through my Start menu and figuring out which programs should be at the top of that list.
So in case it’s of interest, here are a few tools that I can’t do without because I use them regularly to deliver projects. I’d love to hear what tools you can’t live without (on Windows or any other platform).
Tools That Cost Money
I’m going to keep his section brief, because these tool choices are little boring and usually come pre-installed on a corporate OS build:
Microsoft Office 2010
I know it’s trendy to like OpenOffice, but honestly, MS Office is tremendously powerful and surprisingly reliable. No, I don’t like the visual appearance of the Office 2013 redesign, but the underlying software is still, I hate to say it, the best – and since it’s ubiquitous, I rarely have compatibility issues (which is more than I can say when I’ve tried interoperating with OpenOffice).
Microsoft Visio 2010
Predictable. I draw diagrams; I need other people to be able to open and edit them. Visio it is, then.
Free Tools for Windows
I like free software, and quite often the free tools are better than the paid ones anyway! Here are a few freebies that I use a lot.
Filezilla is an awesome free FTP client. There’s a server available too which I occasionally use, but the client is staggeringly good. It’s fast, transfers up to 10 files at a time if you let it, can be rate-limited, supports resumed transfers, and easily manages tens of thousands of files in the transfer queue, tracking success and failure so clearly it makes you wonder why all tools aren’t this easy to use.
When I’m asked what my favorite text editor is (amazingly it comes up in tech interviews surprisingly often), my answer is always GVim (Graphical vi Improved). If you haven’t used vi on a *nix platform, then you’re probably too young to remember systems where more intuitive tools like emacs were an add-on bonus, and often were not available. Knowing your way around vi (using the keyboard, not the cursor keys!) is a life skill that has paid off time and time again. I am no vi guru, but I’m pretty fast with it, and I do all my perl programming in vi – or, in windows, GVim. Syntax highlighting is built in for a whole bunch of languages. It’s not always the easiest tool to use, but I’m addicted.
There are other distributions out there, but I’ve found ActiveState’s ActivePerl to be remarkably reliable. I have a licensed copy of the Active Perl Dev Kit, which also means that for years I’ve been able to generate reliable standalone executable files. I find it very hard to live without perl on my machine.
Again there are many other options, but I’ve got familiar with WinMerge which, despite the name, I mainly use to “diff” (i.e. compare) files. If you work with configuration files, having a quick tool to tell you where files differ is incredibly useful. *nix users have had ‘diff’ for years, but the output isn’t terribly friendly to new users, but WinMerge displays the files side by side and clearly highlights unique content and matching content between the files, and has a number of options to alter how it displays the files, including hiding matching lines, and so on. The actual matching algorithm is pretty smart too. Useful tool.
I suspect this should be higher on the list, but still – PuTTY has been my SSH and telnet client of choice for many years now, and remains the only tool I install on most machines (and sometimes it gets run from a USB flash drive too). I vaguely know the author from another forum (which is how I found out about it in the first place), but I keep using it because it’s the best. For those that are unhappy with some of the limitations of the original PuTTY, I will also mention KiTTY, which expands the options and enhances the session storage capabilities, and SuperPuTTY, which allows you to have tabbed PuTTY windows within a master SuperPuTTY window.
Solarwinds Subnet Calculator
I’m good at calculting subnets and masks, and manipulating prefixes in my head. However, when it’s important I don’t risk a mental error, and I double check my results using the Solarwinds Free Subnet Calculator.
WireShark used to be known as Ethereal, and is a superb packet capture and analysis tool. It also integrates nicely with GNS3 captures too. If you’re a network geek and don’t have this on your machine, I’d be shocked.
For mid-sized routing simulations, GNS3 is quick and easy to set up, and has really developed in terms of integrating non-Cisco router simulations too (including Junos OS and Cisco ASA). At a certain point, GNS3 can put a big strain on your CPU and memory, so it doesn’t scale too well for large simulations unless you have some serious horsepower to run it on. However, for quick and dirty, it’s my first choice every time. I used to be a dedicated Dynagen user, but GNS3 is so stable and easy now I don’t bother with that any more. For big Cisco simulations, IOS On Unix (IOU) is a very efficient choice. But I wouldn’t know anything about IOU, obviously.
I’m sure I’ve missed some really great tools, both paid and free. What essential software is in your standard toolbox?
I made myself a C:usrbin directory, put it first in my path and filled it with:
all the *nix command line tools.
I prefer Strawberry Perl to ActivePerl having used both. Strawberry comes with gcc so that covers a free C compiler on Windows.
Finally, Notepad++, and an application called JSPager for multiple desktops – don’t know if you can find this one out there anymore, I’ve had version 2.5 for years and “About…” links no longer work. It’s the best multi-desktop program I’ve used on Windows … and I’ve tried them ‘all’.
Thanks, Vince! I’ve been told about Strawberry Perl but haven’t tried it yet. I really should from the sounds of it, as I haven’t updated my Perl Dev Kit in a while because I resent the cost of it…
I have Notepad++ installed on my current machine; I just find myself using GVim regardless. I think deep down I’m trying not to get used to something I can’t use everywhere, and the one thing vi has going for it is that it’s available on pretty much every platform. Still, recommendation noted – I will try to spend more time with Notepad++ and see how I get on!
JSPager – ah cool, virtual desktops. I’ve had some graphics cards in the past that offered that kind of thing as part of the driver, and of course other operating systems offer that out of the box. For some reason, my brain just doesn’t get on with virtual desktops; I seem to prefer managing a single (preferably large!) space. This is probably a bad thing, but each to their own!
I forgot to respond about the gnu tools. I have installed them in the past, but I simply forget to use them which is terribly annoying. Still, when you need grep, for example, they’re fabulous. Good recommendation, thank you!
Sysinternals Process Explorer is the one tool I find myself always installing on new servers one I get my hands on them. It’s Windows Task Manager on steroids (basically it uses WMI a lot, but does loads more). Oh and it’s free.
+1 for WinMerge though, the standard install here is Beyond Compare but it’s (a) not as good and (b) more expensive. At least I am able to d/l and install my own choice of utilities.
I forgot Sysinternals (perhaps because they don’t install in my start menu!), but for troubleshooting system issues they’re fantastic. I’ve spent many an (un)happy hour staring at Process Explorer and Regmon and the like. Good call!
I have to say I actually pay for secure CRT, don’t mind forking out if I feel it’s worth it.
Free ones…3cdaemon is great, very basic and I prefer it to FileZilla. Winscp is also dead handy and I reluctantly use omingraffle on my iPad (hmm that certainly wasn’t free).
Visio is by far my most used non-terminal application.
notepad++ and keepass 2