GoTalks
Pages 133
- Home
- Articles
- Benchmarks
- Blogs
- Books
- BoundingResourceUse
- cgo
- ChromeOS
- CodeReview
- CodeReviewComments
- CodeTools
- Comments
- CommitMessage
- CommonMistakes
- CompilerOptimizations
- Conferences
- CoreDumpDebugging
- Courses
- CustomPprofProfiles
- Darwin
- DashboardBuilders
- DesignDocuments
- DevExp
- Diagnostics
- DragonFly BSD
- Errors
- ExperienceReports
- FileTreeDocumentation
- FreeBSD
- FromXToGo
- Gardening
- GccgoCrossCompilation
- GcToolchainTricks
- GerritAccess
- GerritBot
- GithubAccess
- GitHubCodeLayout
- Go 1.10 Release Party
- Go 1.6 release party
- Go 1.8 Release Party
- Go Release Cycle
- Go1point1Gotchas
- GoArm
- GoForCPPProgrammers
- GoGenerateTools
- GoGetProxyConfig
- GoGetTools
- Gomote
- GOPATH
- Gopher
- GoStrings
- GoTalks
- GoUserGroups
- GoUsers
- GoVsGenerics
- HandlingIssues
- Hashing
- heapdump13
- heapdump14
- heapdump15
- HostedContinuousIntegration
- How to ask for help
- HowToAsk
- HttpFetch
- HttpStaticFiles
- IDEsAndTextEditorPlugins
- InstallFromSource
- InstallTroubleshooting
- InterfaceSlice
- InvalidFlag
- Iota
- IssueLabels
- Learn
- LearnConcurrency
- LearnErrorHandling
- LearnServerProgramming
- LearnTesting
- Linux
- LockOSThread
- MethodSets
- MinimumRequirements
- Mobile
- MultipleGoRoots
- MutexOrChannel
- NativeClient
- NetBSD
- NewSpeakers
- NoMeToo
- NonEnglish
- OlderVersions
- OpenBSD
- PackageManagementTools
- PackagePublishing
- PanicAndRecover
- PerfDashboard
- Performance
- Plan9
- Podcasts
- PortingPolicy
- PriorDiscussion
- Projects
- ProviderIntegration
- Questions
- RaceDetector
- Range
- RateLimiting
- Rationales
- ResearchPapers
- Screencasts
- SendingMail
- SettingGOPATH
- SignalHandling
- SimultaneousAssignment
- SliceTricks
- Solaris
- SQLDrivers
- SQLInterface
- Style
- SubRepositories
- SuccessStories
- Switch
- TableDrivenTests
- Timeouts
- Training
- Ubuntu
- vgo
- WebAccessibilityResourcesAndTips
- Well known struct tags
- WhyGo
- Windows
- WindowsBuild
- WindowsCrossCompiling
- WindowsDLLs
- Show 118 more pages…
Clone this wiki locally
Go talks
Check out http://talks.golang.org for presentations for some of the talks. For a comprehensive, curated and searchable index, try GopherVids from Damian Gryski.
Official
Introductory Talks
An introduction to Go.
Russ Cox's Tour of Go
Three things that make Go fast, fun, and productive:interfaces, reflection, and concurrency. Builds a toy web crawler to demonstrate these.
Go: a simple programming environment
[video] [another video] [slides]
Go is a general-purpose language that bridges the gap between efficient statically typed languages and productive dynamic language. But it’s not just the language that makes Go special – Go has broad and consistent standard libraries and powerful but simple tools.
This talk gives an introduction to Go, followed by a tour of some real programs that demonstrate the power, scope, and simplicity of the Go programming environment.
Get Started with Go
[video]
Get a feel for the language and its standard libraries and tools in this session, where we go through installing Go and writing some simple but useful programs.
Go Programming
A presentation delivered by Rob Pike and Russ Cox at Google I/O 2010. It illustrates how programming in Go differs from other languages through a set of examples demonstrating features particular to Go. These include concurrency, embedded types, methods on any type, and program construction using interfaces.
The Go Tech Talk
An hour-long talk delivered by Rob Pike at Google in October 2009. The language's first public introduction. The language has changed since it was made, but it's still a good introduction.
Development in Go
Writing Web Apps in Go
A talk by Rob Pike and Andrew Gerrand presented at Google I/O 2011. It walks through the construction and deployment of a simple web application and unveils the Go runtime for App Engine.
Real World Go
A talk by Andrew Gerrand presented at Google I/O Bootcamp 2011. It gives a broad overview of Go's type system and concurrency model and provides four examples of Go programs that solve real problems.
Building Integrated Apps on Google's Cloud Platform
[video]
A talk by Andrew Gerrand presented at Google Developer Day Japan 2011. It discusses the development of a web application that runs on Google App Engine and renders raytraced that it stores on Google Cloud Storage.
High Performance Apps with Go on App Engine
Google I/O, May 2013
Practical Go Programming
This talk presents the development of a complete web application in Go. It looks at design, storage, concurrency, and scaling issues in detail, using the simple example of an URL shortening service.
Lexical Scanning in Go
[video]
This GTUG talk by Rob Pike discusses the detailed design of a lexical scanner that uses Go's features in expressive combinations. (The discussion near the end about avoiding goroutines at initialization is obsolete: Go 1 allows goroutines in init functions so the extra complexity is unnecessary.)
Go in Production
Google I/O, June 2012
[video]
Since Go's release in 2009 many companies (besides Google, of course) have used the language to build cool stuff. In this session programmers from several companies will share their first-hand experience using Go in production environments.
Go: code that grows with grace
One of the Go Programming Language’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. In this talk I describe a simple “chat roulette” server that matches pairs of incoming TCP connections, and then use Go’s concurrency mechanisms, interfaces, and standard library to extend it with a web interface and other features. Although the function of the program changes dramatically, the inherent flexibility of Go allows the original design to remain intact as it grows.
Implementing a bignum calculator
Rob Pike describes his interpreter for an APL-like calculator language.
Go in Go
Rob Pike speaks on moving the Go toolchain from C to Go
Concurrency in Go
Go concurrency patterns
Google I/O, June 2012
[video]
Advanced Concurrency Patterns
Google I/0, May 2013
Concurrency is the key to designing high performance network services. This talk expands on last year's popular Go Concurrency Patterns talk to dive deeper into Go's concurrency primitives, and see how tricky concurrency problems can be solved gracefully with simple Go code.
Design of Go
The Expressiveness Of Go
[slides]
A discussion of the qualities that make Go an expressive and comprehensible language. The talk was presented by Rob Pike at JAOO 2010. The recording of the event was lost due to a hardware error.
Another Go at Language Design
[video from Sydney University] [slides]
A tour, with some background, of the major features of Go, intended for an audience new to the language. The talk was presented at OSCON 2010. This talk was also delivered at Sydney University in September 2010.
Go Emerging Languages Conference Talk
Rob Pike's Emerging Languages Conference presentation delivered in July 2010. Talk abstract:
Go’s approach to concurrency differs from that of many languages, even those (such as Erlang) that make concurrency central, yet it has deep roots. The path from Hoare’s 1978 paper to Go provides insight into how and why Go works as it does.
The State of Go
June 2014
February 2015
May 2015
Miscellaneous
The Go frontend for GCC
[paper]
A description of the Go language frontend for gcc. Ian Lance Taylor's paper delivered at the GCC Summit 2010.
The Go Promo Video
[video]
A short promotional video featuring Russ Cox demonstrating Go's fast compiler.
Meet the Go team
Google I/O, June 2012
[video]
A panel discussion with David Symonds, Robert Griesemer, Rob Pike, Ken Thompson, Andrew Gerrand, and Brad Fitzpatrick.
Fireside Chat with Go team
Google I/0, May 2013
[video]
A fireside chat with Andrew Gerrand, Brad Fitzpatrick, David Symonds, Ian Lance Taylor, Nigel Tao, Rob Pike, Robert Griesemer, Sameer Ajmani.
The State of the Gopher
Unofficial
Talks by members of the community.
Let's Go, or introduction to Go
[video (starting at 14:35)] [slides] [source]
This talk gives an introduction to Go in Russian.