KotlinConf 2018 - Exploring Coroutines in Kotlin by Venkat Subramaniam

preview_player
Показать описание
Coroutines have intrigued programmers for a long time. Some languages of the past implemented coroutines, but programmers using the mainstream languages of recent decades largely did not get much exposure to this programming construct. There's a resurgence of interest for coroutines and some serious work has been done in Kotlin to implement it. We'll take an example oriented approach to learning about the benefits of coroutines and along the way explore this feature of Kotlin.

About the Presenter:
Рекомендации по теме
Комментарии
Автор

Great, It really helped to understand coroutines.
BTW, It's very impressive that he could keep talking without a break while he writes several lines of codes and runs it.
There must have been coroutines running in his brain.

GooksanGom
Автор

This guy is who made me start kotlin, greet to see him in the Kotlin Conf <3

canaldosouza
Автор

I'm a simple man. I see Venkat Subramariam in a video title, I click.

vasyan
Автор

That's some introduction. I like how he explained the "Why?" part of the changes.

VedantRajdeep
Автор

This well co-ordinated explanation along with live coding demonstration is simply brilliant. He makes it look simple, but let me tell you, as some one who makes tutorials on YouTube, this requires exceptional skills. Not just coding but presence of mind.

Codetutor-DemystifyCoding
Автор

I've not seen anyone explaining the internals of coroutines better than Venkat Subramaniam.

ChetanSachdeva
Автор

I refer to Venkat's lectures whenever I get to the mood of seeking out wisdom 😌

yasserakbbach
Автор

I love Venkat voice, it is so calming.

benjaminrangel
Автор

Topics:
1. Parallel vs Asynchronous 0:50 (Java, Kotlin ahead of Java at least 5-years, Microservices, sequential vs parallel) coroutines make it easy to write asynchronous code.
2. Concurrency vs non-blocking 1:50 (Java example and comparison)
3. Let's examine parallel just a bit, in Java 2:30 (Java example and comparison)
Parallel Stream:
Structure of [functional] sequential code
is the same as parallel code
Coroutine:
Structure of [Imperative] Synchronous code
is the same as asynchronous code
4. Why not be happy with that? 5:20
5. Functional style is awesome 5:20
6. But, handling exceptions is a mess 5:44
7. Coroutines are asynchronous 6:25

launch { //launch () method
}
8. From synchronous to asynchronous 9:00
Non-blocking GUI's
9. Blocking to non-blocking 10:12
10. How do coroutines work? 10:12
11. A sequential code 17:14
12. Using suspend 23:20, 24:30
Parallel Stream:
Structure of [functional] sequential code
is the same as parallel code
Coroutine:
Structure of [Imperative] Synchronous code
is the same as asynchronous code
13. Doing asyn 33:00

mehmoodrehman
Автор

What a great explanation! You know he is an absolute professional when he shows how suspend functions are sending the rest of the code (Continuation) of the function as a parameter 28:24 . Everything including async block explanation was just great. He taught me things he wasn't even trying(possibly) to cover in this conf. Thanks!

norulesprateek
Автор

What a legend. Solved so many queries I had about coroutines with such simple but precise and amazing explanations.

aksh
Автор

Good examples. the multitasking while presentation using vim is incredible. !! Also the sound of claps at end of video says it all.

KaranSharmakc
Автор

This was so captivating. i didn't even felt for a minute that am staring at my screen for 44 minutes. amazing presentation.
Anyone reading this comment in 2021 : How to access the launch{} function in coroutines 1.5?

anshsachdeva
Автор

What a god damn pro, sometimes I need to pause to think about what he said

jimmyleo
Автор

the best speaker ever ) java versions are bumping, new langs come and go. but Venkat is a guy who always was with us )

leomak
Автор

Great presentation.
I really appreciated the use of bare bone editors and the love coding.
I wish he slowed down a bit around the crucial points but understand it's a lot to cover in the given time.
Impressive how he kept going confidently despite the inevitable typos, etc.
I still have some questions about coroutines but this talk really gave me some good examples to think about.

aum
Автор

That last example of step by step conversion from sequential -> suspend -> async did the trick for me :)

johnyrufus
Автор

I've never seen anyone program in VI before. It felt a bit like black magic.

methodsignature
Автор

He is really awesome. He is totally different from any other devs. It's like an entertainer or magician.

taktak
Автор

really like a way he explains stuff, his talk about DSLs also nice

antoshae