How Learning Go Made Me A Better Programmer

Johan Euphrosine (Google)
Location: Portland 255 Level: Intermediate
Average rating: **...
(2.85, 26 ratings)
Slides:   external link

“Go is not meant to innovate programming theory. It’s meant to innovate programming practice.” — Samuel Tesla

The Go website describes it as, “an open source programming environment that makes it easy to build simple, reliable, and efficient software.” Created at Google by Rob Pike and Ken Thompson of Unix fame, the language was born out of the frustration of using the currently popular programming languages for large scale programming. Go was created with the goal of addressing modern programming concerns, using many of the lessons we have learned after decades of working with C and C++.

For programmers looking to learn a new programming language, Go is probably one of the best, if not the best choice. One area in which Go has been wildly successful is the ease at which someone can learn the language. In hindsight, Rob Pike muses that it should have been obvious why Go, though initially meant as a replacement for C++, has seen a huge amount of interest from Python and Ruby programmers. Go enforces certain conventions by keeping the language small and being very opinionated. This session will cover many of the ideas of Go and how they can be exported back to other programming languages to make you a better programmer overall, and the importance of the “just because you can, doesn’t mean you should” principle of programming. This talk will describe some abstract programming concepts, how they are manifested in Go, and give a few concrete examples of how these principles translate into languages such as Python, Ruby or Java.

Photo of Johan Euphrosine

Johan Euphrosine


Johan joined Google in 2011 as a Developer Programs Engineer. He is currently focusing on App Engine in Google San Francisco. Before Google, Johan was providing development services as a Freelancer around Free and Open Source Software.


Sponsorship Opportunities

For information on exhibition and sponsorship opportunities at the conference, contact Sharon Cordesse at (707) 827-7065 or

Contact Us

View a complete list of OSCON contacts