Skip to content
HomeVideos
AllLongsCategoriesPlaylists
BooksBlogsPodcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K

    The Go Programming Language

    Google TechTalks

    1 HN recommender · recommended in 12 months, 2009–2026

    YouTube

    59:26 · 406K views · Nov 10, 2009

    Rob Pike's October 2009 Google Tech Talk introducing Go, a new experimental systems language designed for fast builds, concurrency and garbage collection. It covers the goals, syntax and type system.

    Used as the primary source for what Go's creators originally promised, such as fast compiles, systems-language framing, safety and generics.

    Software Engineering & LanguagesC, C++, Rust, Go & systems languagesProgramming language design
    1. 1:00:29
      Google I/O 2012 - Meet the Go TeamGoogle for Developers108K views • 14 years ago
    2. 0:27
      Rob Pike about the target group of the Go programming language (golang)f8C4G86p KbqEFe477K views • 6 years ago
    3. 56:36
      GopherCon 2014 Opening Keynote by Rob PikeConfreaks38K views • 12 years ago
    4. 23:57
      GopherCon 2016: The Design of the Go Assembler - Rob PikeGopher Academy116K views • 10 years ago
    5. 1:07:00
      Sydney Golang Meetup - Rob Pike - Go 2 Draft SpecificationsMacquarie Group57K views • 7 years ago
    6. 23:12
      dotGo 2015 - Rob Pike - Simplicity is Complicateddotconferences172K views • 10 years ago
    7. 12:31
      OSCON 2010: Rob Pike, "Public Static Void"O'Reilly119K views • 16 years ago
    8. 1:05:56
      Lang NEXT 2014 Panel Systems Programming in 2014 and Beyond25msr2.8K views • 8 years ago
    9. 51:27
      Google I/O 2012 - Go Concurrency PatternsGoogle for Developers894K views • 14 years ago
    10. 51:18
      Lexical Scanning in Go - Rob PikeGoogleFOSSSydney162K views • 15 years ago
    11. 48:19
      GopherCon 2014 Inside the Gophers Studio with Blake MizeranyConfreaks8.1K views • 12 years ago
    12. 38:19
      Origins of Go Concurrency style by Rob Pikejasonofthel33t28K views • 14 years ago
    13. 1:02:49
      Hacking with Andrew and Brad: tip.golang.orgThe Go Programming Language99K views • 11 years ago
    14. 51:12
      Google I/O 2011: Writing Web Apps in GoGoogle for Developers135K views • 15 years ago
    15. 1:55:24
      Ideas about a new programming language for games.Jonathan Blow530K views • 12 years ago
    16. 22:29
      Gopherfest 2015 | Go Proverbs with Rob PikeThe Go Programming Language317K views • 10 years ago
    17. 48:46
      Rust's Journey to Async/AwaitInfoQ90K views • 6 years ago
    18. 1:00:40
      Dmitry Vyukov — Go scheduler: Implementing language with lightweight concurrencyHydra47K views • 7 years ago
    19. 1:03:31
      Brian Goetz - Stewardship: the Sobering PartsClojureTV39K views • 11 years ago
    20. 1:29:49
      Going Native 2012 Keynote Stroustrupsavage30933K views • 14 years ago

    17 comments from Hacker News

    1. @ypavanNov 2009· in “Google Go: A New Programming Language That’s Python Meets C++”

      From the Tech Talk PDF, it is mentioned that Robert Griesemer, Ken Thompson, and Rob Pike started the project in late 2007. Ian Lance Taylor and Russ Cox joined in 2008. And the goal, as they mention, seems to have the efficiency of a statically-typed compiled language with the ease of programming of a dynamic language but with - Safety: type-safe and memory-safe. Good support for concurrency and communication. Efficient, latency-free garbage collection. High-speed compilation. They are aiming at a lightweight type system with no implicit conversions and no more 0x80ULL. A good starting point is their FAQ page and also the tech talk at youtube: this video

      RecommendsView on HN
    2. @mseepgoodSep 2012· in “Will Go be the new go-to programming language?”

      The "Talks and Videos" page ( [LINK] ) is outdated as well. Here's my personal list: Why Learn Go? [LINK] Short interview with Rob Pike, OSCON 2012 Get Started with Go [LINK] Andrew Gerrand A Tour of Go [LINK] Russ Cox Go Concurrency Patterns [LINK] Rob Pike, Google I/O 2012 Goroutines, Channels Meet the Go Team [LINK] Panel (Pike, Thompson, Griesemer, Gerrand, Fitzpatrick, Simons), Google I/O 2012 Computing Map Tiles with Go on App Engine [LINK] Chris Broadfoot, Andrew Gerrand, Google I/O 2012 Go in Production [LINK] Gustavo Niemeyer, Google I/O 2012 Go: Code that grows with grace [LINK] (Contains some audio glitches) Andrew Gerrand Interview with Rob Pike [LINK] Rob Pike, GOTO Conference Lexical Scanning in Go [LINK] Rob Pike Cuddle, A Go AppEngine Demo [LINK] Andrew Gerrand Building Integrated Apps on Google's Cloud Platform [LINK] Andrew Gerrand, Google Developer Day Japan 2011 Real World Go [LINK] Andrew Gerrand, I/O BootCamp 2011 Go: it's that simple?! [LINK] Andrew Gerrand, OSDC 2011 Practical Go Programming [LINK] Andrew Gerrand, FOSDEM 2011 Writing Web Apps in Go [LINK] Andrew Gerrand, Rob Pike, Google I/O 2011 Go Programming [LINK] Rob Pike, Google I/O 2010 Another Go at Language Design [LINK] Rob Pike, Stanford University Public Static Void [LINK] Rob Pike, OSCON 2010 The Go Programming Language this video Rob Pike, Google Tech Talk

      CitesView on HN
    3. @9rxApr 2025· in “Problems with Go channels (2016)”

      > The only things I can think of which Go did that seemed blatantly wrong in that era would be the lack of generics and proper enums. Typescript added "improper" enums several years later. Which is especially interesting as it is the one feature in Typescript that doesn't map directly to Javascript. I'm not sure even that one was the settled science back then. Generics were well established at that time, but that one didn't escape the Go authors. From day one it was explicitly called out as a feature Go should have, but that they hadn't figured out how to integrate it. this video Despite Taylor's admirably insistent efforts to find a solution (with 8+ proposals to his name, dating back to before Go was released to the public!), it ultimately required convincing an outside expert to lend a hand. > I know others find the type system lacking It may be lacking by today's standards where types are all the rage, but at the time we should also remember that it was the case that types simply weren't cool. People had grown tired of "doing XML sit-ups" and had fully embraced dynamic languages in reaction to that. Go was built in that time, for that time, explicitly intending to be a language that felt like a dynamic language but with the performance advantages of a static language. this video

      CitesView on HN
    4. @JeanPierreJun 2013· in “Replacing Clever Code with Unremarkable Code in Go”

      I would like to add on to this: Generics may not be the correct solution, but I would really like a way to make collections which are general enough to be used by any datatype. As of now, I cannot do that without doing the typical `interface{}` approach. The built-in data structures + channels are able to handle this, but if I just want a set of elements, what do I do? Make a `map[foo] bool`? If I see such a piece of code in an unfamiliar code base, I have no idea whether to test for key existence or whether I have to test whether the bool is true. A generic set would leave me puzzled and type unsafe[1]: What types could possibly exist in this set? A set of foos is not that hard to comprehend, and is in fact very much more straightforward to understand than a generic set, which in unfamiliar code may contain anything, or a mapping from foos to bools. [1]: Rob Pike mentions in this video that type safety is of high importance for Golang, but how does one achieve that if all the different datatypes I implement/need use `interface {}` where I have to cast all values afterwards? That seems very type unsafe, from where I stand.

      CriticalView on HN
    5. @win311fwgAug 2026· in “Go 1.27 Interactive Tour”

      > Am I the only one who’s absolutely shocked that Go finally is embracing generics? Yes. Everyone else knows that they were always expected to be included at some point, as told when Go was first announced to the world: this video > So what changed? Philip Wadler, of Haskell fame, decided to help? This was well publicized on HN at the time. > I’m not buying the “it took us 20 years to understand how to do it correctly” argument If I recall correctly, Pike suggested that they never did come to that understanding without the outside help. I can understand why you are surprised that it took 20 years for someone with the right expertise to show up. You can get the sense in the above announcement that even the Go team thought that open sourcing the project would attract the right talent far, far earlier. But, now that we have hindsight, we can see that all the experts on HN who could have been the missing positive contributor were too busy complaining that Go didn't have generics. There wasn't enough time left for them to lend a hand. There are only so many hours in the day.

      CitesView on HN