Category Archives: NDepend

.NET Developer Tooling: The Roslyn Revolution

Unless you’ve been on holidays for the last week on an island without internet,  you’ve probably heard that Microsoft announced that Roslyn is now available as Open-Source. Roslyn is the next C# and VB.NET compiler, developed with these languages. It … Continue reading 

Also posted in CodeRush, Compiler Service, LINQ, Resharper, Roslyn | Leave a comment

NDepend.Path OSS Project

Almost 7 years ago I uploaded the OSS project NDepend.Helpers.FileDirectoryPath on CodePlex. Today I just uploaded its successor NDepend.Path on Github. NDepend.Path represents a major step for the path project. It can now handle pretty much all paths scenarios asked by … Continue reading 

Also posted in C#, NDepend.Path | 1 Comment

Code Contracts is the next coding practice you should learn and use

Last week I was presenting a session covering some practices and tooling we were using to build NDepend at BuildStuff Lithuania 2013. One of the essential practice we are using is Code Contracts and really I was surprised when I … Continue reading 

Also posted in .NET Fx, Code, Code Contract, Code Coverage, Resharper, UI, Unit Test | 13 Comments

The concept of User Voice

As many I guess, I discovered the concept of User Voice through the Visual Studio User Voice page. We just setup a User Voice page for NDepend this morning. It was surprisingly straightforward, the UserVoice.com team did a great job … Continue reading 

Also posted in Users Voice | 1 Comment

Measuring Development Trends

NDepend version 5 has just turned RTM today! Big milestone! Last week I talked of the UI relifting we did, but v5 comes also with several flagship features. One of those new feature is about measuring and visualizing development trends. … Continue reading 

Also posted in Code, Code metrics, Trend | Leave a comment

Rich UI enhancement : A case study

NDepend version 5 Release Candidate has just been released! Just-in-time to be sim-shipped with Visual Studio 2013. This release represents a big achievement for us because it comes with several flagship features, but also because the UI has been thoroughly … Continue reading 

Also posted in UI, User Experience, UX | 2 Comments

On Hungarian notation for instance vs. static fields naming

If there is a topic I disagree with most fellow programmers, it is about instance and static fields naming guidelines. Call me old-school, but I am prefixing them with m_ and s_, or in others word I am doing Hungarian … Continue reading 

Also posted in API usage, C#, Naming Conventions | 21 Comments

Ruling Code Quality Regression

A prominent characteristic of the software industry is that products are constantly evolving. All modern development methodologies prone that a product should evolve through small iterations. Internally, development teams are using Continuous Integration servers that shrink increment length to a … Continue reading 

Also posted in API usage, CC, Change summary, Code, code base snapshot comparison, Code Diff, Code Query, Code Rule, code structure, CQLinq, Full Coverage, Immutability, Lines of Code, LINQ, Maintainability, software metric, Software Quality Measurement | 1 Comment

Validating Architecture through LINQ Query

These days we are restructuring the NDepend code base to make it more suited to welcome future features implementation. Here is below the new architecture of the NDepend.UI assembly, made of around 50.000 lines of code, shown through a Dependency Structure … Continue reading 

Also posted in C#, Code Dependency, Code Query, Code Rule, code structure, Code visualization, CQLinq, Dependency Matrix, Layer, LINQ, namespace, namespaces, Pattern, Patterns, Performance | 2 Comments

Code Query and Rule over LINQ

Yesterday, after two years of a relentless development effort, we finally released NDepend v4. Personally, I consider this version as the biggest milestone we’ve ever achieved. The three flagship features are: Code query and rule over LINQ (CQLinq) NDepend.API to … Continue reading 

Also posted in Code Query, Code Rule, CQLinq, Object oriented programming, VS Integration | 2 Comments