I found the Go solution for that issue a bit odd - channels aren't for data processing, they're synchronisation primitives. Using them the way they did in the article ruined the piece for me, since it reads like a rather uninformed decision now.
https://groups.google.com/d/msg/golang-nuts/LM648yrPpck/tv40...