Thursday, May 12, 2005

Programmer's Tools List

Here's a list of a few programmer tools, and some misc tools I find useful/fun/cool. I hope you find it useful too.

-Michael


Programming:



SourceInsight
http://www.sourceinsight.com

SourceInsight is an amazing code browser and all around great editor. Its killer feature is the call graph window that lets you interactively browse source code by examining function call chains.

Beyond Compare
http://www.scootersoftware.com

This is the best comparison tool I have found. It does side by side comparisons, and shows differences down to the character. It is great for doing diffs and merges, and I have it replacing the default perforce diff program. It is also great for diffing two folders, and can produce web-format difference reports that are useful for emailing around.


windbg
http://www.microsoft.com/whdc/devtools/debugging/default.mspx

This tool is a lightweight debugging tool that lets you debug on a machine that may not have dev studio installed. The debuggers provided also included a command line debugger and a kernel debugger. The debugging capabilities exceed those of dev studio in many cases, but the knowledge curve is steep and these debuggers cannot match the convenience and contextual info that dev studio provides. I only pull this out for on the spot debugging, when I need one of its advanced features, or when DevStudio isn't available.


Dev Studio plugins:




Workspace Whiz
http://www.workspacewhiz.com

This plugin provides a powerful file-open command, header flipper, and tag browsing. Lightweight and cheap.

Visual Assist
http://www.wholetomato.com

This is the uber, kitchen sink plugin. It is basically an improved version of intellisense with smart file-open command, header flipping, symbol browsing, code templates, and more.



Other Tools:


Directory Opus:
http://www.gpsoft.com.au/

This is the best of the explorer replacements. I use it for its dual-pane file browsing capabilities, and its integrated support for ftp. It has a file viewer built in and even shows me my msn messenger contacts list in a side pane. :)


Google Desktop
http://desktop.google.com

This program indexes all the files on your hard drive, including email, using the same engine that google uses. It integrates with google web searches and the indexers only run when the machine is idle. Nice way to find stuff on your machine that you may not know you even had.



Stroke It
http://www.tcbmi.com/strokeit/

This is a mouse gesture program that I find useful. Lets me use mouse gestures to close and invoke applications, perform browser operations like Back and Forward, etc... Once you get used to mouse gestures in firefox you need this tool to feel comfortable using the rest of your windows apps.



Picasa 2
http://www.picasa.com

This program is a great photo indexer. It is a free google software program that will index all of your photos and movies and let you view and organize them in creative ways. It is worth the install alone for its ability to produce a web site for a photo album. Provides standard features for edting like red-eye removal, cropping, scaling, color manipulation, and more. Export function makes it easy to resize a folder of images in one fell swoop, along with other fun stuff.



Firefox:
http://www.firefox.com/

This one is probably well known by all. I am using it for its tabbed browsing and extensive collection of extensions. My key reasons for using this are tabbed browsing, shared bookmark support, and mouse gestures.



Process Explorer
http://www.sysinternals.com

This site has a ton of useful tools. I point out the process explorer because it is a very useful tool for finding things like the command line that was used by a process, what open handles it has, and even goes so far as to provide you interactive callstack peeks at running processes. Useful also for its tree view where you can see the hierarchy of processes and thus understand which processes invoked what. Also check out: DbgView (see all debug output spewed on the system), FileMon (monitor all file access by all processes on the computer), and Regmon.




No comments: