[ANNOUNCE] xorg-server

Mathieu Lacage mathieu.lacage at sophia.inria.fr
Fri Jul 2 01:20:16 PDT 2010

On Thu, 2010-07-01 at 13:24 -0600, Jonathan Corbet wrote:

> > For sure the information contained in git logs don't measure how high-level the
> > changes are being submitted, but it would be nice to devise some metrics, apart
> > from the usual LOC, which could help us visualize the architectural impact
> > caused by the big players.
> I've wanted such a metric for a long time.  Lines of code is a terrible
> metric for work done in general, even if you don't want to make a
> distinction between "architectural" and other changes.  Changeset
> counts aren't really any better.  Among other things, both create poor
> incentives if people actually start to care about the numbers.
> That said, I've still not found a better way of trying to measure
> "who's doing the work," especially in the context of a high-bandwidth
> project like the kernel.  If anybody has any ideas, I'm all ears...

What I have done in the past is correlate the functions changed by a
developer against a callgraph (dynamic[1] or static) of the program. 

For example, functions deep in the callgraph get more weight and you can
sum the weight of all the functions changed by a developer (This does
not give much weight to the code of the mainloop which is still a
critical piece of infrastructure but except for that, it's usually an
interesting metric). 

I remember trying other per-function weights such as the number of
functions calling the function or the number of functions called by the
function or the size in bytes of the function but I don't remember if
they were really relevant to the final ranking. What might be
interesting is assigning a set of relative weights to these different
weights to generate the final per-function weight and see if/how this
changes the final ranking. I never got time to try this though.


[1]: I generated the dynamic callgraphs with this thing I wrote:
http://cutebugs.net/bozo-profiler/ (there is a tarball to download)

More information about the xorg mailing list