Since I am lazy by nature, I am constantly looking for tools that can eke out an extra minute. The way I see it, there are three broad ways to increase your efficiency:
- Improve your focus by avoiding distractions
- Find stuff faster
- Ditch the mouse
Here are some of the tools that I use at work and have found useful:
Evernote: I tend to write a lot of notes. Recording them on notebooks makes it difficult to look them up. With Evernote, I can quickly search notes from both my home and work. My wife uses her iPod to take pictures of her whiteboard and then store them in Evernote. UML diagrams and brainstorming ideas can all then be archived for posterity.
SlickEdit: I write code mostly in C++, Python and C. Whether you like it or not, most programming work involves diving through abstractions and fixing somebody else's mess. I like SlickEdit because it lets me easily navigate code irrespective of language or coding styles.
CLCL: The modern world revolves around Cut and Paste. You may be one of the more evolved ones who have broken off the shackes of the mouse and use "CTL + C" and "CTL + V". But what do you do when you have to copy multiple things and paste them at different files during different times? This cool utility lets you remember not just the last copied item but everything all the way up to infinity. In fact, it eases the burden on your short term memory by not having to remember all those pesky copy/paste operations.
Colibri: One way to focus is to de-clutter. This involves removing the junk on your desktops - physical and virtual. I have very few icons and files on my Windows Desktop. I then use Colibri to quickly find and launch applications as and when I need them. For e.g. to open Firefox, I simply type "CTL + Space + ff". Kiss your mouse goodbye!
Search Everything: I no longer obsessively create folders to categorize files. Instead I rely on this lightweight Desktop search tool to find things as and when I need them. This has none of the problems with Google Desktop Search which tends to consume a lot of disk space and CPU.
VirtuaWin: If you are still stuck in the WinXP netherworld, this is a cool tool to get multiple virtual desktops. Are you being disturbed constantly by chat windows and emails? Put them in a different desktop while you carry out the more productive activities in your current desktop. Very often, you tend to use a group of applications together for e.g. email, chat and browser. Place them in the same desktop to avoid switching between desktops.
Dual Monitors: More screen real estate means your mind does not have to waste time switching contexts. LCD monitors have become relatively inexpensive to make this feasible for even the lowliest programmer.
Keyboard Shortcuts: Yank the mouse off of your lap/desktops and learn how to get things done using only the keyboard. Each of them might only shave a fraction of second. But consider how many times you open a browser window, type in a URL or switch between applications. Pretty soon these seconds add up. These are my favorite shortcuts:
- ALT + D to type in the URL
- CTL + Enter to automatically add the "www" and ".com"
- CTL + T to open a new browser tab.
So if I want to open a new tab for "www.economist.com", I do CTL + T, type "economist" and then press "CTL + Enter". How cool is that!