"Software & The Game of Go" by David Nolen (Strange Loop 2023)

Explore the complexities of Go, a strategy game reminiscent of chess, and discover how its intricacies apply to the world of software development.

Key takeaways
  • Software & The Game of Go’s Complexity: The complexity of Go is often overlooked, but it has many nuances like chess. It’s not just a game, it’s a way of thinking.
  • Coordination is Key: Coordination is essential in Go, and it’s what leads to beautiful games. It’s about understanding the game state and making the right moves.
  • The Game’s History: Go has a 2,500-year-old history, with many countries having their own styles. The Japanese eliminated the opening stone, leading to the modern game.
  • The Goldens Rules of Go: There are 10 golden rules of Go that can help you improve your game. These rules include understanding the board, knowing how to play with an opening stone, and balancing territory.
  • Playing Go Online: Playing Go online can be challenging, but resources like Pandanet and KGS make it more accessible.
  • Software Development: The process of software development is similar to playing Go. You always have to make decisions and weigh the pros and cons.
  • Life and Death in Go: In Go, “life and death” refers to whether a group of stones can be captured or not. It’s a fundamental aspect of the game.
  • Capturing Stones: Capturing stones is a key part of the game, but it’s not always about capturing as many stones as possible. It’s about controlling the board.
  • Go As a Culture: Go is not just a game, it’s a part of Japanese culture and is often played in tea houses.
  • Go’s Complexity is Beautiful: Go’s complexity is its beauty, and it’s what makes it appealing to so many people.
  • The Stone Buddha: Lee Chang-ho, a Go master, was known as the Stone Buddha for his calm and focused playing style.
  • The Meijin: The Meijin is a book about Go that’s seen by many as the ultimate guide to the game.
  • Sacrificing Stones: Sacrificing stones is an important part of Go, as it allows you to gain more territory and create new opportunities.
  • Go As a War Game: Go can be seen as a war game, where you’re fighting to control the board and capture more territory.
  • Learning Go: The best way to learn Go is to play, and there are many resources available online to help you improve.