Google's Go language turns one, wins a spot at YouTube

The lower-level programming language has matured enough to sport the 1.0 version number. And it's being used for real work at Google.

Stephen Shankland principal writer
Stephen Shankland has been a reporter at CNET since 1998 and writes about processors, digital photography, AI, quantum computing, computer science, materials science, supercomputers, drones, browsers, 3D printing, USB, and new computing technology in general. He has a soft spot in his heart for standards groups and I/O interfaces. His first big scoop was about radioactive cat poop.
Expertise processors, semiconductors, web browsers, quantum computing, supercomputers, AI, 3D printing, drones, computer science, physics, programming, materials science, USB, UWB, Android, digital photography, science Credentials
  • I've been covering the technology industry for 24 years and was a science writer for five years before that. I've got deep expertise in microprocessors, digital photography, computer hardware and software, internet standards, web technology, and other dee
Stephen Shankland
2 min read
Gordon, Google's Go gopher mascot
Gordon, the Google Go gopher mascot Google

Google has released version 1 of its Go programming language, an ambitious attempt to improve upon giants of the lower-level programming world such as C and C++.

Graduation to Go 1, which happened this week, makes the project less academic and more real in several ways. For one thing, Google has declared it mature enough to use. For another, it's available for use on Google App Engine, a foundation for cloud-computing applications.

And last, there's a bit of validation for Go readiness: it's being used today on one of the Internet's highest-profile sites.

Go is used at YouTube "and other places within Google," said Russ Cox, one of the engineers behind Go, in a Google+ comment yesterday.

A measure of a programming language's fortunes is the success of the software built using it. But Go's backers have long promised more enjoyable programming, not just better output from that process. Go is designed for rapid programming.

The language itself is designed to add modern language features -- better support for programs whose elements run in parallel on multicore processors, for example, and garbage collection to automatically free up memory that can be used again.

Google first introduced Go in November 2009. It's got an impressively pedigreed set of developers involved, including Unix co-developer Ken Thompson, who write the B programming language that laid the groundwork for C.

It's hard to introduce new languages, though, even when they offer benefits. It takes time for individual programmers and teams to learn the language, for programming tools to support the languages, and for libraries of supporting software to be built. But Google has an edge over many would-be language developers: it's big enough and patient enough that it can find room to build and refine its own languages. And even a tiny bit of new software efficiency can pay off when multiplied by Google's tremendous scale.

Google also is trying to win allies for Dart, a language some at Google hope will improve upon JavaScript, which is used to run programs in Web browsers.

Go is an open-source project, and others beyond Google's walls helped build the language. "We have over 200 external contributors, some of them quite prolific, and Go is better for it," Cox said. "The front page of golang.org has never mentioned Google and carries none of the Google logo or branding, and that is not accidental."