  We present a code quality metric, Corrective Commit Probability (CCP),
measuring the probability that a commit reflects corrective maintenance. We
show that this metric agrees with developers' concept of quality, informative,
and stable. Corrective commits are identified by applying a linguistic model to
the commit messages. Corrective commits are identified by applying a linguistic
model to the commit messages. We compute the CCP of all large active GitHub
projects (7,557 projects with at least 200 commits in 2019). This leads to the
creation of a quality scale, suggesting that the bottom 10% of quality projects
spend at least 6 times more effort on fixing bugs than the top 10%. Analysis of
project attributes shows that lower CCP (higher quality) is associated with
smaller files, lower coupling, use of languages like JavaScript and C# as
opposed to PHP and C++, fewer developers, lower developer churn, better
onboarding, and better productivity. Among other things these results support
the "Quality is Free" claim, and suggest that achieving higher quality need not
require higher expenses.
