Understanding GitHub’s Awesomeness

Until a couple of weeks ago, I didn’t understand what it was that makes GitHub so awesome. It isn’t the pretty interface to the Git version control system or the fact that people can post code and other things for the world to see and use. GitHub is awesome because it makes it absolutely trivial to collaborate and help out other programmers.

It all started with a tweet:

I thought it was pretty cool that Erik was sharing this with the world so I took a look at the plugin. I opened the plugin file that had just been committed and started perusing the code. I immediately saw this line:

wp_register_style( 'wap8-flickr-me', plugins_url( 'flickr-me/css/flickr-me.css' ), '', WAP8_FLICKR_ME_VERSION, 'screen' );

I noticed that plugins_url was missing the second parameter needed for it to function correctly. I wanted to help Erik out by providing a fix, but I didn’t have a bunch of time that morning. In the past, providing help would have meant checking out the code, making my change, generating a patch, and sending that to Erik in some way. Alternatively, I could have provided instructions for a fix like I did for the WP SMTP config plugin.

Because the code was hosted on GitHub, I didn’t have to do either of those things. The interface allowed me to create a fork, edit the file, and send a pull request – all through the web interface. In case I’m not illustrating how easy it is to do this, here’s some screenshots of the process:

Click the edit button to start the process

Click the edit button to start the process

A fork is created for you - make whatever changes you need to

A fork is created for you – make whatever changes you need to

Enter a summary of your changes and then click the "Propose File Changes" button

Enter a summary of your changes and then click the “Propose File Changes” button

Enter some more information or details if you want, and then click "Send Pull Request"

Enter some more information or details if you want, and then click “Send Pull Request”

Finally, you get to send a tweet letting the person know that you’ve sent them a pull request:

And that’s why GitHub is awesome. Not just because you can find solutions for problems you’re having, but because it makes it as easy as possible to collaborate and help others.

2 thoughts on “Understanding GitHub’s Awesomeness

  1. Erik Ford

    I just recently started using GitHub as a place to park code that I am working on and am still learning the ins and outs of Git (I am a SVN guy). But, as you mentioned in your post, I, too, love the fact that other developers can easily collaborate with anything I make public. This not only helps me improve as a developer, but also helps strengthen the community.

    Reply
    1. Nick Ohrn Post author

      I’m in the same boat. I previously thought it was really just a place for dedicated open source projects and people trying to show off. I hadn’t realized the other part existed / was useful.

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *