Main Profile

At A Glance

Let's Go Further: Build Concurrent Software using the Go Programming Language

Google Tech TalkApril 25, 2012Presented by Sameer AjmaniABSTRACTGo is an open source programming environment that makes it easy to build simple, reliable, and efficient software. One of Go's key design goals is code adaptability; that it should be easy to take a simple design and build upon it in a clean and natural way. Go Version 1 (or Go 1 for short), which defines a language and a set of core libraries to provide a stable foundation for creating reliable products, projects, and publications, was recently released and available for use.Go was born out of frustration with existing languages and environments for systems programming. Programming had become too difficult and the choice of languages was partly to blame. One had to choose either efficient compilation, efficient execution, or ease of programming; all three were not available in the same mainstream language. Programmers who could were choosing ease over safety and efficiency by moving to dynamically typed languages such as Python and JavaScript rather than C++ or, to a lesser extent, Java.Go is an attempt to combine the ease of programming of an interpreted, dynamically typed language with the efficiency and safety of a statically typed, compiled language. It also aims to be modern, with support for networked and multicore computing. Finally, it is intended to be fast: it should take at most a few seconds to build a large executable on a single computer. To meet these goals required addressing a number of linguistic issues: an expressive but lightweight type system; concurrency and garbage collection; rigid dependency specification; and so on. These cannot be addressed well by libraries or tools; a new language was called for.Sameer Ajmani, a Software Engineer at Google and member of the Go programming language engineering team, will give a introduction to Go from a programmer's perspective. Sameer joined Google engineering after receiving his PhD from MIT and has worked on several core infrastructure projects at Google.
Length: 01:09:03


Questions about Let's Go Further: Build Concurrent Software using the Go Programming Language

Want more info about Let's Go Further: Build Concurrent Software using the Go Programming Language? Get free advice from education experts and Noodle community members.

  • Answer