Talking Kotlin cover image

Talking Kotlin

Latest episodes

undefined
May 15, 2025 • 57min

Powering TV Broadcasts Worldwide

Sebastian and Márton are joined by Denis Borisevich from RIEDEL Communications, and learn about how Kotlin is used behind-the-scenes to power media, sports, and entertainment broadcasts watched by millions around the globe. Tune in for an exciting story about how Kotlin, Ktor, and Arrow are being used in production for a use case where robust software is mission-critical.Resources: Riedel Communications TornadoFX Unsigned integer types Arrow Ktor EurovisionHosts: Sebastian Aigner – Website | Bluesky Márton Braun – Website | Bluesky Guest: Denis Borisevich – LinkedIn Timeline:(0:00) Introductions(2:42) Events powered by Riedel(3:50) The Kotlin part(6:44) Routing video signals(9:12) Error handling in milliseconds(10:31) The Kotlin part, continued(13:29) TornadoFX!(19:19) On introducing Compose(23:30) Java to Kotlin migration(26:30) Learning Kotlin after C++(28:44) Unsigned ints in Kotlin(32:09) Arrow!(33:00) Server-side Kotlin(36:25) Functional programming(42:10) Why Kotlin over others?(45:55) Kotlin/Java interop(47:12) A 2-week long test suite(51:35) Confidence in Kotlin(53:05) Future plans(56:00) Wrap-up
undefined
7 snips
Mar 27, 2025 • 1h 5min

Creator of Spring: No desire to write Java at All

Rod Johnson, the creator of the Spring Framework and founder of SpringSource, shares his intriguing journey back to the JVM and his experience with Kotlin. He recounts how Spring was born over two decades ago, emphasizing community collaboration in open-source. Rod finds Kotlin's modern features and readability a refreshing change from Java, highlighting its seamless integration with Spring. The discussions touch on Kotlin's evolving type system and its potential future, making it a fascinating listen for anyone in software development.
undefined
Feb 20, 2025 • 52min

Building KMP Libraries: The RevenueCat Story

Sebastian and Márton discuss building KMP libraries with Jay Shortway, the author of RevenueCat’s Kotlin Multiplatform SDK for in-app purchases.Resources: RevenueCat KMP SDK How we built the RevenueCat SDK for Kotlin Multiplatform Hybrid SDK Architecture at RevenueCat ttypic/swift-klib-plugin on GitHub RevenueCat/purchases-kmp on GitHub Consider moving `Instant` and `Clock` to the standard library · Kotlin/kotlinx-datetime RevenueCat openingsHosts: Sebastian Aigner – Website | Bluesky Márton Braun – Website | Bluesky Guest: Joop Korteweg – Twitter Timeline:(0:00) Intro(0:44) What’s RevenueCat(4:00) In-app purchases are hard(7:22) The multiplatform SDK(12:44) The demand for KMP(16:30) Hiring and team structure(18:42) SDKs for any framework(21:27) Building on native SDKs(23:45) Improving iOS linking(24:54) The SDK is on GitHub(26:05) Benefits of building on native(28:18) Designing a common API(33:21) Add-on modules for SDKs(37:30) Instant in the standard library(38:04) Returning results from the API(39:53) API design decisions(44:57) Codegen opportunities(45:48) The best things about KMP(47:07) KMP improvements wishlist(48:28) The KMP journey(49:45) Wrap-up
undefined
Jan 23, 2025 • 53min

Becoming a KMP Expert

Sebastian and Pamela discuss what it means to be an expert in Kotlin Multiplatform, with the help of a panel of experts! Learn about why it's interesting to dive deep into a certain technology, recommendations on how to learn advanced topics, and general advice on how to get the most out of using KMP.SKIEKMP libraries: whyoleg/cryptography-kotlinInteresting code to explore: JetBrains/kotlin Kotlin/kotlinx-datetime Kotlin/kotlinx-io Kotlin/kotlinx.coroutines Cartesian product by Jake Get an invite!Ecosystem wishlist: wasmJs support in SQLDelight Compose Multiplatform support in MapLibreLearning resources: Kotlin Multiplatform build setup from scratch with Sebastian Sellmair KEEP - Kotlin Evolution and Enhancement Process HexFormat proposal and discussion Uuid proposal and discussionMore KMP experts: Kevin Galligan Bluesky Twitter Russell Wolf GitHub Twitter multiplatform-settings Jesse Wilson GitHub Sebastian Sellmair Twitter Salomon Brys TwitterHosts: Sebastian Aigner Website Pamela Hill Blog BlueskyGuests: Jake Wharton Website John O'Reilly Website KMP samples on GitHub Konstantin Tskhovrebov Mastodon Tadeas Kriz Mastodon Bluesky(0:00) Introductions(1:40) Why be a KMP expert?(9:14) First steps to being an expert(16:38) Respecting each platform(24:04) Libraries for KMP(27:45) Advanced learning resources(38:18) Ecosystem wishlist(43:03) Exercising your KMP skills(48:15) Shoutouts to other experts(51:34) Wrap-up
undefined
Dec 9, 2024 • 1h 5min

