Ohloh Tracks Open Source Developers 115
eldavojohn writes "The startup company Ohloh has a database listing 70,000 developers working on 11,000 open source projects. Their aim is to 'rank' open source developers, which raises some interesting questions about exactly how useful this tracking company is. Questions like, 'Is there an accurate way beyond word of mouth to measure the importance and skill of a developer?' I found it slightly alarming that, to this site, the number of commits (with input from the number of kudos) tells how good a developer you are."
Accurate? Not for me (Score:5, Interesting)
I don't know how representative it is, or if it might improve over time, but I looked myself up.
I found mentions in 5 projects - _except_ they're all just versions of 2.6 kernel source with the same contribution for an obscure TV card cx88 variant I did. In practice, I'm sure I'm hardly alone in having contributions (mostly in small ways, but sometimes very considerably) to over 100 projects over the years. I guess I have to go through and add some of those projects.
Naw, CBA. At least I can make sure my resume is accurate.
So What Metrics Do You Suggest? (Score:5, Interesting)
I tried to think of metrics to relay up the chain (a special thank you to the stat-scm goal in maven) but I come up with some pretty lame ones:
I submitted this story hoping it would open dialog on measuring coding abilities in a semi-automated way.
Re:So What Metrics Do You Suggest? (Score:5, Insightful)
# of kernel builds
# of ICQ shouting matches ending in "Nazi!!!"
# of cans of Jolt consumed
# of steps from mom's basement to side door.
Or the old standby, lines of code (including comments, of course).
In short, there's no way to automatically judge the value of a programmer based on silly metrics. How would one score for "bugs not written" or "elegance of solution"/"nasty kludge avoided"?
FOSS is worth whatever the users and the coders say.
Re: (Score:1)
But seriously, the problem with a lot of the FOSS communities is that there are a great deal of part timers. How do you measure the skills of someone who has a day job coding and the has a pet project or three? This wi
No, no no! (Score:2, Funny)
# of kernel builds
# of ICQ shouting matches ending in "Nazi!!!"
# of cans of Jolt consumed
# of steps from mom's basement to side door.
Re: (Score:1, Redundant)
Personally, my vote is for the all-binary Microsoft-employee vs. Non-microsoft-employee model.
Re: (Score:3, Informative)
Software development metrics are not worthless. They are, however, seriously misunderstood. This is partly why we built Ohloh to focus on Open Source: it's the world's largest testbed of available software development metrics.
One challenge to interpreting development metrics is having a clue about what is 'normal'. Just knowing your FOOBAZ count is X doesn't help much. Once you can compare your FOOBAZ count to 100k other developers, it may begin to give you some helpful perspective. Of course, relying on
Re: (Score:2)
Re:So What Metrics Do You Suggest? (Score:4, Insightful)
Re:So What Metrics Do You Suggest? (Score:5, Insightful)
But what's the point? (Score:5, Insightful)
Some people will get a shiny glory and some will feel annoyed bbecause their projects/contributions have not been tracked.
Re: (Score:1)
Making OSS dev is hardly a competition sport, so why do this? Kudos is one thing, but that should come from the community, not from some database.
The "Kudos" is given by the community. And I like the inclusion of objective criteria to supplement the popularity contest. [ And if you don't think "number of commits" is an objective criteria, you don't know the meaning of the word "objective". ]
Some people will get a shiny glory and some will feel annoyed bbecause their projects/contributions have not been tracked.
Yeah, teenage angst. They need to get over it.
Re: (Score:2, Informative)
Re: (Score:1)
Re: (Score:2)
Nice thing about open source code is that it is reviewed by other developers as it goes. This site might be worthwhile if it has good input from thoughtful people. Like Slashdot people! The shiny...happy kind...! Righ
Re: (Score:2)
But nothing is really truly accurate, only guides humans. If it were, managers could be robots.
Re: (Score:3, Insightful)
Re: (Score:2)
- Code cleanliness (e.g. consistent camelCase, whitespace, comment styles)
- Statistics of commits over the same section of code (may imply that it is buggy)
- Rate of API breakage -- how long does a function last before it's name/args/return value changes. This metric could be "weighted" by evaluating the prevalence of the function. A high rate implies an unstable design.
Some of the ones I don't like that Ohloh uses:
- "Mature" meaning that the project ha
Re: (Score:2)
It would be a better metric to show what percentage of your codebase is actually covered by unit tests.
Using Test-Driven Development ensures that this percentage is notably high.
Re: (Score:2)
I bet I know how you initialise a 10,000 element array, then.
The "Karma" Algorithm I use (Score:2)
The karma score is calculated for a single commit, and uses a combination of lines and files added/removed/changed (with some munging so that file moves don't get line scores), and then adds to that the size of the commit message in bytes, and then applies a maximum upper score per commit.
It's worked pretty well, since all the best ways of gaming your karma score also encourage good p
Code-to-comment ratio (Score:2)
I believe code-to-comment ratio is one of the things Ohloh tracks -- but it can't even figure that out for everyone.
For example, Perl modules are often documented in POD, rather than "normal" comments beginning with #, but Ohloh doesn't know how to parse Pod and so consider lots of well-documented modules to be nearly completely uncommented.
(That would be sort of as if they only counted // comments in Java source but not any
Re: (Score:1)
Like I actually care. I don't do this stuff for recognition anyway. I do it because it's fun.
Re: (Score:1)
sounds familiar (Score:5, Informative)
no thanks (Score:2, Interesting)
This could even have a negative effect if developers get concerned about their ranking and try to game t
Same here (Score:5, Insightful)
And what about contributors who submitted patches that had to be committed by someone else? Or people who contribute by providing help on IRC channels, blogs, forums, or other mailing lists?
While ohloh metrics can be useful, they also need to be taken with a grain of salt, particularly the contributor metrics. They're a bit more useful on measuring a project as a whole (but they still miss a lot of activity).
Listed twice (Score:3, Interesting)
Re: (Score:2)
Particularly all of their metrics. Another example: one metric is the ratio of code to comments. This is debatable enough in and of itself (there are an awful lot of people who think code should never be commented, on grounds that code which requires comments must not be written clearly), but on top of that it takes a very narrow view of what constitutes a "comment". For example, a P
Re: (Score:2)
business model (Score:3, Interesting)
Re: (Score:2)
I imagine they might make quite nice head hunter "equipment". Think company x wanting to incorporate SMB connectivity to their closed source product (and requiring a developer to do so). Instead of digging thru or placing classifieds, Ohloh would hook them up with the top 10 contributers to smbfs. This could turn out to be a great deal for both sides. Company X gets a dev really skilled in th
Their model is simple (Score:2)
Sites can sell advertising when they get lots of frequent users. Sites need users to get users. Sites need some kind of user list to bootstrap. Where can you get a big list of users from? Why, isn't that opensource stuff based on lots of people communicating in the open, over the net? Oh, hey, let's use those suckers. Hmm. How can we make more suckers sign up after the first ones? Hmm... we need
Re: (Score:1, Interesting)
Remember, a startup virtually never ends up doing what they start out doing. (The Apple guys started out making phone-hacking blue
Would this discourage contributers to open source? (Score:3, Insightful)
Re:Would this discourage contributers to open sour (Score:2)
commits (Score:1)
Few commits means either you're Donald Knuth, or you're not that actively developing your code.
In Open Source active development does tend to mean a reduction in crapness, software wise.
What else it could say I don't know, but since there are few, if any definitive means by which code quality can be measured (and don't give me that lines of code versus man hours rubbish, I heard enough of that nonsense at uni), it's probably a reasonable metric.
Nonsense (Score:2)
They are attempting to measure something for which there is no consistent measure. As a consequence, there is no question that their "ratings" MUST be distortions.
Re: (Score:1)
I believe Fred Brooks points this out in the Mythical Man Month.
Re:commits (Score:4, Interesting)
You might be right, but it still sucks. And in the case when all your solutions are crap, I think it's dishonest to present any of them as actual, workable solutions.
Re: (Score:2)
And not all commits are code. A decent percentage of the commits in my projects are i18n/l10n-related. Those are even harder
Re: (Score:2)
It's as good a measure as any.
Talk about damning with faint praise. That's how I aspire to be evaluated: lined up naked against a wall while my vital statistics are transcribed by a group of bonobo monkeys. Hey, it's as good a measure as any.
In fact, the monkey-measure is probably better than commit-count, because no matter how my spam box bulges, the monkey-measure is less likely to persuade me to exchange an effective work habit for an ineffective work habit in an effort to sway a useless statistic.
People who fail to vomit when lin
Re: (Score:2)
Consider the case where you don't have commit access, which means that not only is someone else committing for you, but they're probably committing it all in one big patch, rather than lots of little increments.
I know that at work, where I have commit access, I tend to commit all the time -- if I need to not break things for everyone else, I make a branch. But for open source projects, I might do a weekend's worth of coding before sending it in, and even then, someone else g
This has been a problem at Wikipedia for a while (Score:3, Interesting)
Number of commits? (Score:5, Interesting)
And I would be ranked highly as a great developer?
Re:Number of commits? (Score:4, Insightful)
Anyone who thinks they can produce bug free code first try is an idiot. Anyone willing to accept that there are always going to be bugs, and actively looks for them is a good coder.
Re: (Score:2)
I'm not calling him stupid... That was the example he was trying to get across. By this metric, stupid programmers that commit a lot because of mistakes are rated as highly as highly-motivated, caring programmers who commit a lot because they have a lot of additions to make.
Re: (Score:2)
You can't be a very good coder yourself.
Making mistakes != stupid coder.
Making mistakes, finding them and fixing them makes a good coder, nothing else.
Sure the fix might not be great, it might be an ugly hack that needs to be refined, but you're only a bad coder if you don't fix your mistakes, not if you make them in the first place.
Re: (Score:2)
This commit count thing is meaningless anyway. Some people commit more or less often, depends on personal preference. Just about the only things y
Re: (Score:2)
As a rule, the working, most tested versions of code appear in stable releases. These may themselves be in a versioning system, but as a rule they are marked as distinct.
Re: (Score:2)
Then I suggest you fail to understand the purpose of versioning systems. Their purpose is not to store perfect code. The purpose is to store the latest changes to code.
No, I'm not failing to understand anything here. My point has *nothing* to do with the purpose of versioning systems. My point is that there are sloppier programmers, and there are neater programmers. As sloppy programmer might carelessly check in code without testing it (or without testing it thoroughly), believing that it works. A sloppy programmer might take 10 iterations to get something right, while a neater programmer might only need 3 iterations to get that same thing right.
Sure, sometimes I c
Re: (Score:1)
Re: (Score:2)
Re: (Score:2)
The concern here was about people committing over and over again in a short period to fix bugs and thus being rated higher, not that you went "oops" and fixed a bug once or twice.
Re: (Score:2)
Re: (Score:1)
L337 development skills! (Score:4, Funny)
Your willingness to fix errors, add comments, and do code rewrites puts you in the pantheon of programming gods! The next thing you are going to tell me you actually write your own legible "how to" user guides in PDF!
Re: (Score:2)
A couple commits to Firefox, the #1 rated project, is probably worth many commits to a less highly rated project. I'll let you go to their site and figure out how they rate projects.
Re: (Score:1, Informative)
Pedantic tip... (Score:2)
Re: (Score:2)
Flawed, but interesting. (Score:4, Insightful)
I would rather not have my real name attached to most of what I've contributed. One, because my code is so damn sloppy that it's embarrassing. Two, because I don't want the hassle of my real life - you know, offline - and my, uh, "digital lives" conflicting with each other. Three, if I was easy to find - online - I run the risk of being pestered with silly tech support questions.
UrCreepyNeighbor, while an accurate description of my personality, is one of many identities I have. Same could be said of almost everyone. I'm sure "HotChic17CA" doesn't use that username when she's talking with her grandmother, for example.
Re: (Score:1)
Re: (Score:2, Informative)
Re: (Score:2)
What stops me from claiming nicks which are not my own?
Re: (Score:2)
Re: (Score:2)
Wouldn't such a system assume that everyone uses only one handle - or, their real name - all the time for every project?
You can register on the page and link all the different aliases back to together to refer to a single person.
I think its a much bigger issue that all those people sending patches will be ignored, since there isn't really a standard way in most version tracking systems to keep track of the patch submitter instead of those that actually commit it into the repository.
Re: (Score:2)
You can claim aliases (Score:1)
I don't seem a problem in that free software contributions you want not to be associated with your legal name, won't be associated with your legal name.
Re: (Score:2)
Definitely not. Instead, he probably goes with AgentJohnSmithFBI.
Re: (Score:1)
Re: (Score:2)
Slashdot (Score:2)
And on a thing like that, you may have someone who knows absolutely nothing about code making judgements about coders.
It's a stupid idea. It actually sounds like some harebrained idea thought up by a P
Re: (Score:2)
Of course if they gave me "-1 (Idiot)", I'd use that on the "FIRST!" people instead.
Re: (Score:2)
And I'll agree with the GP that this Ohloh thing sounds like it came straight from a PHB.
Re: (Score:2)
Fortunately it seems that whenever I happen to hit slashdto right when they've posted something new I'm invited to metamoderate, so by the time I'm done with thet there are at least a doze
What An Incredibly Inane Idea (Score:2)
I think I would object to having my name listed on this site, even if the "rating" were high.
Re: (Score:3, Insightful)
This is only half true. You can judge the quality of code. How good does is comply to the OO principles? Makes the design sense? Does it look maintainable? Robust? Reusable? How is it documented? There are even some metrics, which could be measured by static code analysis programs. Nevertheless I doubt that for each with Ohloh registered software project a senior software engineer
Re: (Score:2)
Re: (Score:2)
They are attempting to judge value when there simply is no objective measure for the kind of things they are trying to judge.
I think you're confusing "no objective measure" with "no known algorithms to computate those measures". Just because we don't know how to implement meaningful metrics with a computer or with some formulas, doesn't mean they don't exist. The proof of this is that other humans who are very good coders *are* actually, on the whole, pretty good (in fact, the *best* system out of them *a
Good point but not what I meant. (Score:2)
There is no reliable way to tell, after the fact. Period. And different projects have different commit and documentation standards.
As long as there is no standard way of handling these things among all open source projects (yeah right), this kind of metric will remain meaningless,
Sing for it! (Score:2)
Unless, heaven forbid, the voting is more like the U.S.'s political system.
Advogato (Score:2)
Other frustrations (Score:2)
Re: (Score:2)
I, for example, have commit access to one of the Linux kernel subsystems; about half the changes I commit, maybe a bit less, are contributed by users, and they appear properly attributed (to the original patch author) in the kernel git changelog and in ohloh.
As for SCM changes, care must be taken during the conversion... We started out with CVS, and are currently using mercurial; when the change was made, the whole hist
Bad measurement, but brilliant move (Score:1)
However it is still a brilliant move, as it will motivate a lot of developers to add projects to Ohloh's database. Developers will add just the projects they have contributed to, so that there ranking will go up.
right tool for A job ? (Score:1)
especially if it's by the right companies (ibm,google,redhat,novell,...)
Re: (Score:1)
Quantitative metrics dont work on developers (Score:2)
I [commit] can [commit] game [commit] any [commit] system [commit] based [commit] on [commit] commit [commit] counts[commit].[commit]
Numver off bugz fixd es eze 2 gaeme two.
Bug free code and low bug recidivism is easy. [have tester check code before checkin].
Number of projects? Sure. Every possible sub-component now has it's own source tree and project space.
Lines of code? Su
Open source playing cards to help funding!!! (Score:2)
"Wow! Collect yours today"
Then 2 kids in school uniforms
"I'll trade you my RMS for your Linus and Eric S Raymond!"
Another looser... (Score:2)
I like the dollar figure (Score:2)
And yet again... (Score:2)
Once more, a coding-related site which lumps C and C++ together into one "C/C++" agglomeration. That's the point where I stopped looking.
And of course, they don't track mercurial (Score:1)
From the front page (Score:1)
why not help them instead (Score:2)
And it sucks for small projects (Score:1)
Ohloh has it listed. [ohloh.net], as well as the second of the two prior forks (both have since died as the companies couldn't maintain them without me). The newer project is however a niche-market project. It allows me to earn a living but it's hardly the
US$ 0.02 (Score:2)