dotGo 2017 - John Cinnamond - Go Lift

  Рет қаралды 16,429

dotconferences

dotconferences

Күн бұрын

Пікірлер: 32
@SakibHasan1
@SakibHasan1 7 жыл бұрын
One of the best talk i have ever heard. Awesome presentation skills! Very enjoyable!
@alvarochaim1643
@alvarochaim1643 3 жыл бұрын
I realize it's kinda randomly asking but does anyone know a good website to watch newly released tv shows online ?
@chancekaiser5368
@chancekaiser5368 3 жыл бұрын
@Alvaro Chaim i dunno I watch on Flixportal. just search on google after it:) -chance
@alvarochaim1643
@alvarochaim1643 3 жыл бұрын
@Chance Kaiser thank you, I signed up and it seems like a nice service :) Appreciate it !!
@chancekaiser5368
@chancekaiser5368 3 жыл бұрын
@Alvaro Chaim you are welcome :D
@codeplexx
@codeplexx 5 жыл бұрын
So, basically, it moved error handling from being explicit to being implicit. If now an error occurs, it skips over the remaining code, and allows errors to be handled in a specific section at the end of the function... sounds familiar.
@wofebr
@wofebr 5 жыл бұрын
You really got me here... Where does this happen too? Not ironic tho, really a question
@mtae5
@mtae5 4 жыл бұрын
@@wofebr try...catch blocks. Java.
@ivanjijon8647
@ivanjijon8647 Жыл бұрын
This was just wonderful.
@koredeaderele1666
@koredeaderele1666 6 жыл бұрын
rewatching this talk after studying haskell/monads and it's so much more enlightening
@PhilippeSantanaCosta
@PhilippeSantanaCosta 6 жыл бұрын
Nice! Just took a funcional approach to handling erros, with a kind of Maybe monad.
@koredeaderele1666
@koredeaderele1666 7 жыл бұрын
This was an incredibly insightful talk
@MakisMaropoulos
@MakisMaropoulos 7 жыл бұрын
Unique talk John you made me laugh, which is very rare !
@AzazeoAinamart
@AzazeoAinamart 7 жыл бұрын
Absolutely the best! Maybe the best (tech) talk I've ever saw!
@fahadus
@fahadus 7 жыл бұрын
That rick roll, though!
@while-loop
@while-loop 7 жыл бұрын
Mr. Sahab lol!
@theoryofmine7473
@theoryofmine7473 7 жыл бұрын
yup :-)
@koredeaderele1666
@koredeaderele1666 7 жыл бұрын
Just wrote some really beautiful code based off the info in this talk. Long live John Cinnamond. Long live Golang.
@Resumeshortly
@Resumeshortly 6 жыл бұрын
Watching the talk, this seems a lot like trying to add Option types to Go
@rraviravir
@rraviravir 6 жыл бұрын
Neat Talk - but i didn't get the conclusion - i get that "Math helps us solve complex problems". But how ?? Is it indication that i should model the flow of data or control like a math transformation ??? can someone help me understand it ??
@JohnCinnamond
@JohnCinnamond 6 жыл бұрын
The ideas in the talk come from a branch of mathematics called Category Theory. Specifically, I'm looking at the idea of building functors in Go. There are limitations to doing this in a language like Go, but nonetheless I think that there is a lot you can learn from understanding Category Theory, even if you have to implement them differently than you would do in, say, Haskell. There is an excellent, comprehensive (but challenging) course on Category Theory from Bartosz Milewski: kzbin.info/www/bejne/f2mvk56ciLiFa5o
@JohnCinnamond
@JohnCinnamond 6 жыл бұрын
... there are other branches of mathematics that can be useful to help you understand how your code works. General Algebra (or Universal Algebra) gives some basic building blocks that are directly applicable to code. The best example of this is monoids (e.g., see this blog post: blog.axosoft.com/monoids-practical-category-theory/). If you want to go further, Constructive Type Theory and Homotopy Type Theory will show you how to reason about increasingly complex structures. It's debatable how much these will help *understand* anything, but maybe I just need to spend more time on them :-)
@JeffreyGoldberg
@JeffreyGoldberg 7 жыл бұрын
Is there anything more than a rough analogy between "type lifting" in the sense of this talk and "type lifting" as used in natural language semantics? I don't think the terminology is a coincidence, particularly when combined with the exhortation to think like a mathematician,.
@JohnCinnamond
@JohnCinnamond 7 жыл бұрын
I’m not familiar with ‘type lifting’ in natural language semantics. I’m not familiar with much in natural language semantics. The terminology I used comes from Category Theory. Do you have any good starting points for type lifting in natural language semantics?
@RayZde
@RayZde Жыл бұрын
Too bad they didn't add try catch. There are still unknown errors that can occur in go. fmt.Sprintf("%v", arg) can return a nil value and a nil value can be assigned to a string. You cannot check if string == nil.
@PaleoWithFries
@PaleoWithFries 3 жыл бұрын
Interesting talk now that Go has generics. 😄
@OverG88
@OverG88 3 жыл бұрын
Not yet...
@santosharakere
@santosharakere 6 жыл бұрын
excellent talk. Thanks.
@nexovec
@nexovec Жыл бұрын
Aaand that's a monad...
@rckd5903
@rckd5903 4 жыл бұрын
Nice talk 👍 The know-how he dropped is gold. Pro tip: learn haskell to get this knowledge for free 🤤
@a0um
@a0um 2 жыл бұрын
Knowledge is never free but, yes, Haskell is with learning.
@OwaisLone
@OwaisLone 10 ай бұрын
Ewww. This would be soo annoying to come across in a big project.
dotGo 2017 - Bill Kennedy - Behavior Of Channels
12:47
dotconferences
Рет қаралды 9 М.
dotGo 2015 - Rob Pike - Simplicity is Complicated
23:12
dotconferences
Рет қаралды 157 М.
Арыстанның айқасы, Тәуіржанның шайқасы!
25:51
QosLike / ҚосЛайк / Косылайық
Рет қаралды 700 М.
Golang UK Conference 2016 - Dave Cheney - SOLID Go Design
27:30
GopherCon UK
Рет қаралды 110 М.
(Neo)Vim Made Me a Better Software Developer
40:27
vim-jp
Рет қаралды 54 М.
GothamGo 2017: Closures are the Generics of Go by Jon Bodner
27:21
Nation Confrences
Рет қаралды 22 М.
GopherCon 2017: Understanding Channels - Kavya Joshi
21:45
Gopher Academy
Рет қаралды 119 М.
dotGo 2016 - Kelsey Hightower - Self Deploying Go Applications
16:59
dotconferences
Рет қаралды 13 М.
Intro to Embassy : embedded development with async Rust
18:47
The Rusty Bits
Рет қаралды 12 М.
dotGo 2016 - Dave Cheney - Do not fear first class functions
18:55
dotconferences
Рет қаралды 29 М.
The Challenges of Writing a Massive and Complex Go Application
1:01:46
Association for Computing Machinery (ACM)
Рет қаралды 40 М.
Concurrency made easy - GopherCon SG 2017
27:47
Singapore Gophers
Рет қаралды 26 М.
Programming with Math | The Lambda Calculus
21:48
Eyesomorphic
Рет қаралды 253 М.
Арыстанның айқасы, Тәуіржанның шайқасы!
25:51
QosLike / ҚосЛайк / Косылайық
Рет қаралды 700 М.