Omslagafbeelding van de show Talking Kotlin

Talking Kotlin

Podcast door Talking Kotlin

Engels

Technologie en Wetenschap

Tijdelijke aanbieding

1 maand voor € 1

Daarna € 9,99 / maandElk moment opzegbaar.

  • 20 uur luisterboeken / maand
  • Podcasts die je alleen op Podimo hoort
  • Gratis podcasts
Begin hier

Over Talking Kotlin

A bimonthly podcast that covers the Kotlin programming language by JetBrains, as well as related technologies.

Alle afleveringen

144 afleveringen
episode How Major Metros Run on KMP artwork

How Major Metros Run on KMP

Every time you tap through a subway gate in New York City, you’re using Kotlin Multiplatform! In this episode, we sit down with Paweł Kwieciński from Masabi to explore how they brought a decade-old Java codebase to KMP, powering ticket validation across mobile apps, embedded devices, and backend systems for public transit agencies worldwide. Resources: * Masabi [https://www.masabi.com/] * J2ObjC (Java to Objective-C translator) [https://developers.google.com/j2objc] * Google Workspace Migration to Kotlin [https://www.youtube.com/watch?v=5sOXv-X43vc] * Large Scale Changes with AI – Uber | Ty Smith [https://www.youtube.com/watch?v=K2PN03AepC0] * KotlinX DateTime [https://github.com/Kotlin/kotlinx-datetime] * Ktor (Client & Server) [https://ktor.io/] * Burst library (archived) [https://github.com/square/burst] * Java ME (Micro Edition) [https://en.wikipedia.org/wiki/Java_Platform,_Micro_Edition] * Mbed TLS [https://www.wolfssl.com/] * SQLDelight [https://sqldelight.github.io/sqldelight/] * Compose Multiplatform [https://www.jetbrains.com/lp/compose-multiplatform/] * JetBrains AI Assistant & Junie [https://www.jetbrains.com/ai/] Hosts: * Sebastian Aigner – Website [https://sebi.io/] | Bluesky [https://bsky.app/profile/sebi.io] * Márton Braun – Website [https://zsmb.co] | Bluesky [https://bsky.app/profile/zsmb.co] Guest: * Paweł Kwieciński Timeline: (0:00) Introduction (1:12) What is Masabi? (3:03) How does Kotlin fit into this? (6:30) System architecture overview (8:33) Embedded SDK and mobile apps (10:33) Ticket inspectors and validators (13:22) Offline operation (16:29) The KMP decision (24:42) Evaluating alternatives (27:21) Planning the migration (33:28) First lines of Kotlin (43:45) Translating Java to Kotlin (53:22) AI-assisted code translation (56:39) Early AI era challenges (1:05:01) Testing challenges (1:08:22) KMP dependencies (1:11:34) Domain-specific dependencies (1:16:55) Java ME and C interop (1:23:22) Backend-client sharing (1:26:59) Current status (1:31:48) Future plans: CMP (1:36:26) Wrap-up

5 mrt 2026 - 1 h 39 min
episode Kotlin 2.3 Release Special (Audio Exclusive) artwork

Kotlin 2.3 Release Special (Audio Exclusive)

Sebastian and Márton host a special, audio-only episode where they discuss everything that’s new and noteworthy in the Kotlin 2.3 release. They touch on new language features like the unused return value checker and explicit backing fields, previously added features that became stable in this release, new APIs for time and UUID handling in the standard library, and improvements across all Kotlin platforms — from Native to Wasm and JS. Resources: * What’s new in Kotlin 2.3 [https://kotlinlang.org/docs/whatsnew23.html] * KotlinConf [https://kotlinconf.com/] * Golden Kodee Community Awards [https://kotlinconf.com/awards/] Hosts: * Sebastian Aigner – Website [https://sebi.io/] | Bluesky [https://bsky.app/profile/sebi.io] * Márton Braun – Website [https://zsmb.co] | Bluesky [https://bsky.app/profile/zsmb.co] Timeline: (0:00) Intro (1:13) Nested type aliases (stable) [https://kotlinlang.org/docs/whatsnew22.html#support-for-nested-type-aliases] (1:46) Data-flow based exhaustiveness checks (stable) [https://kotlinlang.org/docs/whatsnew2220.html#support-for-reified-types-in-catch-clauses] (3:28) Return statements in expression bodies [https://kotlinlang.org/docs/whatsnew2220.html#support-for-return-statements-in-expression-bodies-with-explicit-return-types] (4:19) Unused return value checker (experimental) [https://kotlinlang.org/docs/whatsnew23.html#unused-return-value-checker] (12:57) Explicit backing fields (experimental) [https://kotlinlang.org/docs/whatsnew23.html#explicit-backing-fields] (18:51) Context-sensitive resolution (experimental) [https://kotlinlang.org/docs/whatsnew23.html#changes-to-context-sensitive-resolution] (20:11) Clock and Instant in the standard library (stable) [https://kotlinlang.org/docs/whatsnew23.html#standard-library] (21:52) UUID v7 support and better parsing [https://kotlinlang.org/docs/whatsnew23.html#improved-uuid-generation-and-parsing] (26:14) Java 25 bytecode [https://kotlinlang.org/docs/whatsnew23.html#kotlin-jvm-support-for-java-25] (26:36) Faster Native release builds [https://kotlinlang.org/docs/whatsnew23.html#faster-build-time-for-release-tasks] (27:45) Swift Export: enums and varargs [https://kotlinlang.org/docs/whatsnew23.html#improved-interop-through-swift-export] (29:08) C and Objective-C library import (beta) [https://kotlinlang.org/docs/whatsnew23.html#c-and-objective-c-library-import-is-in-beta] (30:49) Apple target support changes [https://kotlinlang.org/docs/whatsnew23.html#changes-to-apple-target-support] (32:15) Fully qualified names in Kotlin/Wasm [https://kotlinlang.org/docs/whatsnew23.html#fully-qualified-names-enabled-by-default] (34:10) New exception handling for wasmWasi [https://kotlinlang.org/docs/whatsnew23.html#new-exception-handling-proposal-enabled-by-default-for-wasmwasi] (35:32) Suspend function export to JS [https://kotlinlang.org/docs/whatsnew23.html#new-export-of-suspend-function-with-jsexport] (37:51) LongArray export to JS [https://kotlinlang.org/docs/whatsnew23.html#usage-of-the-bigint64array-type-to-represent-kotlin-s-longarray-type] (38:40) Unified companion object access in JS [https://kotlinlang.org/docs/whatsnew23.html#unified-companion-object-access-across-js-module-systems] (41:05) @JsStatic inside interfaces [https://kotlinlang.org/docs/whatsnew23.html#support-for-jsstatic-annotations-in-interfaces-with-companion-objects] (41:43) Default exports in JS [https://kotlinlang.org/docs/whatsnew23.html#support-for-javascript-default-exports] (43:45) Compose stacktraces for minified Android apps [https://kotlinlang.org/docs/whatsnew23.html#compose-compiler-stack-traces-for-minified-android-applications] (45:23) Breaking changes 🐜 [https://kotlinlang.org/docs/whatsnew23.html#breaking-changes-and-deprecations] (46:14) Documentation updates [https://kotlinlang.org/docs/whatsnew23.html#documentation-updates] (47:24) KotlinConf, Golden Kodees Awards [https://kotlinconf.com/] (48:11) Wrap-up

3 feb 2026 - 49 min
episode Building AI Agents With Koog artwork

Building AI Agents With Koog

Sebastian and Márton talk to Vadim Briliantov, the Technical Lead for Koog: an agentic framework built by JetBrains. We learn about what AI agents are, and why building them in Kotlin with Koog is a great choice. We also discuss all the different ways AI agents can connect to other systems and your existing code, and look at advanced features for agents like custom strategies, model switching, and history compression. Resources: * JetBrains/koog on GitHub [https://github.com/JetBrains/koog] * Koog Documentation [https://docs.koog.ai/] Hosts: * Sebastian Aigner – Website [https://sebi.io/] | Bluesky [https://bsky.app/profile/sebi.io] * Márton Braun – Website [https://zsmb.co] | Bluesky [https://bsky.app/profile/zsmb.co] Guest: * Vadim Briliantov – LinkedIn [https://www.linkedin.com/in/vadim-briliantov-087488232/] | Medium [https://medium.com/@vadim.briliantov] | GitHub [https://github.com/Ololoshechkin] | Bluesky [https://bsky.app/profile/vadim-briliantov.bsky.social] | Twitter/X [https://x.com/Ololoshechkkin] Timeline: (0:00) Intro (1:11) Vadim’s history at JetBrains (4:21) What’s an AI Agent? (5:47) Koog! (7:12) Applications for agents (12:43) Koog’s building blocks (15:05) Strategies, feedback loops (23:55) The Kotlin DSL (26:12) Persistent state (29:48) Subgraphs (32:33) Tools (39:52) MCP support (and A2A) (44:01) Entry point and type safety (49:39) Spring and Ktor support (51:27) LLM Providers (53:30) Model switching (56:02) History and memory (59:22) Enterprise-ready (1:02:12) History compression (1:11:47) Markdown?! (1:14:37) What’s next? (1:18:22) Going open-source (1:20:32) Conclusion

17 nov 2025 - 1 h 22 min
episode Discussing Kotlin Coroutines with Marcin Moskała artwork

Discussing Kotlin Coroutines with Marcin Moskała

Sebastian and Márton chat with Marcin Moskała about coroutines. Resources: * Coroutines Mastery course [https://coroutinesmastery.com/] * Coroutines | Kotlin Documentation [https://kotlinlang.org/docs/coroutines-overview.html] * kotlinx.coroutines [https://github.com/Kotlin/kotlinx.coroutines] * Taming Asynchronous Beasts | Marcin Moskała [https://www.youtube.com/watch?v=QTX5_JV4TVU] * Coroutine Debugging in IntelliJ IDEA | Alexey Merkulov [https://www.youtube.com/watch?v=3vaAVtnrzAM] * Lifecycles, Coroutines and Scopes | Alejandro Serrano Mena [https://www.youtube.com/watch?v=VyBxy3_Mj6Q] * Collect Like a Pro | Manuel Vivo [https://www.youtube.com/watch?v=qJB5iX2cOu0] * Untangling Coroutine Testing | Márton Braun [https://www.youtube.com/watch?v=nKCsIHWircA] * JetBrains/lincheck – Concurrent testing framework [https://github.com/JetBrains/lincheck] * #talking-kotlin on Kotlin Slack [https://slack-chats.kotlinlang.org/c/talking-kotlin] Hosts: * Sebastian Aigner – Website [https://sebi.io/] | Bluesky [https://bsky.app/profile/sebi.io] * Márton Braun – Website [https://zsmb.co] | Bluesky [https://bsky.app/profile/zsmb.co] Guest: * Marcin Moskała – kt.academy [https://kt.academy/user/marcinmoskala] 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

23 okt 2025 - 2 h 3 min
episode kotlinx.rpc artwork

kotlinx.rpc

Sebastian and Alex chat about the kotlinx.rpc project, in a special episode recorded in the Munich JetBrains office. They explore all the different components of the library, how you can use it to define RPC services and clients, integrate with Ktor and existing gRPC definitions, and more. While the library is still experimental, it’s already feature-packed, and it has ambitious plans for the future! * kotlinx-rpc on GitHub [https://github.com/Kotlin/kotlinx-rpc] * #kotlinx-rpc on Slack [https://kotlinlang.slack.com/archives/C072YJ3Q91V] * kotlinx.serialization on GitHub [https://github.com/Kotlin/kotlinx.serialization]  * gRPC [https://grpc.io/] Host: Sebastian Aigner * Website [https://sebi.io/] * Bluesky [https://bsky.app/profile/sebi.io] Guest: Alex Sysoev * LinkedIn [https://www.linkedin.com/in/mr3zee/] * GitHub [https://github.com/Mr3zee]

11 aug 2025 - 1 h 30 min
Super app. Onthoud waar je bent gebleven en wat je interesses zijn. Heel veel keuze!
Super app. Onthoud waar je bent gebleven en wat je interesses zijn. Heel veel keuze!
Makkelijk in gebruik!
App ziet er mooi uit, navigatie is even wennen maar overzichtelijk.

Kies je abonnement

Meest populair

Tijdelijke aanbieding

Premium

20 uur aan luisterboeken

  • Podcasts die je alleen op Podimo hoort

  • Geen advertenties in Podimo shows

  • Elk moment opzegbaar

1 maand voor € 1
Daarna € 9,99 / maand

Begin hier

Premium Plus

Onbeperkt luisterboeken

  • Podcasts die je alleen op Podimo hoort

  • Geen advertenties in Podimo shows

  • Elk moment opzegbaar

Probeer 30 dagen gratis
Daarna € 11,99 / maand

Probeer gratis

Alleen bij Podimo

Populaire luisterboeken

Begin hier

1 maand voor € 1. Daarna € 9,99 / maand. Elk moment opzegbaar.