I talk to myself on GitHub a lot. If I could share our internal issues at Khan Academy you'd see a similar story there as well. I do this to serve a few ends:

  1. I want to share my progress on a task.
  2. I want people to give me input on the decisions I'm making.
  3. I want to easily pause a task and come back to it later.
  4. I want all the rubber ducks.
A picture of a very large rubber duck in a river.

I initially started doing this solely for the third benefit of being able to easily pause and resume tasks. I basically wanted a coding journal [1], and it was only a matter of convenience that I used GitHub issues over some random file on my computer.

Eventually, after several ever-so-slightly-awkward conversations where someone thanked me for talking to myself, I realized I'd stumbled on a pretty sweet communication tool. Since communication is generally hard, I was pumped to grow my tool-belt.

I've kept up the monologues ever since I started, and now at Khan Academy it nearly always comes up in my project retrospectives as being super useful [2]. It's definitely a vital part of my workflow now.

I'm suspicious that my comments are slowly getting spammier (a recent one: "Hmm, I think I'll go get a sandwich and then try this again"), but so far nobody has minded :).

An XKCD comic on communication. It's original title text: Anyone who says that they're great at communicating but 'people are bad at listening' is confused about how communication works.
[1]A blog post written awhile ago talks about how useful coding journals generally are.
[2]At Khan Academy, after every project (which are always 2-4 weeks), everyone involved meets to give feedback to each other and discuss how things went.
[3]Duck image is from wikimedia. See there for licensing and author information.


« more posts | follow me via twitter, or RSS