Not another NDepend review, link roundup

I had the chance to try out NDepend, thanks to Patrick. After playing around with it I was pretty impressed and started writing a review of it. Out of curiosity I googled around a bit and found that there are already a lot of good reviews about it. I didn’t want to do just another review so instead I was thinking of creating a round up of all the blog posts out there that give more information about one or more features of the product. And which I used to get up to speed.

I don’t think the tool still needs an introduction. But for the .Net developers who have been programming on Mars in these last years. Here is a short intro: NDepend is a static code analysis tool. It collects information about your code base and gives you the opportunity to view it, query it, analyze it and so much more. Actually it is packed with features to help you in better understanding your codebase and its problems. It even has integration with Reflector and Visual Studio.

So here goes:

Getting started

Introduction video’s on the NDepend website
The NDepend website has some really good video’s on how to get started. If you want to start anywhere, start here.
Hanselminutes episode on NDepend
This podcast episode is ancient in Internet age (from 2007), but it does provide some interesting information.
Interview on DotNetCurry with Patrick Smacchia, the creator of NDepend
Patrick talks about he basics of NDepend: what it does, when and how to use it
Introduction by Andre Loker
Simplify code using NDepend
Introduction by Gil Fink
NDepend for Instructors
This article gives the tip for instructors to use NDepend to check on code written by students. I think that’s an excellent idea!
Getting up-to-speed on NDepend and Code Metrics on InfoQ
Talking .Net Code Analysis with Patrick Smacchia
NDepend and complex methods
Using CQL queries to pinpoint complex methods in your code base

Day-to-day working

Analyzing the code base of CruiseControl.Net
Patrick analyzes the CruiseControl.Net codebase with NDepend
NDepend analysis inputs
Using NDepend on large project, a success story
Working on F# with NDepend by Steve Gilham
Using NDepend to help guide refactoring
Steve Wright wrote a great article how to use NDepend to make your code more understandable and manageable. Although written in 2008, it still is applicable today.
Static Analysis and generated code
Skip generated types when performing analysis in NDepend
Remove assemblies from Dependency Graph in NDepend
Lessons learned from the NUnit code base
NDepending Resharper

CQL (Code Query Language)

Beginning CQL
Getting started with CQL post by Stuart Thompson
Code Query Language Specification
Active conventions with NDepend part 1 and part 2
Jan uses CQL and NDepend to enforce BDD naming convention in his unit tests. 
Fun with NDepend

Integration

Video on adding NDepend to your Nant script on Dimecasts.net
NDepend task for Nant
NDepend and CruiseControl.Net
Integrating NDepend code metrics into an NAnt / CruiseControl.Net Build

Extra

Influence the future of NDepend
If you’re missing a feature, this is for you. Patrick calls out the community to propose missing features for NDepend.
XDepend, NDepend for Java
CppDepend, NDepend for C++

Reviews

There are a lot of reviews out there, there is not one negative review and they all have some interesting information about NDepend. Worth checking out! Here they are (in some kind of alphabetical order).
By Manuel Abadia
By Vagif Abilov
By Gojko Adzic
By Donald Belcham
By Nick Berardi
by Steve Bohlen
By Laila Bougria
By Chris Brandsma on Elegant Code
by David Brown
By Jeff Brown
By Herbert Joey Calisay
By Henry Cordes
By Ben Griswold
By Scott Hanselman
By Brian Hartsock
By Travis Illig
by Philip Japiske
By Brendan Kowitz
By David Lambert
By Anatoly Lubarsky
By Hendry Luk
By Elijah Manor
By David Mohundro
By Muhammad Mosa
By Diego Muñoz
By Keyvan Nayyeri on DotNetSlackers
By Benjamin Nietschke
by Grant Palin
By Jan Van Ryswyck
By Steven
By Craig Stuntz
By Steve Trefethen
By Ben Watson
By Davide Zordan
By Arjan Zuidhof

Closing

If you still need some reading material, I suggest you follow Patrick Smacchia’s blog. He’s the creator NDepend and frequently blogs about the subject of static code analysis. If you have an interesting link about NDepend to add you can always leave a comment and I’ll add it to the list.


Continuous education, Hanselminutes show #187

It has been quiet on this blog lately but I’ve been very busy with work. Between my busy schedule I’ve been trying to keep up on the technology front by listening to different podcasts. Although the quality of a lot of podcasts is highly dependant on the guest that is starring in that week’s episode, Scott Hanselman has been able to keep me interested all the time. Even for topics in which I’m not 100% interested in. If you’re not listening to his podcast you should subscribe right now.

I particularly enjoyed episode 187 with guest James Bach. Apparently James is a famous Software Tester, although I first thought the podcast would teach me a thing or two about software testing I didn’t know yet I was actually surprised that it was more about how to advance your career. Every software developer knows that IT is a very fast moving sector to be working in. Each day some tech company brings out a new technology that could make your current skills and thus you as a person obsolete. That’s why it is so important to continuously keep learning.

James has a rather unconventional school career, he dropped out of school at the age of 16. And he based himself on the American constitution to convince his teachers that he didn’t have to do homework at the age of 12. Everything he learned is based on passion, he only learns about things which he is truly passionate about. What I took away from the episode is that I have to try each day to keep learning and to stimulate myself to be a continuous learner. To do that I am now trying to, even more then I used to, read blogs and books, watch videos and listen to podcasts.

41k0nAtkJSL._BO2,204,203,200_PIsitb-sticker-arrow-click,TopRight,35,-76_AA240_SH20_OU01_

The best advice that was given is summarized by the following question you can ask yourself:

How can I feature myself as someone unique?

In these times of crisis and people losing their jobs all of the world. It is important to have skills that make you unique. You’ll probably never be the best programmer in the world or the best CSS guru, there is always someone better than you. But by keep learning new things you shape yourself as unique person with a very broad skill set. The more you know, the more valuable you become.

James also wrote a book about this subject which I think will be a great read. I quickly added it to my reading list. I just need Amazon to create an international version of the Kindle DX so I can start reading.

To finish off I would like to talk about upcoming posts. Patrick Smacchia was so kind to provide me with a review copy of NDepend. So I’ll be playing around with it and blog about it. I can already say I’m very impressed.

Till next time, hopefully It won’t take half a year for me to write another blog post.