Top 10 Indispensible Tools

Every blog is only complete with some sort of top 10 list present – this is my version , listing ten (and then some) of the applications I use and value the most. Some are freeware, most are not. I don’t care I’ll happily pay for any of the applications listed here.

I don’t list Word, Excel, Outlook or Visual Studio here as they come with the furniture, I can’t do my job without any of them, but what makes the difference and provide the extra 50% efficiency are these tools:

  1. AutoHotkey
    This absolutely invaluable tool is a hotkey and macro management program. You can literally program it to anything you can think of, though the syntax is a bit archaic, the functionality is staggering. I constantly modify my hotkey file to suit me you can download my version here (rename file extension to “ini”. read through the file to find keys it defines).
    Example 1: Ctrl + w: Bring firefox to the front if it’s running, otherwise start it.
    Example 2: Ctrl + Alt + a: Remember current window, Check if KeePass (see below) is running, If not start it and wait the main window to show up, Switch back to the original application and send the shortcut to KeePass that will autotype the password for the current window (KeePass will look at the window title and find the correct password in the database if possible).
    Example 3: Ctrl + G: Generate and insert a Guid into the active window.The list goes on and on … Brilliant.
  2. OneNote (2007)
    This is part of MS Office 2003 and 2007 in some of the licenses (please don’t ask me to explain the licensing model – I don’t think that anyone understands it). As the name implies this is a program for notetaking. It replaces the numerous little txt files, notes within outlook or however you prefer to do it. After a few test runs you are addicted to it. I think I spend at least 30% of my time here.Brief list of the features I use:Deep linking – You can create links directly to specific pages within OneNote (e.g. your main todo page) and save them as windows shortcuts. That’ll enable you to create hotkeys through windows to find the page quickly. Of course creating that hotkey through Autohotkey is a lot faster and the way I do it :-)Outlook integration – Create tasks in OneNote and have them synchronized with outlook (status info is synced two-ways, description only one way)

    Aggregation of flags – You can use a number of flags/tags for your notes that you can aggregate in a task pane, i.e. “show me all todo tagged notes in all pages”

    Cached file mode – This program probably features the most advanced file system available in any program I’ve ever seen. It basically opens your onenote database from whatever location you point it to and creates a cached version of the file. Whenever the original file is available it’ll sync your changes with that file. You can compare it to the way outlook works in offline mode, this time there’s no exchange/mail server, just the actual file itself. I place my notebooks on a USB stick to carry between computeres and I can still use my laptop without the USB most of the time – it just works 🙂

    Calculations – Simple but clever. It can do simple calculations, pretty much like google does. Write “Sin(Pi/2)=” and it will calculate that value for you. In effect replaces the calculator (which I used all the time)

    Copy text from pictures – The screenshot capturing is nice, but one really cool feature is that it has a function to “copy text from picture”, i.e. it’ll perform OCR on any picture you paste into it. It’s pretty far from perfect, but works reasonably well for ordinary screenshots, i.e. not for a scan of a traffic sign

    Drawing/handwriting recognition – This is the feature that Microsoft primarily highlights which enables you to use a Tablet PC with OneNote to do handwritten notes that are searchable etc. We all know the success of the Tablet PC and this particular feature seems useless to the 99% of us that prefer to use a reliable keyboard instead. Whether it actually works or not I can’t say.

    Search – obviously…

    To finish off I’ll recommend reading David Rasmussens blog about OneNote he has some valuable technical insights.

  3. Google Desktop
    Can’t find a thing on my computer without this one being enabled, I primarily use it to search my emails as the amount quickly goes beyond normal search/categorizing within Outlook.Simple, fast, efficient and elegant, hit Ctrl twice, enter “from:torben SLA SharePoint” and the mail Torben send with that content is found. Google Desktop is a simpler product than MS desktop search offering, it has fewer advanced options, but I find it to be quicker to search and especially a lot faster to actually use.It comes with a number of extra crap, like Google Toolbar, Google Sidebar/gadgets/widgets/whatever they are called. Don’t care, don’t steal my screen real estate, just disable it 😉
  4. FireFox
    No one can do without FireFox. It’s simply a faster, better browser that you can tweak to your liking. I use the following extensions all the time:FireBug – Absolutely invaluable tool for every developer that are forced to look into html/css/javascript once in a while. Was hell before this extention – It handles my bookmarks and syncs them between all my various machines. I don’t care much about the much touted social bookmarking aspect, I don’t really find it all that useful

    All in One Mouse Gestures – Web browsing is usually best done with a mouse, this alleviates you from having to touch the keyboard too often during browsing. Simple saves ½ a second when you need to navigate, open links in new windows etc. I just use the 4-6 simplest gestures, there are lots defined, most are impossible to remember or actually perform

    Selenium studio – I haven’t actually used Selenium studio for anything yet, but it seems an invaluable tool for doing web based unit testing, that is, recording them for later execution in a proper environment. I think I’ll try to use this in my next project. Everyone loves unit testing I just haven’t seen that many good tools for doing browser based unittesting, though it’s by far the most interesting to do

  5. KeePass
    Just a small simple password remember program. I gave up on remembering all my passwords six months ago, there was simply too many. I’ve used KeePass since and it’s now contains around 100 passwords for various systems (many are web sites). Now I can use all that extra brainpower for something useful ;-)I’ll argue that a program like KeePass actually increases the security as it enables you to use/generate distinct random password for every system instead of reusing a couple of passwords for all of them.One useful feature is the autotype feature where it’ll type the appropriate password into your current window with a hotkey (it figures out what password you need based on the title of the current window). Of course I extended this functionality a bit with AutoHotkey, so my shortcut actually starts the program if it’s not running, wait for it to be ready and then executes autotype.The one thing I miss is actually a FireFox extension to integrate the two – replace FireFox’ insecure password remember with KeyPass automatically (sorry, I don’t have the time to build it).
    Note: I’ve only used version 1.xx not 2.xx – it’s a complete redesign where the new version is based on .Net.
  6. Ceedo
    This is an application that will revolutionize your usage of USB drives. Nothing less. It enables you to install and execute applications on the USB disk on all host machines. So you can have your favorite text editor installed on the USB stick and be able to use it on any computer, with no installation on the host machine.The unique thing with ceedo (over competitors like MojoPac and U3) is that it enables you to install practically anything (with exceptions of course) also applications that were never designed for portability. It creates a “virtual windows environment” that the applications execute within, so when the applications writes to the registry that is stored in Ceedo’s registry not the host machine and when it reads from it Ceedo will overlay the host registry with its own. Works great for most applications, specific exceptions are Java, .Net., Visual Studio and MS Office – I suppose they change too much in windows for Ceedo to capture it all.This tool is indispensible when you routinely work with security restricted windows computers – now I don’t need to install programs all my programs on the host machines to be able to use my favorites.
    Note: On my installation AutoHotkey is of course added to Ceedo’s startup folder (yup it emulates normal windows behavior). Incidentally if another version of AutoHotkey is already running, the new one takes over (both run, the latest temporarily overwrites the first hotkey definition). That’s exactly what you want so the version on the USB stick can add hotkeys for the programs installed on that disk.
  7. VMWare Workstation
    Well you can’t really develop any serious SharePoint solutions without using virtual machines, often lots of them. I routinely use VMWare Workstation/Player/Server where the last two are freeware. Workstation is brilliant, fast, reliable and a snapshot tree feature to kill for (Player and Server does not really support snapshots properly – but they are free(!) ).I believe VPC is also a usable tool, though I feel that VMWare are still a couple of years ahead in terms of features and support for many operating systems. You can find many blogs with performance comparison between the two and the one clear conclusion is that the difference is negligible; you should base your choice on the features needed and pricing.
  8. Daemon tools
    Mount ISO files (many types) as virtual CD/DVDs. It works.I still don’t know why this is not a standard windows feature, it really should be. The funny thing is that MS distributes many of their products as ISO files, but they have no proper support for it (there is actually one MS program for it, lousy by the hearsay).
    Note: Be sure to deselect the Daemon tools search bar during installation. You don’t want another commercial internet explorer bar, do you?
  9. ReSharper
    An add-in to Visual Studio that will make everything better, easier and faster. I’m never going back. When Visual Studio 2005 was released a number of the refactorings supported by ReSharper were also supported by the base product. ReSharper still does it better though, so the refactoring capabilities are still a selling point along with countless other improvements.Very soon you’ll code both much faster and less error-prone (it catches a number of possible bugs even without compilation). The simplest feature I use the most is for to automatically add using statements when you start using a new class within your code, just type “Hashtable”, hit Ctrl+Alt, and continue coding knowing that the using statement has now been added (color coding will help you here).
    Note: I have only tested version 1.x and 2.x, not the “new” version 3. Yet.
  10. Reflector for .Net
    An excellent tool for disassembling .Net code. Let’s face it sometimes we all learn better with some inspiration from others’ code. To me it’s an indispensible source of information for SharePoint 2007 in figuring out what some of the errors/exception actually mean and how to counter them. Most of SharePoint 2007 can be disassembled, which is huge improvement over the locked down SharePoint 2003. Bits and pieces are still “obfuscated” and cannot be disassembled – obviously some of the best parts that we need the most.

