HN Theater @HNTheaterMonth

The best talks and videos of Hacker News.

Hacker News Comments on
Google I/O 2013 - Advanced Go Concurrency Patterns

Google Developers · Youtube · 16 HN points · 3 HN comments
HN Theater has aggregated all Hacker News stories and comments that mention Google Developers's video "Google I/O 2013 - Advanced Go Concurrency Patterns".
Youtube Summary
Sameer Ajmani

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.

For all I/O 2013 sessions, go to https://developers.google.com/live
HN Theater Rankings

Hacker News Stories and Comments

All the comments and stories posted to Hacker News that reference this video.
Aug 13, 2019 · divan on Await in Rust
> I am not very familiar with CSP based concurrency

I strongly recommend to check it out. I was absolutely mind-blown when saw this talk (without prior knowledge about Go), and that changed my life quite literally.

https://www.youtube.com/watch?v=QDDwwePbDtw

I did a few concurrency related projects (see "Visualizing concurrency in Go" https://divan.dev/posts/go_concurrency_visualize/, for example), and it's way more easier to reason about and work with than any other concurrency approaches I've seen so far.

In general, Go has a sort of "good enough" or very pragmatic philosophy. It offloads strict enforcement of non-sharing between goroutines to the user and community best practices, but provides no compiler enforcement, which would be very difficult due to the fact that the entire rest of the language is mutable.

Erlang's design was driven by much stronger philosophical principles and an unusual initial use case (phone switch programming).

I'm not saying either is necessarily better and worse. The end result is that Go is a much more mainstream language with a lot of refinements, and Erlang is the sort of bizarre-but-oddly-useful language you get when a strong philosophy is carried through to its full logical conclusion. (See also Haskell.)

If you really, really care about compiler-enforced safety, Go is not a good choice. Not only will it let you shoot yourself in the foot, it won't really do that much to stop you. (Indeed, this presentation is almost terrifying from the perspective of an Erlang programmer, so many ways to screw up with the compiler only noticing a handful of them: [1] slides: [2]) However, if you're sort of interested in the sorts of things that can give you but aren't ready to put on the hair-shirt (a metaphor from the Haskell community), Go has some ways of putting your toes into the water and getting some of the practical benefits without a ton of the theory, for instance: http://www.jerf.org/iri/post/2923 . (Only some though.)

[1]: http://www.youtube.com/watch?v=QDDwwePbDtw

[2]: http://talks.golang.org/2013/advconc.slide

Oct 26, 2013 · 1 points, 0 comments · submitted by signa11
May 18, 2013 · 5 points, 0 comments · submitted by fss
May 18, 2013 · 10 points, 1 comments · submitted by oal
mseepgood
"So the motivating example here is putting together a feed reader. Recently my favorite feed reader disappeared. I need a new one." :D
HN Theater is an independent project and is not operated by Y Combinator or any of the video hosting platforms linked to on this site.
~ yaj@
;laksdfhjdhksalkfj more things
yahnd.com ~ Privacy Policy ~
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.