Began Designing Go Language at Google
Context: After joining Google, Thompson started discussing designing a new language with Rob Pike and Robert Griesemer while waiting for a long build process. The formal design of Go started in September 2007.
Decision: Designed a systems programming language optimized for modern multi-core processors and networked services, while emphasizing development efficiency and compilation speed.
Reasoning: C++'s complexity made large-scale systems development inefficient, and Python's performance was insufficient; a simple but efficient modern systems programming language was needed.
Outcome: Go was open-sourced in 2009 and rapidly became the mainstream language for cloud-native infrastructure; Docker, Kubernetes, Terraform, and other key tools are all written in Go.
Lesson: Generational shifts in computing environments (from standalone to cloud/multi-core) are the best time to redesign systems programming languages; seizing this opportunity requires decades-accumulated systems design insight.
thompson-model-language-min