Definition
The average number of times Active Contributors commit code per coding day.
Calculation
Count of commits made over a time period / Count of days that had at least 1 commit
Example: Find the average commits per day for this developer
Monday: 4 commits
Tuesday: 1 commit
Wednesday: 0 commits
Thursday: 2 commits
Friday: 5 commits
Saturday: 0 commits
Sunday 0 commits
12 total commits / 4 coding days = 3 commits per day
Why it matters
Each commit serves as a checkpoint where engineers are saving a snapshot of their work. Smaller commits represent more frequent checkpointing, so that engineers can track the evolution of their change as they work within their local development environment. In the case where something goes wrong, like a difficult test failure, these incremental commits can help localize the issue relative to their unit of work.
This work should also be regularly pushing up those to the VCS so that their progress can be visible to the rest of the team.
How to use it
If this number is higher, then the developer is likely making small, atomic commits, which is behavior you may want to reinforce. If this number is lower, then it’s an indicator that a developer either (1) isn’t getting enough time to work, (2) is getting enough time, but struggling with the codebase, (3) is getting enough time, but not shipping in small batches.
When this number is trending upwards, it’s a sign that a developer is becoming more confident and effective. If it’s trending downwards, they might be impeded or not engaged.