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

Subscribers:
348,000
Published on ● Video Link: https://www.youtube.com/watch?v=4iAiS-qv26Q



Duration: 1:09:03
55,019 views
356


Google Tech Talk
April 25, 2012

Presented by Sameer Ajmani

ABSTRACT

Go 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.




Other Videos By Google TechTalks


2012-06-19Life of a C++ Standard
2012-06-18Did Tweeting Save Bletchley Park?
2012-06-18Who's Bigger? A Quantitative Analysis of Historical Fame
2012-06-18i3 - An Improved Tiling Window Manager
2012-06-13Modeling Noisy Data : Towards a Generic Framework Coupling Morse Theory and Persistence Theory
2012-06-04Multipath TCP
2012-06-04Care at Home: Using Telemedicine to Provide Specialty Care to Patients with Parkinson Disease
2012-05-21Research at Google at WWW 2012
2012-05-16Social Entrepreneurship: Where Theory Meets Practice
2012-05-10Is the Higgs Boson there? Why do we care?
2012-05-03Let's Go Further: Build Concurrent Software using the Go Programming Language
2012-04-27The Patent Pollution Problem: Its Causes, Effects and Solutions
2012-04-26The Second Copernican Revolution: Our Changing View of Our Place in the Universe
2012-04-25Alan M. Turing Centennial Conference: Geometry in Motion: From Turing Machines to Crawling Ants
2012-04-25Alan M. Turing Centennial Conference: Standing on the Shoulders of a Giant
2012-04-25Alan M. Turing Centennial Conference: Turing's Estimation Technique and Large-scale Machine Learning
2012-04-25Alan M. Turing Centennial Conference - Israel
2012-04-25Turing Centennial Conference: Turing Test and Thinking Machines
2012-04-25Turing Centennial Conference: A Non-probabilistic Approach to Classification of Individual Sequences
2012-04-25Turing Centennial Conference: Turing, Church, Gรถdel, Computability, Complexity and Randomization
2012-04-25Turing Centennial Conference: From Programs to Systems: Building a Smarter World



Tags:
google tech talk
programming language