I recently started learning Python. As a simple starting project, I created a tool that grades the readability of git commit messages. I am using the Flesch reading ease score to determine how easy a commit message may be understood.

For now, the script only supports walking through git repositories, using git log to obtain a pseuo-YAML output. It should easily be possible to support more revision control systems, but I am most familiar with git.

An orthogonal and equally interesting problem would be to grade the information of a given commit. A slew of commits of the form "update" are certainly less informative than commits of the form "Fixed bug 23 by applying the Foo-bar filter to some data sets". Maybe I will add this functionality later on.

Example usage:

$ git clone http://git.annwfn.net/commitease
$ ./commitease.py 
Mean readability value for Bastian Rieck: 96.35095238095242

See the git repository of commitease for more information.