Intersting talk. Here are some other talks about the history and origins of Go:
Evolution of Go (Griesemer, GopherCon 2015)
Video: https://www.youtube.com/watch?v=0ReKdcpNyQg
Slides: https://talks.golang.org/2015/gophercon-goevolution.slide
Origins of Go Concurrency (Rob Pike, OSCON 2010)
Video: https://www.youtube.com/watch?v=3DtUzH3zoFo
Slides: http://go-lang.cat-v.org/talks/slides/emerging-languages-cam...
Presenter has a great sense of humor. For someone who hadn't known much about GO, this was a great overview. Thanks
Obligatory, the take on generics: https://www.youtube.com/watch?v=sX8r6zATHGU&t=50m29s
It is interesting that neither the talk nor the questions from the audience rise the question of the error handling.
In Go returning an error implies that the caller will need to add 3 lines of the source for each call to propagate the error. This is really ugly. Rust managed to reduce that source overhead down to the single extra ? character while keeping all the benefits of explicit error handling. I wish Go gets something similar.