The Relationship Between Team Size and Code Quality
January 19, 2017 1 minutes read Over the last few years, I’ve had the occasion to observe lots of software teams. These teams come in all shapes and sizes, as...
Adding Static Analysis to Your Team’s DNA
January 12, 2017 1 minutes read Stop me if this sounds familiar. (Well, not literally. I realize that asynchronous publication makes it hard for you to actually stop me as...
The Best Christmas Present to Give Your Developers
January 5, 2017 2 minutes read When Christmas time arrives, it comes with the need to buy gifts, eat too much food, and attend various gatherings. All of that comes...
New Year’s Resolutions for Code Quality
December 29, 2016 2 minutes read Perhaps more than any other holiday I can think of, New Year’s Day has specific traditions. With other holidays, they range all over the map....
Detecting Performance Bottlenecks with NDepend
December 15, 2016 2 minutes read In the past, I’ve talked about the nature of static code analysis. Specifically, static analysis involves analyzing programs’ source code without actually executing them....
How Much Code Should My Developers Be Responsible For?
December 8, 2016 1 minutes read As I work with more and more organizations, my compiled list of interesting questions grows. Seriously – I have quite the backlog. And I...
How to Scale Your Static Analysis Tooling
December 1, 2016 2 minutes read If you wander the halls of a large company with a large software development organization, you will find plenty of examples of practice and process...
Alternatives to Lines of Code (LOC)
November 23, 2016 3 minutes read It amazes me that in 2016, I still hear the occasional story of some software team manager measuring developer productivity by committed lines of...
The Fastest Way to Get to Know NDepend
November 17, 2016 2 minutes read I confess to a certain level of avoidance when it comes to tackling something new. If pressed for introspection, I think I do this...
Concreteness: Entering the Zone of Pain
November 10, 2016 1 minutes read Years ago, when I first downloaded a trial of NDepend, I chuckled when I saw the “Abstractness vs. Instability” graph. The concept itself does...
How to Prioritize Bugs on Your To-Do List
November 3, 2016 1 minutes read People frequently ask me questions about code quality. People also frequently ask me questions about efficiency and productivity. But it seems we rarely wind up...
Making Devs, Architects, and Managers Happy with the Static Analysis Tool
October 27, 2016 2 minutes read Organizations come to possess a static analysis tool in a variety of ways. In some cases, management decides on some kind of quality initiative...
Static Analysis for the Build Machine?
October 20, 2016 2 minutes read I remember my earliest experiences with static analysis. Probably a decade ago, I started to read about it during grad school and poke around...
The Relationship between Static Analysis and Continuous Testing
October 13, 2016 1 minutes read As an adult, I have learned that I have an introvert type personality. I do alright socially, don’t mind public speaking, and do not...
How to Perform Effective Team Code Reviews
October 6, 2016 1 minutes read I’ve heard people say (paraphrased) that teams succeed uniformly, but fail each in its own unique way. While I might argue the veracity of...
Rewrite or Refactor?
September 29, 2016 1 minutes read I’ve trod this path before in various incarnations and I’ll do it again today. After all, I can think of few topics in software...
Secrets of Maintainable Codebases
September 28, 2016 2 minutes read You should write maintainable code. I assume people have told you this at some point. The admonishment is as obligatory as it is vague....
What to do when Your Colleague Creates Spaghetti Code
September 15, 2016 2 minutes read I write for a number of different outfits and earn my living consulting around software and IT. Because of the intersection of these three...
How to Get Company Coding Standards Right (and Wrong)
September 8, 2016 2 minutes read Nothing compares with the first week on a new job or team. You experience an interesting swirl of anticipation, excitement, novelty, nervousness, and probably...
Keep Your Codebase Fit with Trend Metrics
September 1, 2016 2 minutes read A while back, I wrote a post about the importance of trends when discussing code metrics. Metrics have an impact when teams are first...
Considering a Port to .NET Core? Use NDepend
August 25, 2016 2 minutes read An American colloquialism holds, “only two things are certain: death and taxes.” If I had to appropriate that for the software industry, I might say that...
Plugging Leaky Abstractions
August 18, 2016 2 minutes read In 2002, Joel Spolsky coined something he called “The Law of Leaky Abstractions.” In software, an “abstraction” hides complexity of an underlying system from those...
Measure Your Code to Get Back on Track
August 11, 2016 1 minutes read When I’m called in for strategy advice on a codebase, I never arrive to find a situation where all parties want to tell me...
Managing Code Analysis Statistics with the NDepend API
August 4, 2016 3 minutes read If you’re familiar with NDepend, you’re probably familiar with the Visual Studio plugin, the out of the box metrics, the excellent visualization tools, and...
How to Deliver Software Projects on Time
July 28, 2016 3 minutes read Someone asked me recently, almost in passing, about the keys to delivering software projects on time. In this particular instance, it was actually a...
Static Analysis Isn’t Just for Techies
July 21, 2016 2 minutes read I do a lot of work with and around static analysis tools. Obviously, I write for this blog. I also have a consulting practice...
Avoid Technical Debt with NDepend
July 14, 2016 2 minutes read The term “technical debt” has become ubiquitous in the programming world. In the most general sense, it reflects the idea that you’re doing something...
Easy to Miss Code Smells
July 7, 2016 2 minutes read The concept of a code smell is, perhaps, one of the most evocative in our profession. The name itself has a levity factor to...
How to Get an Edge as an IT Management Consultant
June 30, 2016 2 minutes read I’ve made no secret of, and even frequently referred to my consulting practice including aspects of IT management consulting. In short, one of my...
How to Analyze a Complex Solution
June 23, 2016 2 minutes read I’ve made no secret that I spend a lot of time these days analyzing code bases as a consultant, and I’ve also made no...