Moving 1M users to Kotlin & Compose: JB Toolbox
Talking Kotlin28 Marras 2021

Moving 1M users to Kotlin & Compose: JB Toolbox

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...).

Tämä jakso on lisätty Podme-palveluun avoimen RSS-syötteen kautta eikä se ole Podmen omaa tuotantoa. Siksi jakso saattaa sisältää mainontaa.

Jaksot(147)

Six Years, Zero Regrets: Sony’s KMP Success Story

Six Years, Zero Regrets: Sony’s KMP Success Story

Watch the Talk Here: https://youtu.be/VVf6txPZk3YIn this KotlinConfersations'26 episode, Sony engineer Sergio Carrilho shares how his team used Kotlin Multiplatform to build and evolve the Sony Sound ...

11 Elo 14min

Jake Wharton | KotlinConfersations'26

Jake Wharton | KotlinConfersations'26

In this KotlinConf'26 interview, Huyen sat down with Jake Wharton to talk about the past, present, and future of Kotlin and software development. And, of course, a bit about AI.https://jakewharton.com

4 Elo 29min

Exposed 1.0 and Beyond

Exposed 1.0 and Beyond

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 rel...

29 Huhti 1h 35min

How Major Metros Run on KMP

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 Ja...

5 Maalis 1h 39min

Kotlin 2.3 Release Special (Audio Exclusive)

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 va...

3 Helmi 49min

Building AI Agents With Koog

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 g...

17 Marras 20251h 22min

Discussing Kotlin Coroutines with Marcin Moskała

Discussing Kotlin Coroutines with Marcin Moskała

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 ...

23 Loka 20252h 3min

kotlinx.rpc

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 def...

11 Elo 20251h 30min