---
edit: Actually, my window manager of choice has basically been abandoned by its developer several years ago, and it's still bug-free, stable, and lacking basically nothing. I finally came up with a feature enhancement I'd like it to have today, after using it for five years with no complaints or wants -- and that enhancement is really just an improvement of an existing feature.
More to the point, it's an enhancement that no window manager has, so I'm likely to need to write the code for this feature enhancement myself if I want it badly enough. I may pick up maintainership for the project to do just that.
Think about that a moment: one feature enhancement requested in have a decade, merely an extension of an already existing feature, and it's something entirely new to window managers as far as I'm aware. This thing has had no need for additional code in all that time, and it has been better as a result of all that.
Perhaps a better metric is the most recent commit combined with the number of open issues. Or maybe just the number of open issues, judged by their severity.
Half a decade -- not have a decade.
Sourceforge is centered around projects. You have to register and get approval for each project separately (at least you did a few years ago, it has been a long time since I last went through the exercise). This left a significant percentage of projects with descriptions of the author's intent, but no actual code. It also meant that any third party contributions had to go back through the author (who might have lost interest).
I have never seen a project on github with no code. There is no approval process. You simply push and you are up and running. Forking allows others to start contributing right away without any action from the original author (and github really encourages you to fork projects). Then the tools that github provides makes collaboration way easier than it was in the past (pull requests vs emailing patches).
I agree with all of the things the author notes, but I really think this is github's killer feature. (Hope I didn't come off as too much of a github fanboy).
. . . but somehow GitHub gets so much attention that many people think it's the only code hosting site in the world, just like so many idiots think that Ubuntu is the only open source operating system in the world.
Not to say that BitBucket isn't a nice UI, but what major features did they invent? (not a rhetorical question)
Mercurial is great, but it's not git. It's a hassle to have to learn two ways of doing everything. (Being intimately familiar with git's required these days, especially for Linux and Android programmers. Mercurial's not.)
If I can see the sorts of things a candidate has worked on in the past, I can more tailor the interview and ask more engaging questions. I want to know what they're passionate enough about that they will give up free time to pursue it.
None of this is specific to Github.
Since then I've wrapped my brain around Git and absolutely love it. I now have accounts on both Bitbucket and Github and both work equally well for what I want. The only feature that I feel is missing from Github is the ability to create unlimited private repositories for free, if not at least, on their lowest paid tier.
I tend to create random projects haphazardly, and while I like to have it versioned and "backed up" somewhere where I can invite friends to collaborate with me, I don't want some of these projects out in the open. Some of them are research projects for new products I am developing, others are projects I am working on with friends that could potentially be monetized.
Don't get me wrong, I understand where Github is coming from, and being familiar with both Git and Hg is not going to hurt, it is annoying on a context switching level to have to remember how to do something in hg and then in git when switching between projects.
At the point where I am in my career I don't yet make enough money (after paying student loans, car insurance, etc...) to spend money on monthly billing paid services.
I've found Git really easy to use coming from SVN. My main problem has just been the Windows tools haven't been as intuitive as Tortoise. What issues did you first have with Git?
As much as we would like to believe code can be self-documenting, in most cases it is not. Having no README file can make your project more opaque. I probably shouldn't mention this in these parts, but one example of an active project without any README at all is PG's Arc. https://github.com/nex3/arc
I will concede that the Arc project does have a website that covers install instructions, but for new languages where nearly all users are newbies, having no README on GitHub can be an inconvenience.
I've spoken to a couple different Open Source app maintainers who have basically said: GitHub made our community of contributors better by making it so easy to fork smaller portions of the codebase.
Where before they would basically just take abuse about issue/features (Why don't you support Markdown instead of direct HTML entry in your CMS, or whatever). Now they can just say "fork off" and have whoever complains maintain a separate codebase with their custom additions.
9. Made it popular to post more than just projects (off hand I'm thinking about dot/config files)
10. Make it easier to actually provide patches to open source projects