There are a few development tools that I just can’t live without.
A few years ago I was sitting in Glenn Block’s office when I noticed some strange additions to Visual Studio. When I asked him about it he said “That’s ReSharper” and I was hooked. I had to have it.
ReSharper helps me to write better code faster period. This is my #1 must have tool.
This is my most recent addition to the list. I’m a big believer in unit testing and understanding your code coverage is crucial. Yes Visual Studio has unit testing and code coverage but… if you have a large project the cycle of build, test, check code coverage just takes way too long.
With NCrunch I just work away and it builds, tests and analyzes code coverage in the background. Before you know it you have red, green and black dots telling you about the coverage. If a test fails, I see it right away and can fix it even before I built the project or even saved the file!.
I remember the good old days when teams used to fight about things like tabs vs. spaces in code or where to put your curly braces. StyleCop stops all the fighting – it has a set of rules for code style that for the most part I agree with. It analyzes my code and tells me when I’m not complying with the style as I type.
If you put StyleCop together with ReSharper – now you can quickly format your code. Got to have this tool.
Have you ever wanted to email a project to a colleague or upload it to some website only to find that with all the bin / obj / ReSharper / etc. folder full of stuff that the zip file was huge? Or maybe you open a project from a website or a friend and Visual Studio informs you that the project was under source control and the server is not available.
I created CleanProject as a tool to remove crap that I don’t care about from the zip file and to remove source control bindings. Seems that several thousand of you agree that CleanProject is pretty useful.
Yes, I work at Microsoft and yes I have access to all the .NET Framework source (you do too by the way) but often I find that it is faster and easier for me to analyze what some piece of the .NET framework is doing by simply going to .NET Reflector. They recently release a great extension for Visual Studio 2012 which makes it even better. I can’t tell you how many times where understanding the underlying class has helped me to solve a difficult bug.