Google: The Expressiveness of GO
I had a chance to sit down with Rob Pike from Google last week at OSCON 2011. Rob Pike is a Distinguished Engineer at Google, Inc. He works on distributed systems, data mining, programming languages, and software development tools. Before Google, Rob was a member of the Computing Sciences Research Center at Bell Labs, the lab that developed Unix. While there, he worked on computer graphics, user interfaces, languages, concurrent programming, and distributed systems. He was an architect of the Plan 9 and Inferno operating systems and is the co-author with Brian Kernighan of The Unix Programming Environment and The Practice of Programming. More recently he was a co-designer of the Go programming language. Other details of his life appear on line but vary in veracity.
Tell us more about you, your role at Google and your team?
I was at Bell Labs for over 20 years, most of which were wonderful, but the last years at Bell Labs weren’t as much fun. In 2002, I moved to Google, where I work on infrastructure- the technology behind the scenes. Lately I’ve been working on the Go team. At Google, I’m having fun. There’s strong interest from the engineers to learn more about Go, and we have users from from neophytes to experienced gophers. About 3 years ago, a few of us decided to address the problem that the programming languages we were using at Google for building system software were old and not well suited to the problems and the machinery we were working with. Right now, there are about 10 strong engineers on my team. We work on helping Google use this new language, but do all our language and library development as open source. As it says in my talk abstract, Go is not a small language but it is a simple one. By “simple” I mean that it is built upon a small number of ideas that combine orthogonally to generate power. Go may have fewer features than most mainstream languages but in expressiveness I argue it is ahead. Orthogonality lets elements be combined without unpleasant surprises. Simplicity makes Go easy to understand, fast to use and fast to compile. Go launched in november 2009. We are all over the world. we have team across the world from US to sydney as well.
What does the future look like for Go in the next 2 years?
It’s a maturation process. We want to grow a much larger community of users, which means we need a lot more exposure. Our focus now is to have it adapted by many users while we to continue to develop the language, libraries, and tools. We are giving talks and doing lots of advocacy. From the technical side, we are working on better libraries and making it even faster. It’s already very competitive; we just need to get the word out there: fun and fast.
What would be a single take away for the attendees that you want them to gain from your session?
You can have a nice language that is fun to use, safe *and* efficient
Whats next for GOOGLE?
Couldn’t speak to much besides my project, Go. But, this success of our social networking experiment, Google+, has been awesome!
You are one of the most accomplished individuals and a successful engineer, What can we learn from you?
it is important to do what you believe in. Some IT jobs can be very unrewarding and you can get trapped doing something that you dislike. So, if you find yourself in that position then you must switch to something you’re passionate about. What is your goal and your interests? What excites you the most? You should find them and make them what you do!
Which session(s) are you most excited about?
Sad to say I haven’t been focusing on others, except things related my project, and our sessions. I’ve just been swamped, but I know that I’ll be catching up by video afterwards. (I wish my talk had been videoed, hint hint.)
Is this your first time being part of Oscon? If not, then how’s it different from previous years?
This is my second year here. Last year, Go did not have a big presence – I was just a newcomer myself, although Google has been a major sponsor for years. This year, our team is more visible, with multiple talks and giveaways. Have you seen our Gophers? My wife, Renee French is an artist and she designed the gopher. There’s a plush incarnation, made by Squishable, and every attendee got the vinyl version, made by KidRobot. Renee’s name and a link to the Go are on the bottom of the vinyl gopher.
What’s a current device that you couldn’t live without?
Either my 11 inch mac air or my little digital camera. If there is no wifi, then it’ll be my digital camera for sure.
Read, download and check out the presentation by Rob on “Go” here. Good Luck Rob!
Follow me @MsSonicFlare










































