Welcome to the blog of Marcel Oelke from Frankfurt, Germany.

Who is the Subversion King in your Company?

Have you ever wanted to know who’s the top committer in your company?
In my previous company we etablished the term “CVS King”, a title comparable to “Employee of the month”. The developer with the most cvs commits was the “CVS King of the month”. We determined who was the “CSV King” using commit emails that were sent to all developers on each cvs commit.
Two years ago we switched to Subversion, so now we’re talking about the “Subversion King”. Naturally all this is anything but serious ;)

Anyway, today i programmed a little php script that uses a different approach to determine who is the “Subversion King of the Month”. It’s counting the line delta directly from the svn repository using svnlook. So the developer with the most lines added to the repository (not the most commits) is the number one.
Here’s some example output (names are anonymized):

--- Most productive users for 11/2007 ---
1   usera                6319      42.47%
2   userb                5797      38.96%
3   userc                1990      13.37%
4   userd                 773      05.20%
--- Most active commiters for 11/2007 ---
1   usera                  47         47%
2   userb                  34         34%
3   userc                   4          4%
4   userd                   2          2%
-----------------------------------------

The script reads all commits (revisions) for the current month, counts the line delta (how many lines have been added/removed) and the amount of commits.
You can view the highlighted source here or download the script here. Use it on the command line like that:
php -f /path/to/svn/repository

I know that the number of lines comitted may not be the one and only criteria to measure the productivity of a developer. But its an indicator to start with.
So the question is: Are you the “Subversion King” in your company/project?

P.S.
Again, please, dont take this serious ;)

9 Comments so far »

  1. biophonc said

    am November 26 2007 @ 6:14 pm

    bos? ;)

  2. Toby said

    am November 26 2007 @ 6:59 pm

    Here’s a cgi I wrote a few years ago…
    (counts commits not lines)

    https://slashdot.org/~toby/journal/129516

  3. Barry Hunter said

    am November 26 2007 @ 7:44 pm

    Very nice!

    I think there is a bug in the display of number of commits. It displays the number again in the percent column, (just the wrong variable used in the sprintf - should be $percent not $commits)

    Hope that helps, and thanks for the script.

  4. jim said

    am November 26 2007 @ 9:20 pm

    so given the report, how do you then punish the person who is obviously creating the most bugs in your software?

  5. Marcel Oelke said

    am November 26 2007 @ 9:30 pm

    We dont punish, is your company doing this? ;)

  6. Marcel Oelke said

    am November 27 2007 @ 9:09 am

    Thanks Barry, i fixed that bug.

  7. Marv said

    am November 27 2007 @ 9:40 pm

    Hey I contacted you a few weeks ago, (sorry to pester you) but you said that you were going to make a post about how the record mouse movements could be done and you probably forgot, just hoping you can write up the tutorial as I’m very interested and would love to try it out - I always assumed that it would require a dedicated server to log such data, but you seem to have understood the concept behind it better then I was able to.

  8. Sam said

    am December 5 2007 @ 9:43 am

    Hey marcel, when’s your next post explaining the mouse gestures going to be ?

  9. Marcel Oelke said

    am December 11 2007 @ 1:13 am

    Hey Sam,

    I’m currently super busy with my work. But I hope that I get the the requried time this week.

    Cheers
    Marcel

Comment RSS · TrackBack URI

Leave a comment

Name: (Required)

eMail: (Required)

Website:

Comment: