Kristian Glass - Do I Smell Burning?

Sometimes it's the little things

I was reading through the ElasticSearch Guide this morning and found me a typo.

Since their documentation also lives on GitHub, it wasn’t very long before I’d cloned it, fixed it, and sent a pull request.

This is nice. This is so much nicer than the other all-too-common model:

  • Find appropriate contact method, be it a web form or email address somewhere on the site
  • Email them a description of the issue
  • Wait

Sometimes I get a reply. Sometimes I don’t. It’s all too fire-and-forget. What GitHub gives me is visibility and openness. There’s now a public URL for my pull request / issue. The “open requests” count increments. This doesn’t sound like much, but it’s important. Anyone visiting the repository sees the count. Anyone can see the issue.

Why does openness matter?

Tom Preston-Werner, one of the GitHub founders, covers why people should open-source code very nicely in his blog post, “Open Source (Almost) Everything”, with the caveat of:

Don’t open source anything that represents core business value

What I’m saying is that it’s not just code. Open your documentation, and open your processes. I want to know that you’ll respond to fixes and issues and questions. I want to see how you respond, and how you react. I want to see that you care about your users. If you’ve just dumped code onto the internet under the guise of “openness”, and all feedback is routed to /dev/null, I want to see that.

There are lots of things that factor into my decision whether or not to invest in a product or technology. Openness helps.

Even if you’re a primarily closed-source company, what do you have to lose by open-sourcing your (presumably already freely-downloadable) documentation? Maybe you do and no-one interacts with it. Is this a cost? Maybe it’ll encourage it to get a bit more love ;)

With the tools currently available it’s now easier than ever to be more open, and I’m wondering to what extent to start viewing pointless closedness as a weakness.

Addendum - Is this GitHub specific?

Not at all. Replace “GitHub” with BitBucket if you like, or Google Code Project Hosting (though I’d like a nice ‘pull-request’ UI or similar). GitHub just has “the nicest and easiest” (read: “my favourite”) UI for code hosting and basic issue tracking.