Thoughts on web programming and the world of technology

March 05, 2011, reading time: 2 minutes

7 ways Github has changed the open source world

As the guys at the changelog say, the world of open source is changing fast and you have to keep up. I believe that Github has been very influential when it comes to making open source more accessible. How has Github changed the world of open source?

Force projects to include a good README

Apart from the directory structure and files, the most prominent element on the page is your README file. If you don’t have one, the page looks kind of weird. As an administrator, if you don’t add a README file, Github will start yelling at you.

Unified place for all your projects

When I come across a cool project, I like to see what other stuff the author has been hacking on. The best example I think is tpope who is a famous vim plugin creator. When you go to his profile page on Github, you can see all of the plugins he has ever written and published.

Code discussions

Yes, you can discuss the project on IRC or on mailing lists. Those aren’t exactly user friendly, and it’s hard to discuss code that way. Github makes it easy for you to submit a pull request and have others comment on your code.

Publish your hacks with ease

Did you just write a patch that greatly improves an existing project? Fork it and publish it in minutes. If you notify the original project, you can get helpful feedback on your hacks. This encourages people to publish their code even if it’s never merged into the original project.

Judge how active a project is

Github makes it easy to quickly look through a project’s history to see how active it is. In no time, you can tell how many people commit to it and how often. Also, the number of watchers/forks in the corner gives you a pretty good idea of how many people are actually using the project. This is possibly my favorite feature. Open source developers don’t need to waste their time exploring libraries that aren’t maintained.

Discover new projects

Smart people come up with clever things all the time. If they share their code on Github, you can find it in the Explore Github section. I can’t remember how many times I’ve discovered a cool project this way. My favorite example is CoffeeScript.

Follow the development of your favorite projects

When you first log in, you are presented with a list of changes that were made to the projects you follow. This projects has a new release, this bug was fixed. etc. Invaluable.

What are your thoughts? Any favorite features of Github?