What Is GitHub and Why You Need to Join It

GitHub 101 – Module 1/4

When GitHub went down yesterday for a couple of hours the reactions seen across the web were along those lines:

Why such unrest? What does this service provide to make it so relevant? What am I missing? And most importantly, …

What Is It?

To better answer this question, we need a bit of storytelling.

In April 2005, Linus Torvalds – the creator of Linux himself – released a software to manage the open-sourced development of the OS kernel that had 483 collaborators at the time. Simply put, its major features were:

  • Keep track of changes
    The date and time of each change, as well as its author, were recorded
  • Merge changes
    Allowed several individuals to work in the same file, combining all changes made by them into a final version
  • Recall specific versions
    Made it able to retrieve the state of any file to any previous version

Linus called his child Git, a not-very-nice slang. “I’m an egotistical bastard, so I name all my projects after myself. First Linux, now git,” he said self-deprecatingly.

Fast-forward two years. By the accounts of a developer, despite being very powerful, Git “was really complicated to use. People didn’t know if it made sense. The command line interface was really quite complex.… Everything was a pain in the ass. So myself and some of the people I hung out with, got together and said, ‘Let’s just make the simplest thing possible to share Git repositories in a really slick way’.”

Then GitHub was born by the hands of Tom Preston-Werner (the one who is quoted above), Chris Wanstrath, PJ Hyett, and Scott Chacon. At its core, GitHub is a server for storing Git projects, thus having all of Git’s features aforementioned. However, on top of that, it builds and provides much more:

  • Issue tracking
    A ticket system for bugs, to-dos, requests and
  • Wiki
    Yes, you can create your project’s own wiki very easily and host it on GitHub
  • Static website
    Yup, this too
  • Graphs
    Number of changes to the project, when they are more frequent, who does more of them, and more
  • Social network
    You have a profile, which can be followed by other persons (and vice-versa, of course); you can not only see but also participate in other people’s projects; you can even blog!

All of this attracted 12 million people and organizations like Google, Microsoft, Facebook, Twitter, LinkedIn, and Netflix. Why not you?


This is the first of four posts about GitHub for beginners. In the next one we talk about its workflow.