As software developers, we often have a favorite toolkit that we can count on in our day-to-day jobs. Favorite IDE (Eclipse), favorite text editor (vi), favorite source control system (Subversion), favorite language (whatever’s paying me now!) – all of these are tools in our virtual tool belt that we look to master to let us concentrate on the interesting details of the task at hand.
Here’s a list of tools that I find essential for my software development career, that I consider outside of my normal tool belt:
1) LinkedIn.com: this is my networking and marketing tool. I use it to keep track of who’s where and who knows someone that might have an answer or a good job. I’m happy to help others in the network, and like to answer questions on the board (see that marketing angle: I think looking at someone’s responses is another view into how they might fit into your organization).
2) Safari.oreilly.com: long ago, I started a bookshelf subscription to O’Reilly. I can check out the latest books, keep an eye on what’s hot, and just generally grab info when I need it, without paying a $40/book charge for something that I may read once and then stick on a shelf.
3) Google’s code search feature. Let’s face: lots of software documentation leaves much to be desired, and often it’s useful to see either source code or samples of how someone’s used something of interest. I often use google’s codesearch feature (http://www.google.com/codesearch) to find a sample usage of an API of interest, or of a configuration file that the documentation just isn’t clear on. Maven’s pom files are non-intuitive to me often: properties that are listed for plugins don’t seem to match with what I’d put in the pom file. But I’m able to do a hunt for pom.xml files that reference a particular plug-in, and have a reasonable shot of finding what I’m looking for.
4) Del.icio.us (http://del.icio.us/) is my personal filing cabinet of interesting things on the web. I tag all sorts of tutorials, examples, or useful tech conversations so that I can go find that OSGI tutorial that talked about how to properly track service references, for example, or how folks have dealt with logging from their containers. I don’t tend to search much across other folks’ tags, just my own. But I love being able to get to it from wherever I am.
5) Google’s Reader for RSS feeds: I love having one source to see what’s happening across the blogs of interest to me. I also love being able to share items of interest with my contacts, and to see what they’re tracking.