Explain GitHub Like I'm Five

Since GitHub is likely to be in the mainstream tech news a bit more in the next few days, I figured it might be good to gather some simple explanations of what the service is in case your friends or family ask you about this.

Did you find this post useful? Show some love!

I just realized there's already a post like this

Say you are writing a short story and you want to do a really good job. You might write the story on one sheet of paper, and then get another sheet of paper and write another version, and then keep writing more versions on more sheets of paper. After a while, you'd end up with lots of sheets of paper that weren't the version you were currently writing. You might put those sheets in a folder so that you can go back and see old drafts of your story.

You give that folder to your mom to keep track of, because you know that you can always ask mom for one of the versions of your story if you need it. Plus, mom keeps photocopies so she can give versions of your story to your siblings. Mom also keeps similar folders for the stories that your siblings write.

Git is the folder, and your pieces of paper are code. Your mom is GitHub.

But I think it's still useful to have another discussion, possibly more geared towards complete out-of-the-loopers.


The last phrase "Your mom is GitHub" could make a good "your momma" joke though 😁

Ooooh when I first was learning about github/git an awesome analogy was taught to me - so I can't take credit for it (unfortunately)!

Git is like saving multiple drafts of written papers.

Github is a social media hub for those multiple drafts of papers that other people can view, work on, and collaborate on!

You're playing a story-based video game.

Every time you find a save point,you save your game so you can go back to it later if you missed something on the level or if your character goes bye-bye.

If you do it right, you'll have save files for every important scene right before you fight the big bad guy or at the beginning or middle of the level, so if they beat you up or if you missed something, you can go back and try again.


  • Save point menu of a specific game = GitHub
  • Your game progress = your code
  • Big bad boss beating you or you missed an important item = you messed up your code.
  • Reload game post-beatdown = reload code before you messed up.

Also there's a multiplayer option that allows your friends to play the same game, and save their progress to your game if they made good progress.

I think PS4 games have this option! ...at least Persona 5 does. You can save a game on ~The Cloud~ and load it from a friend's PS4-- if you trust them enough with your account password lol.


Hey there, we see you aren't signed in. (Yes you, the reader. This is a fake comment.)

Please consider creating an account on dev.to. It literally takes a few seconds and we'd appreciate the support so much. ❤️

Plus, no fake comments when you're signed in. 🙃

GitHub is like Instagram but for code, if Instagram let other people copy your pictures and apply their own filters which you could then apply back to your original version of the picture.

"Github is going to be the Facebook for code"

You have some magical unicorns in your computer that are actually called "code". But perhaps you want every one to see it and have some fun (and work) with the unicorns, so you put them up on GitHub for everyone to see. Or you don't want to lose your unicorns and keep them a secret, so you put them on GitHub but only those that you grant access to can see the unicorns.

GitHub is like a cupboard that stores “Lego” pieces where this “Lego” is used to make things like computer games.

Go find out what git is. Found it out? GitHub is just an instance of git that you can push and pull from.

This really isn't helpful at all is it?

Classic DEV Post from Mar 5

What's your dream job?


Follow @jess to see more of their posts in your feed.
dev.to is now open source!
View Announcement Post View GitHub Repo
Ben Halpern
A Canadian living in New York, having a lot of fun cultivating this community! Creator and webmaster of dev.to.
More from @ben
Explain iOS development like I'm five
#explainlikeimfive #swift #objectivec #ios
What are the various labels your team or project uses in GitHub or otherwise?
#discuss #pm #github
Trending on dev.to
Explain Grunt Task Runner Like I'm Five
#explainlikeimfive #javascript #discuss
What is YOUR ultimate goal that you want to achieve as a developer?
#discuss #goals #life
What are your favorite terminal apps or scripts, to use for productivity?
#discuss #python #bash #productivity
How does the web look if everyone owned their own data?
Tell me a good IT joke
#discuss #jokes #fun
My first PR merged!
#github #opensource #contribution
What are your thoughts on multiples package managers?
Style your Terminal better by mastering these settings 🤩
#terminal #productivity #tools #webdev