Millions of years ago, Zach Holman gave a great talk about How GitHub uses GitHub to build GitHub. The talk focused a lot on GitHub’s approach to coordinating work on github.com, the software.

But, the way GitHub uses GitHub goes beyond code. It uses GitHub to not only build github.com, but GitHub company. For example, the employee handbook is in a GitHub repository. This makes it easy to suggest corrections and changes and see a history of its changes. Note that pull requests to suggest an unlimited ice cream benefit will be rejected, ask me how I know.

During my nearly seven year stint at GitHub, I immersed myself in this way of working. It is a powerful way to coordinate the activities of distributed teams. Having worked this way for so long, I started to assume lots of distributed teams work this way. This is the blindness of being in an echo chamber.

But I’ve learned that even teams that make heavy use of GitHub leave a lot on the table. They are unaware of many features that would benefit them. These features would improve how they work and save them time and headache.

And it’s understandable. GitHub has a lot of features! And GitHub ships new features at a steady cadence. It’s difficult to keep on top of them all. Many of them are quite useful. For example, the ability to suggest a change to a pull request via a comment is nice!

If long-time GitHub users are not aware of these features, what about people new to GitHub? Using GitHub as a new developer, or as an experienced developer new to GitHub, is daunting. If you’re in this situation, or know someone who is, I have just the book for you.

GitHub For Dummies

The book is GitHub for Dummies. Sarah Guthals and I wrote the book to help people understand how to make effective use of GitHub. Sarah and I worked together at GitHub. She ran the team that built the GitHub extension for Visual Studio, Atom, Unity, and VS Code. Today she’s making waves over at Microsoft. Between the two of us, we have an immense amount of experience building software using GitHub.

The book covers a lot of interesting topics. Some of my favorites are the chapters that cover both sides of working on an open source repository. It contains great tips on how to be a good contributor (pro tip: put away that sense of entitlement) and how to be a good maintainer (pro tip: be kind and take care of your own health first). The book exposes a lot of less well known features in the context of a typical developer workflow.

The book targets new developers and experienced developers new to GitHub. If you know anyone in that situation, this could be a great gift. It makes for nice summer reading on the beach. After all, what else are you going to read while waiting for The Winds of Winter? It’s a great way to learn how to get the most out of GitHub whether you’re a dummy or not.