The Kotlin ecosystem is full of powerful tools and frameworks — and in this episode of Talking Kotlin, we’re diving deep into Exposed, JetBrains’ Kotlin SQL library, which recently reached its 1.0 release.Sebastian and Márton sit down with Chantal from the Exposed team to explore what Exposed is, where it came from, and how it helps developers work with databases in a Kotlin-first way. From type-safe SQL DSLs and lightweight DAO support to JDBC, R2DBC, Ktor, Spring Boot, migrations, and future KMP plans — this episode covers the past, present, and future of Exposed.You’ll learn:What makes Exposed different from traditional ORMsHow the DSL and DAO APIs work togetherWhy Exposed 1.0 required a major architecture redesignHow R2DBC support enables non-blocking database accessHow Exposed integrates with Ktor and Spring BootWhat’s coming next: migrations, plugins, DAO improvements, and KMP supportThe surprisingly charming origin story behind the Exposed cuttlefish mascotWhether you’re already using Exposed or just looking for a Kotlin-friendly way to work with SQL databases, this episode is packed with practical insights and behind-the-scenes stories from the team building it.Try ExposedRead the docsJoin the discussion on Kotlin SlackReport issues or share feedback on YouTrack
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.
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
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.
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.
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
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
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!
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.
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
Sebastian and Márton chat with Rod Johnson, the creator of the Spring Framework. Rod tells the story of how Spring was born more than two decades ago, and shares his recent journey of coming back to the JVM and discovering all the fun of being a newcomer to Kotlin.
Timeline: (0:00) Intro (0:52) The origins of Spring (6:40) You need a business model (8:21) Consistency is key (9:39) Sustainable open source (14:22) Parallels with JetBrains and Kotlin (15:29) Rod’s journey around the JVM (20:48) Shoulders of giants (22:34) The newcomer experience (24:40) LLMs write great Kotlin (30:34) “You can start without great pain” (33:32) Extension functions (36:15) Too much magic? (37:56) Rod’s feature wishlist (39:37) Versioning and compatibility (41:19) Ecosystems and interop (43:34) Kotlin type system evolution (46:27) Kotlin with Spring (52:24) Learning Spring with Kotlin (54:46) Kotlin in 5 years? (1:00:39) Rod’s current work (1:03:58) Wrap-up
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
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.
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.
(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
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.
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.
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
🚀 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!
🚀 Immerse yourself in the world of Kotlin as the latest podcast episode unveils the inner workings of the Kotlin Foundation!
🎙️ Join Sebastian and Hadi and a stellar lineup of guests, including Ksenia Shneyveys, Trisha Gee, Kevin Galligan, Charles Anderson, and Jeffrey van Gogh, as they share exclusive insights into the foundation's mission, projects, and plans for the future.
🌐 Discover the foundation's inception, core objectives, and impactful collaborations between founding members JetBrains and Google. Gain a deeper understanding of Kotlin's significance in the tech landscape and explore how the foundation is shaping the language's evolution.
🔍 Dive into the intricate workings of the Kotlin Education Committee. Explore their mission to foster the next generation of developers through initiatives like the Google Summer of Code and the Kotlin Multiplatform Contest. Uncover how Kotlin is making its mark in academia, with top universities adopting it as the go-to language for introductory computer science courses.
💼 Hear from representatives of new foundation members, Gradle, Shopify, and Touchlab. Kevin, Charles, and Trisha share valuable perspectives on why their companies joined the Kotlin Foundation and how they contribute to the thriving Kotlin ecosystem. Discover the benefits of membership and how these organizations are actively shaping the future of Kotlin.
💡 Whether you're a seasoned Kotlin developer or just stepping into the world of programming, this podcast episode offers a unique glimpse into the heart of the Kotlin Foundation. Don't miss the chance to stay updated on the latest developments, initiatives, and opportunities within the Kotlin community!
🚀 Like, share, and subscribe to stay connected with the Kotlin community and unlock the full potential of this powerful programming language!
The Kotlin Foundation Annual Report 2023 – https://kotl.in/kfr_2023
Kotlin Foundation – https://kotlinfoundation.org/
#KotlinFoundation #Programming #TechPodcast #KotlinCommunity #Google #JetBrains #Gradle #Shopify #Touchlab #KotlinPodcast
Join us in this exciting episode of Talking Kotlin as we dive into the world of Kotlin Multiplatform with three special guests, Mike Nakhimovich, Yigit Boyar, and Matthew Ramotar, the minds behind the popular library 'Store' — a Kotlin Multiplatform library for building network-resilient applications.
We explore the journey of 'Store' from its earlier versions to the recently released Store 5, shedding light on the challenges faced in making the library multiplatform.
The conversation touches on various topics, from the adoption of Kotlin Multiplatform in different use cases, the integration with other Kotlin ecosystem tools like Molecule, to the challenges and goals ahead for 'Store.'
Whether you're an Android developer, Kotlin enthusiast, or just curious about the latest developments in the Kotlin ecosystem, this episode offers valuable insights and a glimpse into the future of Kotlin Multiplatform development.
Welcome to another engaging episode of Talking Kotlin! In this edition, we dive into the dynamic world of Android development with Colin White, the creator of the widely acclaimed Coil library. Join us as we discuss the latest developments, insights, and the exciting roadmap for Coil.
🚀 Highlights from this Episode:
Learn about Colin's journey in developing the Coil library.
Discover the pivotal role Coil plays in simplifying image loading for Android developers.
Get an exclusive sneak peek into the upcoming Coil 3.0, featuring multi-platform support and seamless integration with Jetpack Compose.
🔗 Helpful Links:
Coil Library GitHub: github.com/coilkt/coil
Follow Colin White on Twitter: @colinwhi
🌐 Connect with the Kotlin Community: https://kotlinlang.org/community/
Kotlin Foundation: https://kotlinfoundation.org/
Dive into the intricate world of microservices with the latest episode of Talking Kotlin, hosted by Sebastian and Hadi . In this engaging conversation, the hosts are joined by Ivan and David, the masterminds behind HTTP4K, to discuss the nuances of simplicity in software development and the often-misunderstood landscape of microservices.
The episode kicks off with a discussion about the deceptive allure of complexity in building software. Ivan and David share insights into their roles as consultants, shedding light on the misconception that complexity is synonymous with efficiency. They challenge the industry norm and question whether microservices have become overly complex without a clear reason.
As the discussion progresses, the hosts inquire about the scalability and applicability of HTTP4K. Ivan and David emphasize the simplicity of HTTP4K and its efficacy, providing valuable insights into its application in various scenarios. They discuss the importance of understanding application growth and the potential challenges that may arise, such as the need for databases, queues, and caches.
At the end, the conversation steers towards structuring applications and the patterns recommended by Ivan and David. They address the significance of mono repos and multi-service testing, highlighting the need for understanding how to construct larger applications.
Join the hosts and guests in this thought-provoking episode as they demystify the complexities of microservices and celebrate the elegance of simplicity in software development. Whether you're a seasoned developer or just stepping into the world of microservices, this episode provides valuable insights and a fresh perspective on building robust and scalable software.
For more Kotlin insights and exciting discussions, don't miss Talking Kotlin. Subscribe now and stay tuned for upcoming episodes!
In this episode, we talk to Rick Clephas, one of the Kotlin Foundation Grants Program winners and the creator of KMP-NativeCoroutines and KMM-ViewModel.
Rick shares how the KMP-NativeCoroutines library came into existence, how it works, and the challenges he faced during its development. We’ve also discussed Rick’s motivation to apply for the grant and how it helps him allocate more time and resources to the project.
And finally, watch this episode to see how we reached the decision to rename the KMM-ViewModel library to KMP-ViewModel and the reason behind it.
The Kotlin Foundation Grants Program winners: https://kotl.in/j8dckl
KMP-NativeCoroutines: https://github.com/rickclephas/KMP-NativeCoroutines
KMM-ViewModel: https://github.com/rickclephas/KMM-ViewModel
In this episode of Talking Kotlin, we are chatting with Sébastien Deleuze about the promising future and the huge potential of Kotlin for WebAssembly in the browser and beyond.
Does synthesizing a database sound like magic to you?
In this episode of Talking Kotlin, we discuss how Synthesized uses Kotlin together with custom DSLs and OpenAPI to do just that!
–––––––––––––––––––––––––––
SYNTHESIZED – https://www.synthesized.io/
Hurdy-Gurdy – https://github.com/CourseOrchestra/hurdy-gurdy
KotlinPoet – https://github.com/square/kotlinpoet
Swagger Parser – https://github.com/swagger-api/swagger-parser
Welcome to the latest episode of Talking Kotlin! In this edition, we are thrilled to have Amrita, Kieran, and Zac, as we dive into a detailed discussion on Circuit - a simple, lightweight, and extensible framework for building Kotlin applications that’s Compose from the ground up.
If you're interested in learning more about Circuit and how it can help streamline your Kotlin development process, be sure to tune in to this episode of Talking Kotlin!
Circuit - https://github.com/slackhq/circuit
Amrita – https://amritav.com/
Zac – https://www.zacsweers.dev/
Kieran – https://twitter.com/kierse
What distinguishes a mid-level developer from a senior one, and how do you make the leap?
Find out in this episode of Talking Kotlin! Our guest is Marcin Moskala – an experienced developer, trainer, speaker, and author of books on Kotlin.
Marcin on Twitter - https://twitter.com/marcinmoskala
Marcin's website - https://marcinmoskala.com
This time we talked to Sudarshan Muralidhar and Christian Melchior from MongoDB + Realm about their new multiplatform product that is created to ensure the consistency and consolidation of data across devices and your backend.
Sudarshan Muralidhar on Twitter - https://twitter.com/sudssm
Christian Melchior on Twitter - https://twitter.com/chrmelchior
Realm Kotlin SDK Documentation - https://www.mongodb.com/docs/realm/sd...
Atlas Sync documentation - https://www.mongodb.com/docs/atlas/ap...
We chat with Alexey about Kotlin Design Patterns and Best Practices and his recently released book, "Kotlin Design Patterns and Best Practices."
Alexey on Twitter – https://twitter.com/alexey_soshin
25% OFF THE BOOK use 25ALEXEY code – https://www.packtpub.com/
KotlinConf'23 – https://kotlinconf.com/
We chat with Raul, Simon, and Alejandro to learn how Arrow adds functional paradigms and safety to Kotlin, and how it aims to influence the future of the language.
iOS developers of your favorite to-do app want Kotlin Multiplatform! Why?
In this episode, we talked to Goncalo Silva – CTO of Doist, a company famous for its award-winning to-do list app, Todoist. We covered how Kotlin is used in the company and which parts of the service they share between iOS and Android using Kotlin Multiplatform. But most importantly, we took a deep dive into how they introduced the technology to the development team, and how even their iOS developers came to love Kotlin Multiplatform Mobile. What was their starting point with KMM? Which Kotlin Multiplatform tutorials did they use? How did they decide between Kotlin Multiplatform and Flutter? Want to know the answers to these questions? Check out the full episode!
Goncalo on Twitter - https://twitter.com/goncalossilva
Doist on GitHub - https://github.com/Doist
Doist Careers - https://doist.com/careers
We sit down with the man who made the first Kotlin commit in Android – and who is also a long-time fan of the show, apparently! Yigit Boyar (https://twitter.com/yigitboyar) is working on the Android team at Google, bringing you the libraries you use to write your Android apps.
This Special episode is dedicated to the 5 years anniversary of the Talking Kotlin podcast! Hadi Hariri and Sebastian Aigner discuss how and why the podcast was started, remember funny moments from the past and try to shed some light on what awaits it in the future.
In this episode we chat with Zac Sweers about all that has happened since his last appearance:
Multiplatform experiments
Kotlin usage in Slack
Thoughts about Compose
Weather in Munich, Malaga, and New York
Zac on Twitter - https://twitter.com/ZacSweers
Zac's website - https://www.zacsweers.dev/
In this episode Hadi and Seb are talking to Margarita Nedzelska from SonarSource about how she and her team built a working static analyzer for Kotlin.
Victor Kropp tells us the story of moving JetBrains Toolbox from C++ to 100% Kotlin. Victor (https://twitter.com/kropp) leads the Toolbox team at JetBrains, a small app that is the single entry point for developing with JetBrains IDEs, which you can download at https://www.jetbrains.com/toolbox-app/. It allows you to automatically download and update your IDEs, and open all your projects with a single click.
Victor shares the story of how toolbox came to be – from its humble beginnings as an internal Hackathon project back in 2015, to an app serving 1 million monthly active users. Together, we dive into the tech stack of Toolbox and its evolution. We learn about the initial tech stack: C++ for the business logic and JavaScript and React for the user interface. Victor shares the challenges and benefits of using this stack – from hiring to UI visuals.
We learn why Toolbox took the big step of migrating from C++ to Kotlin, from the ability to reuse code in the IntelliJ platform to developer ergonomics. Victor takes us through the multi-step process of how they arrived at a pure-Kotlin solution. The first step we talk about is the migration of the Toolbox business logic to Kotlin using Regex wizardry and reimplementing methods with the help of Kotlin’s auto-converter.
Victor then sheds some light on replacing the embedded web user interface with Compose for Desktop (https://www.jetbrains.com/lp/compose/), and the benefits Toolbox gained from it: reducing the load of having to serialize a lot of objects, being able to use the same language when implementing a full feature front to back, library reuse, and better performance. We learn that this transition only took 6 months, while still being able to ship new features to Toolbox at the same time, and why the team chose Kotlin on the JVM instead of Kotlin/Native.
With React and Compose for Desktop both being modern declarative UI frameworks, Victor also talks more about how concepts and vocabulary transfers between the two (https://tigeroakes.com/posts/react-to...), lowering the barrier of entry for people who want to build native user interfaces and already have web development experience. We also learn more about how Toolbox moved design primitives and UI components from the CSS to the Compose layout system, among other topics.
Seb also compliments Hadi on the Ktor 2.0 presentation (https://www.youtube.com/watch?v=mye9N...) from the Kotlin 2021 Premier Online Event (https://pages.jetbrains.com/kotlin-pr...).
We sit down with Marina Shishkina, team lead for the Release and Automation Team in Kotlin. Her team coordinates the whole release procedure for new versions of the Kotlin programming language. Marina shares her story of how she moved from being a Quality Assurance Engineer to leading the Release Team, working on increasing the quality of Kotlin releases.
In this episode we talk to Nat Pryce and Duncan McGregor about the new "Java to Kotlin: A Refactoring Guidebook" and their experience of helping companies and independent developers to migrate to Kotlin.
We talked to Ole Sasse and Gregor Zeitlinger, Senior Engineers at Zalando and leaders of their “Kotlin Guild”, about the weather in Spain and Germany, but more importantly, about how Zalando has successfully introduced Kotlin on the server-side.
Ole and Gregor talk about the way that Kotlin engineers organize themselves inside Zalando, using their “Guild” model which allows engineers across different teams to share knowledge with each other and learn about new and more complex topics and libraries together.
In addition to Android and frontend, Zalando’s logistics department uses Kotlin to build server-side microservices. We learned about the frameworks their engineers use, including Spring and Ktor, and how Kotlin was first introduced at Zalando and integrated seamlessly with their pre-existing custom libraries, earning an “Adopt” spot in Zalando’s Tech Radar (https://opensource.zalando.com/tech-radar/).
Together, we also tackled one of the classic questions about Kotlin: how do you get people on board? Gregor shared his insights on the topic, and how to get people to have their first “a-ha” moment with Kotlin, and Ole chimed in with more information on convincing Scala versus Java developers. We also learned why most teams using Kotlin for the backend prefer to write their whole services in Kotlin code, and saw the contrast with Zalando’s mobile application development, among many other topics.
Explore more about Kotlin and Zalando:
Zally, A minimalistic, simple-to-use API linter from Zalando: https://github.com/zalando/zally
“How we use Kotlin for backend services at Zalando”: https://engineering.zalando.com/posts/2021/07/kotlin-for-backend-services.html
Do Kotlin at Zalando: https://jobs.zalando.com/en/jobs/?search=kotlin
Zalando Engineering: https://engineering.zalando.com/
Together with the Kotlin community, we have prepared a special episode of the Talking Kotlin podcast!
It is dedicated to Kotlin's 10th anniversary and features 6 guests talking about their journeys with the language.
Check it out!
In this episode, we’ll sit down with Ksenia Shneyveys, the Kotlin Manager for Education and University Relations at JetBrains, and talk to her about the current state and future of Kotlin in academia. Kseniya will tell us about the recent increase in institutions and educators teaching Kotlin, including adoption by Stanford, Cambridge, Imperial College London, University of Chicago, and many other prestigious institutions.
Matt Anger, Senior Staff Engineer at DoorDash, walks us through how they have embraced Kotlin on Android, their server-side backend services, migrating away from their previous monolithic implementation, and going all in with Kotlin as DoorDash’s language of choice.
Learn more about how DoorDash uses Kotlin: https://blog.jetbrains.com/kotlin/2020/12/doordash-building-scalable-backend-services-with-kotlin/
Read the story of DoorDash’s migration from Python to Kotlin for their backend: https://doordash.engineering/2021/05/04/migrating-from-python-to-kotlin-for-our-backend-
services/
Using Structured Concurrency to Write Maintainable gRPC Endpoints in Kotlin - https://doordash.engineering/2022/07/26/functional-core-imperative-shell-using-structured-concurrency-to-write-maintainable-grpc-endpoints-in-kotlin/
In this episode, we talk to Ivan Sanchez and David Denton, the co-creators of the http4k framework, which provides a simple and uniform way to serve, consume, and test HTTP services with Kotlin using a functional programming approach.
In this episode we talk to Jeffrey Van Gogh and Mads Ager from Google about the Kotlin compiler, covering everything from its basic structure and the infrastructure for building Android apps to new symbol processing approaches with KSP.
In this episode, We talk to Rahul Pandey an Android engineer at Facebook and a lecturer at Stanford about the specifics of his approach to teaching Kotlin for Android development at Stanford.
Arkadii Ivanov, Android Engineer at Bumble Engineering and Google Developer Expert for Kotlin takes us on a journey through his open-source projects MVIKotlin and Decompose. Find out about the Model-View-Intent architecture pattern, learn how Decompose helps write better declarative multiplatform user interfaces with Kotlin, and discover that time travel is possible – at least for debugging.
In this episode, guest John O'Reilly shares his multiplatform development journey. John takes us back to his roots, discusses his experiences with developing for multiple platforms, explains how Kotlin Multiplatform helps with productivity, and shares his open source projects.
In this episode, we talk to the new Kotlin Project Lead, Roman Elizarov, who tells us all about the Kotlin team, their areas of focus, and their plans for the future.
We chat with Vitaly about JAI Conversational Framework - a tool that allows you to build a conversational interface to your application without the need to use any of the big players on the market. We dicuss the benefits to the approach and why they chose Kotlin.
We sit down to talk to Nikolay Igotti, who's now leading the efforts of Compose for Desktop at JetBrains. We talk about why the need for a new UI framework for Desktop, how Compose for Desktop works, and what's planned for the future.
We chat with Sergey and Max about their use of Kotlin in Space. We cover the frameworks that they use, some of which were born out of Space. We discuss their adoption of Multiplatform before Kotlin Multiplatform even existed, as well as why they chose Kotlin and the benefits it provides them, along with the main issues they encounter.
We chat with the folks working on the Apollo library for GraphQL. We discuss what GraphQL is, where Apollo fits in to the equation, and why they decided to provide multiplatform support using Kotlin.
We chat with Breandan about Differentials and Derivatives, and Maths in general. We look at where and how they can be applied to programming, as well as the Kotlingrad
Fritz2 is a Kotlin framework for developing front-end web applications. Written entirely in Kotlin and targeting JavaScript, Fritz2 takes a reactive approach to development. In this episode we sit down with the authors to learn more about the framework.
We sit down with the Kotlin Advocates at JetBrains to discuss life of a Kotlin advocate, the Kotlin 1.4 release, as well as the online Kotlin 1.4 event happening in October.
We chat with Vladimir about Compose from a user perspective. We go through the history of UI solutions that have been available for Android, and see how and where Compose fits in. We also briefly talk about Flow and how it can make a great companion to Compose.
We sit down with Josh Long to talk about life, the current world situation, and of course Spring and Kotlin. We discuss the adoption of Kotlin over the years, what the Spring team is doing to support Kotlin, and many other things.
We sit down with Erik to discuss gradient descents and how understanding this can lead to demystifying machine learning. We talk about the value of knowing how things work under the covers, as well as maths, functional programming, and many other topics, including why he chose Kotlin, and what he likes and dislikes of the language.
We sit down with the folks from the team at AWS that work on QLDB, to discuss what Amazon Quantum Ledger Database (QLDB) is, their usage of Kotlin, why they choose Kotlin over Java for this new project, and how their overall experience has been.
We chat with Roman Belov about the work he's doing at JetBrains with Kotlin for Data Science. We discuss the approach they're taking to work with the existing ecosystem as opposed to try and replicate it. How this is different from some of the other efforts under way and the direction in which they're moving when it comes to Data Science with Kotlin on multiple platforms.
Jetpack Compose is the new UI toolkit from Google that is Kotlin First. It takes advantage of Kotlin's Compiler Plugin Architecture to provide a performant UI layer for Android development (albeit extensible to other platforms). We sit down with lead of the project to discuss what it is and plans around it.
We sit down with Michael Pardo to discuss the MVU pattern, taking a brief look at all the other patterns that have existed for UI development over the years. We then talk about Oolong, a library for Kotlin for facilitating MVU in your applications.
We chat with Gaëtan about their work on data visualization using Kotlin. As one of the first pioneers of not only using Kotlin, but also targeting multiple platforms before Kotlin/Multiplatform even existed, Gaëtan talk about why and how they decided to first target JavaScript and JavaFX with their products.
We sit down with Jesse and Egor from Square to discuss how they decided to port OKio and OKHttp completely to Kotlin Multiplatform back when Kotlin wasn't even officially supported by Google. We discuss their ventures, reactions from the community, as well as some other things they're using Kotlin for on the backend.
We sit down with JetBrains Developer Advocate Sebastian Aigner, and discuss Kotlin/JS. We cover the new features, the efforts being taken to lower the entry bar to Kotlin/JS, et al.
In this special episode recorded for International Women's Day, we're joined with our good friends and colleague Svetlana Isakova, Florina Muntenescu, Huyen Tue Dao, and Christina Lee to discuss amongst other things what idiomatic Kotlin is, the importance of style guides, comprehensible code, and many other things!
Sebastian has been an advocate for Kotlin at his company and they jumped on board with multiplatform. Hear their story of what path they took to accomplish this and their challenges.
We chat with Vladislav about Kotless, a Kotlin Serverless Framework, which eliminates the need for a deployment DSL (like Terraform, SAM, CloudFormation or CDK) and makes serverless computations easily understandable for anyone familiar with event-based architectures.
We catch up with Ken on what he's been doing lately and discuss his new book around Kotlin recipes, called Kotlin Cookbook. We also discuss where one should draw the line when teaching concepts and how often to dive into the details. We also briefly touch up on his new book!
We chat with the folks from ISEL about their gradual adoption of Kotlin, starting from Android to now having a course on teaching programming with Kotlin.
We chat with Joe about the work he's done in his spare time to create an accessible guitar, to teach those that are challenged. A very inspiring tale of working to make things better for others in this world.
We chat about Graphics Programming on Android and how and where Kotlin can help, availability of Kotlin libraries and where and if code sharing could help with graphics programming when targeting multiple platforms.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We sit down to talk to Josh about coroutines, its usage in Android, the differences with RxJava and whether we can combine both technologies.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
In this episode we chat to Ana Redmond about her adoption of Kotlin/Native for multi-platform development very close to the time it was announced. She went fully onboard with the technology and managed to develop and release a successful educational game. Very inspiring story of someone that went from not knowing Kotlin or Swift, to release a product in a short span of time.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We sit down with Annyce to discuss the use of Kotlin features and whether or not we're often abusing these in detriment of creating maintainable code. We chat about code review practices, design principles and even the DLR principle! We even talk about Googling.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We sit down with Florina from Google to talk about everything Kotlin, from Android and what it means to be Kotlin First, to the series of Kotlin/Everywhere events that JetBrains and Google have collaborated on, and even touching on code reviews.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We chat with the folks from Flux around their use of Kotlin on the backend, to develop a service that replaces paper receipts. We talk about the technology they're using (Dropwizard), any challenges faced, both from a technical perspective as well as a business on in adopting Kotlin as a start-up company.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We chat to David about sequences in Kotlin - what they are, how and when to use them, and the performance implications that they have over regular collections.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We sit down with Edwin from OpenRNDR to discuss creative graphical programming and the engine that has been developed for this purpose using Kotlin. We discuss its usages and why it was developed using Kotlin.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We chat with Kevin about writing compiler plugins for Kotlin, covering what the goals with plugin technology is, when it's useful, as well as how to get started in this area.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
Mark decided to develop a multiplatform game, taking the concept of common code to the extreme. In this episode we discuss his adventures, the issues he encountered and how applicable this really would be in other types of applications such as LOB ones.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We chat with Pamela Hill about code kindness, in which we discuss what constitutes comprehensible code and the things we need to be aware of when writing code. We discuss the challenges of different approaches to writing code, objectivity, code reviews, and a bunch of other things!
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We chat with Alec Strong about SQL Delight, the multiplatform data access library that have written from the ground up using Kotlin. We discuss some of the differences with other data access frameworks as well as the benefits that Kotlin has provided them.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We talk to a few folks at Uber Engineering about their adoption of Kotlin in a non-conventional setting where they're using Buck. We also discuss some of the work they've been doing in terms of performance analysis with Kotlin and the differences with Java. This work has been published and available for public access (see show notes). Note: first couple of minutes had some feedback issues which were resolved.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We talk to Ryan about Ktor, the asynchronous framework for connected systems, developed and maintained by JetBrains. We talk about how it can be used for developing server side applications and its differences with some other existing ones.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
Christina and I sit down to talk about submitting talks to conferences, and in particular about KotlinConf. That and some chat about cats and dogs!
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We catch up with Thomas Nield to discuss what's been going with Kotlin in relation to Data Science and Machine Learning. Thomas gives us an update on the work he's been focusing on and some of the new things happening.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We chat with Shelby from Intuit about adoption of Kotlin on the server-side, combined with functional programming. Shelby talks about some of the challenges faced and how they learn and pace their adoption.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We talk to Salomon about his Kodein framework which started as a simple dependency injection framework for Kotlin and now has evolved into a multi-platform framework which provides many features including database, logging, etc.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We catch up wth Roman to discuss the state of libraries in Kotlin, the release of coroutines, changes that were brought with it, as well as other activities Roman and team are working on to bring multi-platform libraries to Kotlin.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We chat with Kevin about multi-platform development with Kotlin. Amongst many things, we discuss its differences with alternative technologies, the state of tooling and libraries, as well as factors people should consider when adopting OSS technologies.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We sit down with Gabriel to discuss the move of AirBnB away from React Native and the adoption of Kotlin. We also discuss the potential of multi-platform projects with Kotlin and what he sees are potential benefits and problems to avoid.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.
We chat with Arnaud about Koin, a new dependency injection framework written from the ground up in Kotlin. We discuss the why, the how and whether in this day and age it makes sense to even have dependency injections frameworks. Spoiler...it does.
For links to show notes, please visit talkingkotlin.com or download the App from the Android Store.