Recently I’ve been writing a fair bit of code in Go for a project I am working on. There is a lot to like about the language. But the thought occurred to me that maybe I like Go because it fits my (unjustifiably) beleaguered sense of self. If I used to like Ruby because it was fun, then maybe I like Go now for these reasons:

  • Go is a minimalist language. I would prefer that we just get down to work without any fuss.
  • Go is a high performance language for concurrency. There is too much to do and it all has to be done at once, so I guess we better do it quickly.
  • Go is strongly typed. Please tell me what you expect up front, then stick to it.
  • Go makes you check for errors explicitly (if err != nil). Bad things will inevitably happen, so I guess we better plan for them up front and do our best to deal with them.