Back in the day there was one site to host an open source software project, and it was SourceForge, and things were good. A quick glance on SourceForge or its sister site Freshmeat, and it was easy to track the majority of activity in the FOSS community. SourceForge also set certain expectations of projects that sites like GitHub do not, and the result may be less than optimal.
Not every project was hosted on SourceForge or announced on Freshmeat, of course. But it seemed like a very large percentage of projects that weren't under a larger umbrella (like sub-projects of GNOME or KDE) were hosted and announced in a more or less central location. You could also count on at least a minimal Web page for any given project that would have a bit of information to go on. Tracking Freshmeat meant you had a good idea what was being released.
Those days are long over, and I wonder if that's a good thing. SourceForge, for all its flaws (and it had plenty), set some expectations for projects that other services do not. For example, SourceForge provides Web hosting, mailing lists, bug trackers, and most of the tools that projects need to grow and succeed. In short, not just the development tools, but also the community tools needed to discuss and promote the projects. For many projects, that set an expectation of using those tools.
Lately, I've noticed a marked upswing in projects that are hosted on bare-bones services like GitHub and Gitorious. Those sites provide excellent developer tools for projects that want to use Git-based hosting, but they don't set any expectations beyond just updating code. No mailing lists, no bug trackers, just bare-bones infrastructure. That's good for development, but I'm not sure it's good for growing communities and it's certainly not good for connecting with users. It's insanely easy to just start a project on GitHub, but actually getting the infrastructure beyond code hosting is left as an exercise for the developer. Few developers seem to take the time to send out release announcements or promote their work beyond commits to the Git repo. Many projects have no Web site or any information at all beyond the code.
The lack of centralization also makes it harder to find new projects or see what's being worked on. There are too many big sites to track: SourceForge, Google Code, GitHub, Gitorious, Codeplex, Launchpad, Fedora Hosted, Savannah, and Berlios are just the most popular. It's great that there's so much activity to support all the different services, but I wonder if we're not losing something because there's so little external visibility to what's going on across all the sites. Certainly we're looking at a lot of lost opportunities for code reuse and collaboration.
What's the answer? I'm not sure, entirely. The fragmentation and abundance of services have shown up to solve the problem that SourceForge didn't scale well enough or offer enough options to make everybody happy. The question now is whether the community sees the fragmentation as a problem as well.
Image courtesy of zigazou76 on Flickr under the Creative Commons 2.0 Attribution Generic license.