Going from Swift to Kotlin with Skip

Abe White and Marc Prud'hommeaux, co-founders of Skip, share their expertise in bridging the iOS and Android ecosystems. They discuss their innovative transpiler that converts Swift to Kotlin, making multi-platform development seamless. Key challenges, like API integration and serialization across platforms, are examined. The duo emphasizes enhancing developer experience by improving tooling support, especially for those transitioning from Xcode to Android Studio. They also touch on the complexities of state management in modern UI frameworks.
undefined
Nov 21, 2024 • 46min

Platform Integrations in Kotlin Multiplatform with Russell Wolf

Russell Wolf, based in Boston, is the mastermind behind the multiplatform-settings library and a key figure in the Kotlin Multiplatform community. He discusses his experience at DroidCon New York, highlighting the balance needed between shared code and platform-native features. Topics include designing reusable APIs, the challenges of secure storage, and the intricacies of observable preferences across platforms. Russell also dives into best practices for building effective multiplatform libraries and the evolving landscape of dependency injection in Kotlin development.
undefined
Aug 29, 2024 • 1h 7min

Kotlin After 2.0

Discover the light-hearted journey of personal fitness as the hosts share their workout experiences. Celebrate eight years of camaraderie and transition with humor and gratitude. Dive into Kotlin's evolution post-2.0, focusing on smart casts and overcoming technical debt. Explore community engagement in prioritizing development, the significance of the Kotlin compiler ecosystem, and the benefits of the Kotlin Symbol Processor. Unpack the integration challenges of Compose and strategies for maintaining backward compatibility while enhancing type safety and usability in Kotlin.
undefined
Jul 3, 2024 • 49min

Reinventing Ticket Sales with Pretix

In this episode of Talking Kotlin, Hadi Hariri and Sebastian Aigner chat with Raphael Michel, the founder of pretix, an open-source ticketing system. Raphael shares his fascinating journey, from building pretix to solve a conference ticketing problem to becoming a full-fledged company with a global reach. The conversation dives into the complexities of event ticketing, the challenges of the pandemic, and the surprising new markets pretix entered, like managing access for public swimming pools in Berlin. Throughout the episode, Raphael discusses how Kotlin plays a crucial role in pretix's development. He talks about using Kotlin for various components, including Android apps, desktop applications, server-side logic, and even future plans for integrating with hardware like turnstiles.
undefined
Jun 12, 2024 • 47min

Kord: Deep Dive into the Discord API

Join us for an in-depth conversation with Michael Rittmeister and Luca Kellermann, the brains behind Kord, a Kotlin library designed for interacting with the Discord API. In this episode, we dive into the complexities of the Discord API, the importance of WebSockets, and the challenges and strategies in building and maintaining a modularized library. We also explore the future of Kord, including their move towards native support and the ongoing effort to keep up with Discord's evolving features. Whether you're a Kotlin enthusiast or a Discord bot developer, this episode is packed with valuable insights and practical advice. Kord library – https://github.com/kordlib/kord Michael on X – @SchlaumeierTVDE Luca on GitHub – https://github.com/lukellmann
undefined
Mar 6, 2024 • 43min

Navigating the Compose Multiverse – Lyricist & Voyager

🚀 Dive into the Compose multiverse with the latest episode of Talking Kotlin! 🌐 In this insightful conversation, our hosts, Seb and Hadi, bring on a special guest, Adriel Café, to discuss two powerful libraries in the Kotlin ecosystem – Lyricist and Voyager. 🎼 Lyricist: The Missing Piece of Jetpack Compose Adriel shares the journey behind Lyricist, an open-source library designed to simplify UI development with Jetpack Compose. Discover how Lyricist leverages sealed classes to enhance navigation, making it an indispensable tool for Compose-based Android apps. 🌍 Voyager: Compose on Warp Speed Get ready for a warp-speed adventure with Voyager! Adriel introduces Voyager, a navigation library for Compose Multiplatform, inspired by Star Trek's Voyager ship. Learn how Voyager simplifies navigation across Android, iOS, desktop, and even the web, supporting Compose Multiplatform projects seamlessly. 🤖 Lifecycle Challenges and Stability in Voyager Adriel delves into the challenges of handling lifecycles in Android and how Voyager tackles them. Discover the complexities, experimental APIs, and ongoing efforts to stabilize Voyager for a robust and crash-free navigation experience. 🛠️ Contributing to Open Source and Community Support The trio discusses the importance of open-source contributions, community support, and the fascinating world of Compose Multiplatform. Explore the nuances of transitioning from Android to Compose Multiplatform, and get a closer look at the exciting projects Adriel has been working on. 📚 Resources and Links Mentioned Lyricist: https://github.com/adrielcafe/lyricist Voyager: https://voyager.adriel.cafe/ Adriel's GitHub: https://github.com/adrielcafe Follow Adriel on Twitter: https://twitter.com/adrielcafe 👍 Enjoyed the episode? Don't forget to like, share, and subscribe! Let us know your thoughts in the comments below. Have a Kotlin-related topic you'd like us to cover in a future episode? Share your suggestions and join the Kotlin conversation!

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app