エピソード

  • Building KMP Libraries: The RevenueCat Story
    2025/02/20

    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 openings

    Hosts:

    • 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

    続きを読む 一部表示
    52 分
  • Becoming a KMP Expert
    2025/01/23
    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/kotlinKotlin/kotlinx-datetimeKotlin/kotlinx-ioKotlin/kotlinx.coroutinesCartesian product by Jake Get an invite!Ecosystem wishlist:wasmJs support in SQLDelightCompose Multiplatform support in MapLibreLearning resources:Kotlin Multiplatform build setup from scratch with Sebastian SellmairKEEP - Kotlin Evolution and Enhancement Process HexFormat proposal and discussion Uuid proposal and discussionMore KMP experts: Kevin Galligan BlueskyTwitter Russell Wolf GitHubTwittermultiplatform-settings Jesse Wilson GitHub Sebastian Sellmair Twitter Salomon Brys TwitterHosts: Sebastian Aigner Website Pamela Hill BlogBlueskyGuests: Jake Wharton Website John O'Reilly WebsiteKMP samples on GitHub Konstantin Tskhovrebov Mastodon Tadeas Kriz MastodonBluesky(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
    続きを読む 一部表示
    53 分
  • Going from Swift to Kotlin with Skip
    2024/12/09
    In a slightly unconventional episode, Sebastian and Márton talk to the founders of Skip, an iOS-to-Android, Swift-to-Kotlin transpiler solution. Marc and Abe have a background working on both Apple platforms and the JVM, and their latest project is a bridge across these two ecosystems.
    • Skip
    • Skip.tools on GitHub
    • Contributing to SkipUI webinar
    • kdoctor
    Hosts:
    • Sebastian Aigner
      • Website
      • Bluesky
    • Márton Braun
      • Website
      • Bluesky
    Guests:
    • Abe White
      • Twitter
      • Mastodon
    • Marc Prud'hommeaux
      • GitHub
    (0:00) Weather
    (2:02) Introductions
    (3:10) ⁠Elevator pitch⁠
    (3:45) The initial idea
    (6:14) Pivot around the server-side
    (8:35) Skip(.tools)
    (8:56) The target audience
    (9:58) What about Android devs?
    (12:11) The current state
    (14:57) Pricing and components
    (16:43) ⁠Contributing to SkipUI⁠
    (18:55) Reimplementing everything
    (23:07) ⁠The Skip stack⁠
    (26:17) Wrapping JVM types
    (28:27) Writing Kotlin in Swift?!
    (29:56) Tooling support
    (32:02) There’s a Gradle project!
    (34:39) iOS API coverage
    (38:24) Platform differences
    (40:10) Data storage
    (44:31) Building on JVM libraries
    (46:42) JSON problems
    (48:00) Testing the Skip stack
    (51:42) SwiftUI to Compose
    (58:21) IDE experiences
    (1:03:35) Conclusion
    続きを読む 一部表示
    1 時間 5 分
  • Platform Integrations in Kotlin Multiplatform with Russell Wolf
    2024/11/21

    Sebastian introduces the new co-host of the podcast, in a special episode recorded on location at droidcon New York! Joined by Russell Wolf, author of the multiplatform-settings library, we discuss the conference, different code sharing approaches for Kotlin Multiplatform, and how to build great multiplatform libraries.

    • droidcon New York
      • When sharing isn’t caring: Using platform-specific code in Kotlin Multiplatform (Russell’s talk)
      • Compose Multiplatform on iOS: On the Road to Stable (Seb’s talk)
      • Composing an API the *right* way (Márton’s talk)
    • The deprecated Accompanist WebView implementation for Jetpack Compose
    • russhwolf/multiplatform-settings on GitHub
    • Kotlin Multiplatform database libraries
      • Room
      • SQLDelight
    • Dependency injection libraries
      • Koin
      • Kotlin-inject
    • ViewModel for Kotlin Multiplatform

    Hosts:

    • Sebastian Aigner
      • Website
    • Márton Braun
      • Website

    Guest:

    • Russell Wolf
      • GitHub
      • Twitter

    Timestamps 0:00 Intro at home 2:02 Intro at droidcon NYC 4:23 Russell’s talk topic 8:14 Code sharing approaches 12:28 Wrapping native APIs 16:18 Attempted segue 16:35 Designing reusable APIs 18:02 Actual segue 18:14 multiplatform-settings 20:23 Supported platforms 24:05 SharedPreferences challenges 26:20 Observable preferences 29:51 Secure storage 30:55 Windows again 31:36 Library code as reference 33:15 Testable library code 35:05 Initializing a KMP library 38:18 Database libraries 40:55 Dependency injection 44:40 Outro

    続きを読む 一部表示
    46 分
  • Kotlin After 2.0
    2024/08/29
    In this episode, we talk about the future of Kotlin and its development after the 2.0 version.
    続きを読む 一部表示
    1 時間 7 分
  • Reinventing Ticket Sales with Pretix
    2024/07/03
    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.
    続きを読む 一部表示
    49 分
  • Kord: Deep Dive into the Discord API
    2024/06/12
    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
    続きを読む 一部表示
    47 分
  • Navigating the Compose Multiverse – Lyricist & Voyager
    2024/03/06
    🚀 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!
    続きを読む 一部表示
    43 分