Logo
    Search

    Android Developers Backstage

    Android Backstage, a podcast by and for Android developers. Hosted by developers from the Android engineering team, this show covers topics of interest to Android programmers, with in-depth discussions and interviews with engineers on the Android team at Google. Subscribe to Android Developers YouTube → https://goo.gle/AndroidDevs
    enAndroid Developers204 Episodes

    Episodes (204)

    Episode 164: Jetpack Compose Compilation

    Episode 164: Jetpack Compose Compilation

    This episode is the first in the new mini-series “ADBC” on Jetpack Compose, hosted by Nick Butcher, in which we will dive deep into different topics in Android’s future UI toolkit.

    This time, Nick and Chet talked with Adam Powell and Leland Richardson about the Compose compiler, the runtime, data flow, and that nifty feature where Compose knows when to call your Composable based on changes in data state.

     

    Also check out:

    Thinking in Compose

    Compose State Guide

    Compose State Codelab

    Lifecycle of composables

    Side-effects in Compose

    Compose Learning Pathway

     

    Adam: @adamwp

    Leland: @intelligibabble

    Nick: @crafty

    Chet: @chethaase

    Romain: @romainguy

    Tor: @tornorbye

    Episode 163: Novel Graphics

    Episode 163: Novel Graphics

    In this episode, we talk with Nat Duca and Sumir Kataria from the Android graphics team about the graphics stack -- covering shaders, GPUs, Vulkan, OpenGL, ANGLE, drivers, blur, pixels and of course Chet's favorite topic; colors. 

    Hosts Tor, Chet and Romain on the top row and guests Nat and Sumir on the bottom row

     

    If you're ever wanted to know how to pronounce "hwui", tune in!

     

    Sumir: @SumirKodes

    Nat: Link

    Chet: @chethaase

    Romain: @romainguy

    Tor: @tornorbye

    Episode 162: Kotlin Symbol Processing

    Episode 162: Kotlin Symbol Processing

    Cowardly abandoned by Chet and Romain, Tor faces three guests alone. Jeffrey van Gogh, Ting-Yuan Huang, and Yigit Boyar join Tor to talk about Kotlin Symbol Processing (KSP), a new, faster, and better tool to replace annotation processors. You will learn how KSP works, what it can do, why it was created, and how it is used in the Room Jetpack library.

    Tor, Ting-Yuan, Jeffrey, and Yigit, all looking amazingly happy to discuss annotation and symbol processing

     

    KSP announcement

    KSP GitHub project

    How to get started with KSP

    Libraries with KSP support

    Jetpack Room

     

    Jeffrey: @jvgogh

    Yigit: @yigitboyar

    Tor: @tornorbye

    Episode 161: DataStories

    Episode 161: DataStories

    This time, Tor, Chet, and Romain talked with Rohit Sathyanarayana and Florina Muntenescu about the DataStore library. DataStore is the replacement for SharedPreferences, being better for many reasons (it's asynchronous and avoids blocking the UI thread, it is type-safe). It not only has a similar/simple key-value pair API like SharedPreferences, but also has more powerful API as well. It's currently in alpha, but look for it to be the recommended approach soon as it approaches stable.

    Florina, Romain, Chet, Daniel (ADB
    audio producer, in person!), Tor, and Rohi

    Article: Using DataStore in Kotlin Serialization
    Docs: Docs
    Codelab: Preferences Datastore codelab
    Codelab: Proto Datastore codelab

    Florina: @FMuntenescu
    Rohit: @rohitsat123
    Chet: @chethaase
    Romain: @romainguy
    Tor: @tornorbye

    Episode 160: ART History

    Episode 160: ART History

    In this episode, Romain, Chet and Tor sit down with Brian Carlstrom and Nicolas Geoffray to discuss their work on ART (the Android Runtime). Brian and Nicolas describe the early prototypes and bringup of ART, getting it production ready, as well as recent developments such as cloud profiles.

    Chet, Brian and Romain on the top row, and Tor and Nicolas below

    Brian: https://carlstrom.com
    Chet: @chethaase
    Romain: @romainguy
    Tor: @tornorbye

    Episode 159: Interview with Chris Lacy

    Episode 159: Interview with Chris Lacy

    Chet and Romain host Chris Lacy, a long time independent Android developer. In this episode, Chris explains how he decides what apps to build, how he used various platform APIs to create innovative applications like LinkBubble, and what challenges he faces.

    Top row: Chet, Chris Bottom row: RomainChet, Chris and Romain

    Chris's apps include:
    SwirlWalls, a live wallpaper
    ActionLauncher, a replacement launcher

    By the way, Chris is looking to hire an Android developer. If interested, you can reach him at youshouldhireme@actionlauncher.com.

    Chris: @chrismlacy
    Chet: @chethaase
    Romain: @romainguy
    Tor: @tornorbye

    Episode 158: Jetpack Compose... C'est bêta !

    Episode 158: Jetpack Compose... C'est bêta !

    Chet, Nick, Clara, Leland, Tor, Adam, and Romain.
    So many guests!
    This time, Tor, Romain, and Chet chatted with a few people on the Jetpack Compose team, about... Jetpack Compose!

    Compose hit Beta a couple of weeks ago (don't believe me? Check out the recent Android show on Compose Show!), so we took the opportunity to talk to some of the people that have helped build it. We talk about the current state of the library, but also about some of the design decisions that went into developing the APIs and functionality.

    (Note on the audio quality for this episode - it turns out that mixing so many people, all of whom recorded themselves separately using very different hardware and setups was... tricky. It's listenable, but maybe a tad below the level we shoot for. Blame the pandemic. I do.)

    Subscribe to the podcast feed or download the audio file directly.


    The Jetpack Compose site (overview, tutorial, docs, samples, and more)

    Chet@chethaase
    Romain@romainguy
    Tor@tornorbye
    Nick: @crafty
    Clara@clarabayarri
    Adam@adamwp

    Thanks to our audio engineer, Dustin Elm, who has handled all of our audio mixing
    for the last couple of years, including the tricky part of mixing all of our remote-
    recorded episodes, like this one.
    Dustin's moving on to (greener? softer? louder?) pastures, so we'll be using
    a new, exciting process for mixing future episodes. Thanks, Dustin!

    Episode 157: Audio feedback

    Episode 157: Audio feedback
    What does a podcast look like? We don't know,
    so here's a picture of the podcast's website
    We want to hear from you! In this episode,
    Tor, Romain, and Chet talk about what they could do — or not do —to improve Android Developers Backstage.

    Please check our survey and let us know how you would like to see this podcast evolve. We recommend you first listen to the podcast to get the full context for some of the questions in the survey.

    Subscribe to the podcast feed or download the audio file directly.

    Chet@chethaase
    Romain@romainguy
    Tor@tornorbye



    Thanks to continued tolerance and support by our audio engineer, Dustin Elm.

    Episode 156: Android Runtime Classic (Dalvik)

    Episode 156: Android Runtime Classic (Dalvik)

    It's history time! Or even [pre-]ART History time!
    We didn't take a picture this time.
    Please imagine what we looked like.

    This time, Tor, Romain, and Chet were joined by Dan Bornstein, one of the early members of the Android team. Dan joined in 2005 to create a runtime for Android, which became Dalvik.

    We talked about some of the early placeholder VMs used while Dalvik was coming online, some of the design decisions for Dalvik (like its register-based vs. stack-based implementation), and nice techy details about runtimes, garbage collectors, and optimizations.

    Subscribe to the podcast feed or download the audio file directly.


    Chet@chethaase
    Romain@romainguy
    Tor@tornorbye
    Dan: @danfuzz


    Thanks to continued tolerance and support by our audio engineer, Dustin Elm.

    Episode 155: WindowManagerManagers

    Episode 155: WindowManagerManagers


    Top row: Chet, Romain, Rob.
    Bottom row: Wale, Tor.
    In this episode, we chat with Wale Ogunwale and Rob Carr from the Android Framework team about the Window Manager.

    Tune in to learn about the evolution of the window manager, the distinction between System UI and the window manager, implementation challenges and recent architectural changes.

    Subscribe to the podcast feed or download the audio
    file
     directly.


    Chet@chethaase
    Romain@romainguy
    Tor@tornorbye

    Thanks to continued tolerance and support by our audio engineer, Dustin Elm.

    Episode 154: It's a Wrap!

    Episode 154: It's a Wrap!
    This episode is dedicated to the memory of our dear friend and colleague, Carl Quinn.

    Our last episode of the year arrives just in time for the holiday season. In this episode, Tor, Chet, and Romain go over everything that happened in 2020, both good and bad. We look back at how conferences have been impacted by the pandemic, why Android Studio changed its versioning scheme, the new tools and libraries that were released, etc.

    We would like to thank all of our listeners for their continued support. We'll be back in early 2021 with more episodes and new guests!

    Subscribe to the podcast feed or download the audio
    file
     directly.


    Chet@chethaase
    Romain@romainguy
    Tor@tornorbye


    Thanks to continued tolerance and support by our audio engineer, Dustin Elm.

    Episode 153: Ok, Ok, Ok

    Episode 153: Ok, Ok, Ok
    Romain, Tor, and Chet talked with Jesse Wilson from Square. Jesse has worked on several popular open-source libraries, including OkHttp, Okio, and [Ok]Moshi. We talk about those libraries, and others, and about Android, library, framework and Kotlin development. And about that nasty habit some engineers have of turning a feature request or minor annoyance into a project of creating a new open-source library instead.

    Favorite quote, from Jesse:
    "I started with 2k. Someone told me 8k was faster."


    Subscribe to the podcast feed or download the audio file directly.


    Links:
    Chet@chethaase
    Romain@romainguy
    Tor@tornorbye


    Thanks to continued tolerance and support by our audio engineer, Dustin Elm.

    Episode 152: Image Loading with Coil

    Episode 152: Image Loading with Coil
    Chet, Colin, Romain, and Tor
    This week, Tor, Romain and Chet are joined by a special guest: Colin White from Instacart.

    Colin is the author of Coil, a popular image loading library backed by Kotlin and Kotlin Coroutines. In this episode, Colin explains what Coil is, how and why it was created, etc.



    Subscribe to the podcast feed or download the audio file directly.


    Links:


    Colin: @colinwhi
    Chet@chethaase
    Romain@romainguy
    Tor@tornorbye


    Thanks to continued tolerance and support by our audio engineer, Dustin Elm.

    Episode 151: Paging3

    Episode 151: Paging3
    Chet, Dustin, Chris, and Romain.
    (Tor not pictured. Because he wasn't there)
    Romain and Chet talked with Dustin Lam and Chris Craik from the Toolkit team about Paging3.

    Paging3 (currently in alpha) is a complete rewrite of (wait for it...) Paging2, using Kotlin, coroutines, and Flow for optimal implementation and APIs. (But note that there are also APIs for developers using the Java programming language and/or RxJava, so take your pick). We talk about Paging, the asynchronous work that made coroutines an obvious choice for the implementation, recent and future features, and API design in general.


    Subscribe to the podcast feed or download the audio file directly.


    Links:


    Chris: @chris_craik
    Chet@chethaase
    Romain@romainguy
    Tor@tornorbye


    Thanks to continued tolerance and support by our audio engineer, Dustin Elm.

    Episode 150: Aaptly Named

    Episode 150: Aaptly Named
    Top row: Tor and Romain
    Bottom row: Ryan and Chet
    In this episode, Chet, Romain and Tor talk with Ryan Mitchell from the Android Framework Team.

    We cover the Android resources in general and the aapt2 tool in particular.

    Subscribe to the podcast feed or download the audio file directly.

    Chet@chethaase
    Romain@romainguy
    Tor@tornorbye


    Thanks to continued tolerance and support by our audio engineer, Dustin Elm.

    Episode 149: ADB over WiFi on ADB

    Episode 149: ADB over WiFi on ADB
    Top row: Chet, Joshua and Romain.
    Bottom row: Renaud and Tor
    In this episode, Chet, Romain and Tor talk with Renaud Paquay and Joshua Duong from the Android Studio and Android Emulator teams.

    We cover the new ADB over WiFi feature in Android 11, and the Android Studio support for pairing and connecting.

    Subscribe to the podcast feed or download the audio file directly.

    Links

    Renaud/u/adt_renaud
    Joshua/u/joshuaduong
    Chet@chethaase
    Romain@romainguy
    Tor@tornorbye


    Thanks to continued tolerance and support by our audio engineer, Dustin Elm.

    ADB 148: [Constraint|Motion][Layout|Editor]

    ADB 148: [Constraint|Motion][Layout|Editor]

    Sean McQuillan and I talked with Nicolas Roard and John Hoford about MotionEditor, which went stable recently in Android Studio 4.0. But as long as we were talking about that tool, we also talked extensively about MotionLayout in general as well as ConstraintLayout, new features like Flow, the difficulties of animating text properties, and  more.

    Subscribe to the podcast feed or download the audio file directly.

    Links

    MotionTags screencast series

    Nicolas: @camaelon
    Chet@chethaase
    Tor@tornorbye
    Romain@romainguy


    Thanks to continued tolerance and support by our audio engineer, Dustin Elm.

    Episode 147: Jetpack Compose Alpha

    Episode 147: Jetpack Compose Alpha
    The real star of the show: Jetpack Compose
    This week, after a long series of developer previews, we are celebrating the release of Jetpack Compose alpha. In this episode, Clara Bayarri, Matvei Malkov, and Anna-Chiara Bellini are joining Chet and Romain to talk about this milestone. You will learn more about what does the alpha mean to the team, where did Compose come from, how the team approaches API design, some of the challenges behind building a new UI toolkit, and much more.

    Subscribe to the podcast feed or download the audio file directly.

    Links


    Chet@chethaase
    Tor@tornorbye
    Romain@romainguy


    Thanks to continued tolerance and support by our audio engineer, Dustin Elm.

    Episode 146: The Game Changer

    Episode 146: The Game Changer
    Dan (played by an icon), Greg, and
    a tiny Romain in the upper right
    This time, Romain was hosting all on his own for this conversation about game technology with Greg Hartrell, product manager for games on Play/Android, and Dan Galpin, developer advocate for games on Android. They talked about recent developments and offerings for game developers, including the Android development plugin for Visual Studio, other specialized tools for game developers, and new offerings from the team like Android Asset Delivery and Android App Bundle for distribution.

    Subscribe to the podcast feed or download the audio file directly.

    Links


    Greg: @ghartrell
    Dan: @dagalpin
    Chet@chethaase
    Tor@tornorbye
    Romain@romainguy


    Thanks to continued tolerance and support by our audio engineer, Dustin Elm.

    Episode 145: Grab that Dagger by the Hilt

    Episode 145: Grab that Dagger by the Hilt
    Eric, Dany, and Romain. Chet not represented to hide the
    confused look he had on his face during the entire recording.
    We're injecting dependencies! In this episode, Chet and Romain are joined by Daniel Santiago from Jetpack, and Eric Chang from Dagger to talk about Hilt. Hilt builds on Dagger for form Android's new recommended way to perform dependency injection. And it's also a great opportunity for Chet and Romain to display their lack of knowledge in that space.

    Subscribe to the podcast feed or download the audio file directly.

    Links

    Dagger.dev
    Hilt on dagger.dev
    Introduction to Hilt by Dany
    Dependency injection on Android

    Chet@chethaase
    Tor@tornorbye
    Romain@romainguy


    Thanks to continued tolerance and support by our audio engineer, Dustin Elm.