Runner ups

While trying to keep the list short I also considered two more:

  1. FastStone capture
    If you ever need to do screen capture this program is your friend. It supports capturing a window with scrolling and some simple drawing on the captured image. An ellipses around the button to press is always nice… OneNote also has a nice screen capture utility, it’s only lacking the easy editing capabilities
  2. Paint.Net
    Delete and bury windows Paint once and for all. Finally. This is a high quality freeware image handling program that falls into the category of people that needs some basic image handling (transparent background for instance) for which Paint doesn’t cut it and PhotoShop is complete overkill (not to mention the learning curve and pricing).
    And yes: There is a file plugin that will read and write photoshop files (not working for huge files though – 100mb and above is not a good idea)

Final words

This is my list of must have applications that I use all the time. Your mileage may vary. In two months time some of them will have changed again – I always look for ways to improve my setup (and I also change the primary tasks in my job once in a while).

To that end, feel free to share your favorites in the comments.


About Søren Nielsen
Long time SharePoint Consultant.

4 Responses to Top 10 Indispensible Tools

  1. subcorpus says:

    good list … thanks for sharing …
    will check a few out …
    why is there no link to OneNote … ?

  2. Now there is 🙂

    I’m very much not a fan of the wordpress edit kontrol, it simply messes everything up..

  3. Pingback: Top 10 Indispensible Tools | yourmuses

  4. Jaroslav Svestka says:

    Hi, good list. Though the AutoHotkey file is missing, could you upload it again, please. In wayback machine it isn’t either.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: