Discussing Kotlin Coroutines with Marcin Moskała
Failed to add items
Add to basket failed.
Add to wishlist failed.
Remove from wishlist failed.
Adding to library failed
Follow podcast failed
Unfollow podcast failed
-
Narrated by:
-
By:
Sebastian and Márton chat with Marcin Moskała about coroutines.
Resources:
- Coroutines Mastery course
- Coroutines | Kotlin Documentation
- kotlinx.coroutines
- Taming Asynchronous Beasts | Marcin Moskała
- Coroutine Debugging in IntelliJ IDEA | Alexey Merkulov
- Lifecycles, Coroutines and Scopes | Alejandro Serrano Mena
- Collect Like a Pro | Manuel Vivo
- Untangling Coroutine Testing | Márton Braun
- JetBrains/lincheck – Concurrent testing framework
- #talking-kotlin on Kotlin Slack
Hosts:
- Sebastian Aigner – Website | Bluesky
- Márton Braun – Website | Bluesky
Guest:
- Marcin Moskała – kt.academy
Timeline:
(0:00) Introduction
(1:18) Branding discussion
(3:23) Handling preconceptions
(4:54) What are coroutines?
(7:17) Lightweight threads?
(11:07) Where coroutines live
(13:27) Sequence Builder Example
(17:37) The design of coroutines
(20:52) What Makes Coroutines special vs other languages?
(26:56) Coroutines vs Loom
(34:55) Easy to start, hard to master
(41:07) Common mistakes
(49:33) Flows
(58:52) Thinking about Flows
(1:02:41) Derailing the conversation
(1:03:55) Flows for single values
(1:12:27) Structured concurrency
(1:18:53) The 4 advantages
(1:24:40) Seb tries web dev / The web is broken?!
(1:31:15) collectAsStateWithLifecycle
(1:32:00) Gardening break
(1:36:23) Scopes and contexts
(1:43:22) Testing coroutines
(1:50:29) Lincheck
(1:51:32) Turbine
(1:55:05) Coroutines Mastery course
(2:01:43) Wrap-up