What tools do you consider essential in your SharePoint development toolkit?
One answer per tool please so the community can vote!
SharePoint Manager is a SharePoint object model explorer. It enables you to browse every site on the local farm and view every property. It also enables you to change the properties (at your own risk). This is a very powerfull tool for developers that like to know what the SharePoint holds of secrets.
SPDisposeCheck - to check for any dispose mistakes that could result in a memory leak.
Good to have hooked up to a build target as a post-build step so that the build fails if any problems are found.
U2U CAML Query Builder - who in the SharePoint world can live without this one! It helps you avoid commoin CAML mistakes.
WSPBuilder - for an easier, faster and more troublefree way to create new SharePoint solutions/features.
Can't do any serious development/debugging without Fiddler
It's a great tool for examining all HTTP(s) traffic of your apps.
Firebug! Useful in so many ways:
I've found .NET Reflector (now from RedGate) to be an indispensable tool when developing, and with SharePoint in particular. In some cases it has saved me from spinning wheels when it is clearly a "bug" or "feature" in the SP codebase, but it most cases it has just been invaluable from a learning perspective (oh, that's how that works!)
Maybe not SharePoint specific, but I don't write code without ReSharper. Countless ways it improves productivity.
I use IE8's Developer Tools whenever I work with JavaScript, CSS or HTML in SharePoint.
PowerShell! I use PowerShell more and more for small POC's where I would normally use console apps. Also for automation PowerShell is a great tool!
@glapointe's STSADM custom extensions. The tools rock, and also looking at his code and seeing how he writes the functions helps you understand the API too!
It asked for only one product per answer but I will group a couple as they work together.
NUnit - for your unit testing. I also use MSTest but find NUnit has less clutter (VS2010 removes this for MSTest)
TestDriven.Net - great tool for running the tests and include the open source version of NCover for your coverage needs.
Another one that's not really a tool but nevertheless very handy; in my quick launch bar I always add a Shortcut and a Toolbar to the 12 hive:
C:\Program Files\Common Files\microsoft shared\Web Server Extensions\12
Visual Studio
SharePoint Designer
TypeMock http://typemock.com
it's the only way to write unit tests for sharepoint. Somthing we all should be doing.
http://www.qualitysharepoint.com/2009/03/options-for-unit-testing-sharepoint.html
I'm suprised no one has brought up STSDev from codeplex. I like the way it sets up the project and set ups all the files and build tasks. Worth a look.
SPTraceView is awesome for seeing errors that occur on SharePoint server, especially if it's your dev box as they happen via the System Tray! Also when you double click on tray it shows the exceptions...rather than you opening whole ugly ULS log ;-)
Sure fiddler is good, but Visual RoundTrip Analyzer (VRTA) gives you a nice graphical illustration and can also help you with advice in solving the problems. It has issues regarding virtual environments though, but a great tool never the less (thanx Spence for introducing it to me:-) download VRTA
The content deployment wizard: The SharePoint Content Deployment Wizard is a tool for SharePoint 2007 which provides the means to deploy the following content:
Slight bias here. But I can't build SharePoint Lists, Content Types, Site Columns and Module files without SPSource written by myself (@jthake) and @richfinn!
DebugView from Sysinternals/now Technet combined with System.Diagnostics.Debug.WriteLine, System.Diagnostics.Debug.Assert etc is very good especially in events or workflows where you cannot do trace.
Microsoft Live Mesh is a great tool to handle all your other tools. I've set up a folder that I have all my tools in and then use Live Mesh to have these tools synchronized into my VM's and other machines. As soon as I add or update a tool, they are all "copied" to my other machines.
I recommend using VSeWSS 1.3 March 2009 CTP and hopefully RTW soon.
TypeMock Isolator - essential if you are doing unit testing and need to fake out the calls to SharePoint
Ehm, noone said MetaMan yet? Doint BDC by hand is such a pain... MetaMan is the best tool out there. And now also web based. (ok Nick you can cough up a with a dev license now ;-) Nah seriously, its an expensive tool, and the licensing model sux (for devs at consultancy companies that has lots of different customers) but the tool is top notch and saved me more times than i care to remember from doing tedious XML
What? Noone said SQL Server Profiler yet? How the heck do you guys find out what goes on behind the scenes without it? :-)
Especially good when you are after better performance. A quick profiler run will find those pesky SharePoint "specialities" in .NET like using foreach instead of for loops, or the difference in performance of doing SPContext.Current.List.ItemCount and SPContext.Current.List.Items.Count, finding deadlocks, timeouts etc
I use sharegate to deploy sites from DEV to QA to Prod and Prod to QA to Dev.
From their website :
sharegate is a light yet powerful tool to compare and synchronize your SharePoint environments in only three steps. It quickly detects the differences between your sites and allows you to send your chosen selections to your desired destination from anywhere in your organization. Our tool accelerates your SharePoint deployments by significantly reducing the time consuming manual process. The power of sharegate resides in its simplicity and its cost. We all agree that we need a simple tool for SharePoint synchronization.