Following on from my post on automated refactoring tools, I was going to talk a bit about how modern IDEs should be providing more analytical type services for your code, rather than the usual "here's an editor, go for it" paradigm with the only analysis being the compile.
One of the analytic tools for which I have a great deal of affection is NDepend. Everyone I talk to who has also used it waxes poetic about it too (and for us programmers waxing poetic is not part of the job description). NDepend is a program that analyzes your code and produces information about the complexity and quality of your code and its architecture, not as static graphs and reports but instead as an interactive tool that lets you zoom and explore areas of complexity and that gives you a much more in-depth understanding of the architecture of your code. Just using it makes you brainier.
In this case, a thousand words won't even begin to illustrate what NDepend can do, so I'd point you to their website.
And then, my subsequent blog post still unwritten, Patrick Smaccia writes a very interesting article on what they've been doing for the UI in the next version of NDepend, including a great discussion of traditional menus and toolbars, and how they've decided to use DXperience Enterprise to revamp the UI. A decision which incidentally has given them the ability to support both menus and a ribbon in the same product.
Patrick provides some great screenshots of the new NDepend UI such as this one with the Office 2007 blue skin:
Patrick's discussion is very apt and insightful on many fronts (and I'm not just saying that because he's using DXperience, fawn, fawn) and I for one am looking forward to the next version of NDepend. I'm particularly glad that we're supporting this endeavor by providing complementary copies of our tools to MVPs, of which Patrick is one.