With a successful launch of Teams 2.0 behind us, we've finally had time to revisit some of the most important features we've promised in the past. At the top of that list is the Tech Debt Inspector, a tool we've long awaited, that remixes Directory Browser to pluck out the directories from a git repo where developers struggle most.

In my humble opinion, the result is one of the most magical reports we've created so far 🔮

The lowest-velocity directories in the GitClear repo: a medley of script directories, config files, and complex math derivations 😝

What this view is showing is that we have calculated the "Estimated Time Spent" in each directory of the project, and created a list where the time spent is high relative to the Line Impact that was registered. What makes our GitClear directory list so intriguing is how well it lines up with the lived experience of developing GitClear.

Perhaps some of these are familiar sources of slow/painful development in your projects?

Payment code. Any bug is guaranteed to generate a support ticket, which implies a time-consuming investigation before making a usually-small change.

Scripts. It's slow to maintain code written in languages that are rarely used.

Config files. Config changes usually happen in response to a time-consuming bug investigation. They almost always require extensive doc interpretation, followed by a tiny code change.

Math calculations. Tend to require iteration to get right.

Shared/library code. Takes more time to evaluate all callers before being changed.

linkThe difference between Line Impact in Directory Browser vs Debt Inspector

As covered in our new help pages on Directory Browser and Debt Inspector, there is an important distinction between the two directory browsing modes. In the "All Files" or "classic Directory Browser" view, each directory shows the cumulative Line Impact, Estimated Time and Velocity for files in the directory and all of its subdirectories. When viewing the Tech Debt Inspector, subdirectories are not included.

linkA file-level and commit-level view of tech debt

To dig into more granular details of where low-velocity work is occurring, click into a directory:

Files from a low velocity directory authored by your humble author

Yep -- Debt Inspector correctly identifies that the CSV file that was generated on behalf of our Line Impact Research was indeed a slow and iterative development cycle, indistinguishable from tech debt. It is called out as such within the directory, where it is the lowest velocity file among those in one of the lower-velocity directories.

linkA Comprehensive Guide to Tech Debt

To celebrate the launch of Tech Debt Inspector and its help page, we're publishing our newest longform content post, currently titled "Tech debt in depth: What is it, how is it measured, and what to do about it?"

The article dives into my perspectives on tech debt, as gleaned from a 25-year career creating (then reducing) tech debt. 😅 The tl; dr is that tech debt is a normal part of every healthy project, but you can't turn a blind eye to it -- it needs to be actively, thoughtfully added and removed.

Drop a line in the comments if you have any other questions or insights about tech debt that you think could be included in a comprehensive guide on the topic?

linkNew: Blog post announcements

If you're reading this blog post, it's quite possibly because we recently debuted our first-ever repeating email, which notifies users when a new blog post is published (generally 1-2x per month). GitClear's general philosophy re: email is that it should be minimized, except when there is something useful and important to say. We hope you'll find our blog posts useful, but if not, there's an unsubscribe link at the bottom of every email update.