I often get asked by other developers at work or during presentations about various tools that I use. Most of the tools I use are relatively well known, but I'm going to create this post so that I have a single point where you can download everything without a bunch of Googling. Almost all of the tools on this list are free. My only disclaimer is that this is simply my personal list of the tools I use most often. If you're looking for a real list that is extremely comprehensive, then I recommended checking out Scott Hanselman's Tools List.
There are many tools listed below but, generally, the tools I cannot live without and use on a daily basis are: Reflector, Executor, PowerShell, TextPad, FxCop, Royal TS, Web Dev Helper, Firefox Live HTTP Headers, ZoomIt, and Process Monitor.
Misc Dev Tools
- PowerShell - There is definitely a learning curve with PowerShell but once you get comfortable with it, you have the power of the .NET framework from the command line.
- TextPad - I've been using this text editor for years and I generally believe that you should stick with the text editor that you are most familiar and skillful with. I love the syntax highlighting for all kinds of document classes.
- Log Parser - Essential tool that allows you to query a variety of file formats (e.g., IIS, ETW, CSV, XML, etc.).
- Visual Log Parser - Provides a great GUI over top of Log Parser. Very easy to work with compared to command line - particularly with the ability to save queries to files.
- Rock Scroll - This is a cool VS.NET add-in that I originally saw during a Scott Hanselman presentation. It gives you a nice scroll bar that "shows" the code as well as some context highlight of tokens.
- VS.NET 2008 Power Commands - This adds a host of commands to VS.NET which the IDE should have had on its own.
- GhostDoc - This VS.NET add-in allows the quick creation of method comment stubs.
- Database Publishing Wizard - Let's you quickly script your entire database including optionally scripting the data.
- Snippy - I use this tool exclusively to create Visual Studio code snippets for general every day development as well as presentations.
- NUnit - NUnit, MSTest, xUnit, MBUnit - Use what makes you happy.
- Moq - This is currently my favorite mocking framework. RhinoMocks and TypeMock are also good but I believe Moq is more intuitive with a smaller learning curve.
- Tortoise - If you use Subversion, this is obviously a must. But even if you don't use, there are features such as the Diff tool that are great (and free).
- WinDbg - A big learning curve if you have never used it. But if you are working on an application where detailed analysis of memory is required, then it's literally impossible to debug some of those issues without this tool.
- LinqPad - If you're working with LINQ to SQL, this is your "Query Analyzer". Very robust tool that allows you to write LINQ queries over any IEnumerable including data base connections.
- XML Notepad 2007 - This is a great, lightweight, free editor for XML files. The 2007 version is vastly improved over its original.
Code Analysis
- Reflector - There are certain days it would be impossible to do your job without this tool. Also check out the Reflectors Add-Ins on CodePlex.
- FxCop - Stand-alone GUI and command line for build server are essential.
- NCover - The new version costs money now but it's more than worth it.
- StyleCop - This relatively new public tool has been used internally by Microsoft for years. I believe it's going to be used more and more in the coming years. Unlike FxCop which looks at your binary code, StyleCop looks at your source for conformance with style coding standards.
- SourceMonitor - Being able to quickly identify where your code complexity lives is essential to refactoring to cleaner designs. This tool does a great job of that.
Web Development
- Web Dev Helper - This IE add-in is essential to web development. If you're doing AJAX development, this is a must have.
- Firefox Live HTTP Headers - If you work with HTTP status codes, need to understand when redirects are happening, etc. this tool is essential to give you the entire picture of HTTP headers.
- IE Developer Toolbar - Another invaluable IE add-in to be able to quickly select and manipulate DOM elements.
- Fiddler - HTTP debugger which shows all details about the HTTP request/response.
- IIS 6.0 Resource Kit - Comes with many useful tools including Log Parser. My favorite is TinyGet.
Utilities
- Executor - Executor has now overtaken SlickRun as my launcher of choice. It is fast, responsive, and user-friendly. I literally haven'ted clicked my Start button in windows in 2 weeks. I use this all day long to launch everything. A must have.
- SlickRun - **EDIT: This is no longer the launch I use because I've replaced it with Executor but it's still a good tool so I'm leaving it on this list. **This is a launcher I cannot do without and I use it all day long. I barely have to pick up the mouse to click the Start button because of how robust this launcher is. It is a must have.
- ZoomIt - If you do presentations of any kind (to clients, developers, etc.) this is absolutely a must have. Very easy to use and the features are robust.
- Royal TS - If you work with Remote Desktop at all, then this is a must have. This free tool allows you to easily organize your remote desktop sessions as well as bounce back and forth between different active sessions with ease.
- Process Monitor - This is a must have for debugging "mysterious" issues. They've rolled RegMon, ProcessMon, and FileMon into one now.
- Password Safe - This is a lightweight, portable, and easy to use password storage app.
- Clean Sources - Windows shell app that gives the ability to quickly remove the bin and obj directories from your visual studio solutions.
- Consolas Font - I set Visual Studio and all my text editors to use this font.
- Live Writer - I use Live Writer for all my blog posts and it's generally considered the best tool out there. There are some other features I'd like to have in it but it does the job well.
Enjoy!