droidcon New York 2022
2022-09-01..2022-09-02
New York City, United States
[droidcon New York 2022, droidcon New York 2023, droidcon New York 2024, droidcon New York 2025]
| title | author | length |
|---|---|---|
| Memory Leaks & Performance Considerations: A Cookbook | Amanda Hinchman-Dominguez | 28m |
Practical checklist of fixes that deliver measurable wins: remove static UI references to avoid leaking whole activity view trees, nullify fragment view… | ||
| Jetpack Compose and SwiftUI: A side-by-side comparison | Jamal Rogers, David Morant | 26m |
Side-by-side code shows a Succession-themed profile row built twice: circular avatar plus two stacked texts, then an editable bio that actually works in both… | ||
| Exploring Dynamic Feature Modules | Alec Strong | 42m |
Dynamic Feature Modules require an AAB and a version catalog, and enable splitting an app into multiple APKs; Cash App experiments with turn entire app into a… | ||
| A Journey to Building a Server Driven UI Framework | Thomas Wolf, Stuart Horner | 27m |
SiriusXM and Pandora build a server-driven UI to unify duplicated stacks and serve 150 million listeners across mobile, TV and embedded automotive head units… | ||
| The Evolution of Android Graphics | Dan Galpin | 40m |
Covers concrete migration steps: RenderScript is deprecated and recommended workflow uses RenderScript Intrinsics Replacement Toolkit (open‑source NDK) for… | ||
| A Hitchhiker's Guide to Compose Compiler: Composers, Compiler Plugins, and Snapshots | Jossi Wolf, Amanda Hinchman-Dominguez | 29m |
Explains how Jetpack Compose injects a compiler plugin that transforms Kotlin into augmented IR to generate restartable, movable, and replaceable groups, how… | ||
| How we brought down our build times. Modularization impact on build speeds and metrics | Manuel Nakamurakare | 35m |
Pinterest modularization increases parallel compilation but P95 builds jump from ~9m to 14m due to thermal throttling and unnecessary recompiles; experiments… | ||
| AOSP customization | Effie Barak | 35m |
AOSP builds from more than 1,000 git repos, >100 GB of source that can grow to ~250 GB compiled, and can be developed with Android Studio by using the emulator… | ||
| Keeping your team’s Gradle builds in top shape | Nelson Osacky, Inaki Villar | 36m |
Automated build validation scripts run five reproducible experiments (up-to-date, local cache, relocatability, CI→CI, CI→local), produce paired build scans and… | ||
| Mobile Developer Productivity at Scale | Ty Smith | 48m |
Uber runs a mobile mono repo with over 10 million lines of code, ~600 mobile engineers, and tens of thousands of modules, and reports developers commonly… | ||
| Building StateFlows in Android with Jetpack Compose | Mohit Sarveiya | 38m |
Molecule turns the Compose runtime into a way to expose presenter logic as StateFlows by running a composable presenter inside a recomposer and emitting its… | ||
| Behind The Screen: The Humans Who Use Our Code | Matt McKenna, Adam McNeilly | 24m |
Android runs on cars, gym equipment, kiosks and phones and categorizes into consumer apps, commercial tools, internal solutions and hidden Android that users… | ||
| Composing With Confidence | Adam McNeilly | 29m |
Shows how to test Jetpack Compose UIs using the Compose testing APIs: use createComposeRule or createAndroidComposeRule to render content, find nodes with… | ||
| Leverage Compose Tooling to Improve Your Workflow | Ramona Harrison | 27m |
A demo Wordle‑style app called word tool shows using Android Studio Compose tooling to speed UI work: Compose Preview with multi‑preview annotations and… | ||
| Android App Bundle: from start to deployment | Julien Salvi | 39m |
Migrating to Android App Bundle requires changing Gradle to produce an .aab (run bundle release), enabling Play App Signing, and updating CI (Fastlane/GitLab… | ||
| Building Multi-Platform Projects with MVI Architecture | Etienne Caron | 35m |
Claims that Kotlin Multiplatform plus an MVI model lets one share most business logic across Android, iOS and web, implemented here as a habit‑tracker with an… | ||
| Making apps blazing fast with Baseline Profiles | Rahul Ravikumar | 34m |
Baseline Profiles claim an easy 30–40% cold-start win and often deliver it in an afternoon by shipping a compact profile (authoritative examples: Maps sees… | ||
| Understanding the principles of Rx, Flow, Compose, and more, through Programming Paradigms | Victor Lai | 32m |
Argues that RxJava, Kotlin Flow and Compose share core ideas but differ by paradigm, builds from silicon to machine code to show a declarativeness gradient and… | ||
| An Opinionated, Gradle-Based Approach to Automated Version Management | Cullen Shannon | 38m |
Automates Android versioning by generating versionCode from git commit count (git rev-list --count) and deriving versionName from branch/tags so hotfixes and… | ||
| Creative Coding with Compose | Tasha Ramesh | 36m |
Shows how Jetpack Compose renders animated generative art by building a grid in UV space and converting to XY with lerp/norm/map, then animates it using a… | ||
| Overview of UI testing in Compose | Michael Bailey | 34m |
Shows how to test Jetpack Compose UIs end-to-end using the ui-test-junit4 and the debug-only ui-test-manifest AAR, creating a ComposeTestRule (or… | ||
| What does Recomposition mean to your app? | Aida Issayeva | 49m |
Explains exactly how recomposition runs: the slot table, composer and change list record diffs, the state snapshot system wakes a recomposer, and an applier… | ||
| Beyond the Basics: Performance Monitoring and User Experience for Mobile App Growth | Moataz Soliman | 18m |
Instabug monitors 25,000+ apps with bug, crash and performance modules and demonstrates concrete thresholds: Android Vitals flags cold launches over 5 s, warm… | ||
| Advanced techniques for building Kotlin DSL(s) | Pavlo Stavytskyi | 31m |
Shows how to implement a Kotlin DSL that generates Starlark (Bazel) code by building an AST of typed nodes and emitting formatted files, used in Project Iron… | ||
| Optimize your app for large screens | Paul Lammertsma, Ran Nachmany | 38m |
Android reports ~270M large‑screen devices now and ~400M expected in 2023, and apps that adapt see real lifts: Chrome shows 18× multi-instance usage and Photos… | ||
| Mobile Application Performance Done The Right Way | Steve Lerner | 28m |
Claims that combining tracing and APM finally brings server-grade observability to mobile and shows concrete fixes: a visual trace tool (demoed via… | ||
| Creating & Scaling Meaningful Performance Tests in CI | Ryan Brooks | 39m |
Focus on macro user flows you can control, reproduce, and impact — e.g., a ~4s app startup broken into traced spans — and avoid unmocked network or… | ||
| Optimizing Render Performance of Jetpack Compose | Will Shelor | 36m |
Measured render times show 1400 ms vs 345 ms (Compose vs XML) on low-end phones; switching to release with R8 cuts Compose by ~65% to ~540 ms, and baseline JIT… | ||
| How the Android Framework Monitors, Processes, and Triggers ANRs | Fredric Newberg | 29m |
Explains concrete ANR behavior and tooling: Android triggers 5 seconds for activities only when there is user input, broadcast receivers time out at 10… | ||
| Life is too short to develop only for Android – A journey to Server-driven UI | Zhenlei Ji | 32m |
A server-driven UI is built: polymorphic JSON drives a RecyclerView of components so a backend change rearranges or swaps carousel/grid without app releases… | ||
| Indemnity in the Data Layer | Tunji Dahunsi | 39m |
Now in Android implements an offline first data layer that uses Room and DataStore for local storage, exposes read flows and async writes, and delegates… | ||
| KMP4FREE in 2023 | Sam Edwards | 39m |
KMP4FREE is a Gradle plugin that lets projects flip between Kotlin JVM and Kotlin Multiplatform with a single-line change, applying multiplatform only when a… | ||
| Snapshot testing (and more!) with Paparazzi | John Rodriguez | 35m |
Paparazzi renders Android UIs on the JVM so snapshots run in seconds instead of the usual 2–4 minute build+deploy loop; Cash App uses it in production and… | ||
| Adopting Kotlin Multiplatform In Brownfield Applications | Nate Ebel | 41m |
Team of ~15 invests 1.5 years into Kotlin Multiplatform to share analytics and other libs, starting by shipping a single string constant to validate… | ||
| Meta-programming with KSP and Kotlin compiler plugins | Tadeas Kriz | 33m |
KSP replaces KAPT and runs about 2× faster, provides a stable processor API, supports Java sources, and only generates new files — it has no expression-level… | ||
| Model-driven navigation with Jetpack Compose – From zero to hero | Zsolt Kocsi | 31m |
Argues that navigation should be state-first and shows a concrete Jetpack Compose implementation: navigation targets as sealed class tokens resolved to… | ||
| Native UI with multiplatform Compose | Jake Wharton, Jesse Wilson | 42m |
Redwood compiles a Kotlin schema into generated Compose-like APIs and platform widgets so the same composable code drives Android Views, Compose UI, iOS UIKit… | ||
| Dynamic Code with Zipline | Jake Wharton, Jesse Wilson | 36m |
Zipline runs downloadable Kotlin/JS modules inside Android and iOS apps using a tiny QuickJS engine (~6.5k C lines, 1.2 MB compiled, ~450 KB gzipped) and a… | ||
| Keynote: What is the future of the community in an always-evolving world? | Madona Wambua | 33m |
Claims that Android reaches 87% of devices globally (Statista 2019), that a first app Simple Math: 500 downloads, 4.5 rating can kickstart a career, and that… | ||
| Coding for Good: Achieving social change with an app | Chris Ward | 29m |
An app is built in a week using a hacked WordPress front end, a from‑scratch PHP web API, MySQL and jQuery on £2.99 hosting; emails are queued and throttled by… | ||
| Welcome Adress | GREG FAWSON | 14m |
Conference app uses a Kotlin Multiplatform codebase with a Compose-for-iOS experiment and a user toggle to SwiftUI, built by Touchlab and demoed live; the… | ||
| Functional Programming in Kotlin for AndroidDevs | Hari Vignesh Jayapalan | 34m |
Starts from math (domain/codomain and referential transparency) and shows concrete Kotlin code: mapping/reduce examples, a polymorphic function composition… | ||
| Jetpack Paging Library 3 in Real Life | Orel Zion | 36m |
Shows a production integration of Jetpack Paging 3 at Viz.ai: replaces a custom adapter/scroll listener and a per-filter paging table with a Pager +… | ||
| Kotlin Adoption in the Giant Java Application | Sergei Rybalkin | 42m |
Kotlin adoption at Meta forces concrete tradeoffs: it takes ~8 months to make IDEs usable and a maintained fork of the Kotlin plugin to keep editors… | ||
| Migration without Migraines: Automatic Migration at Scale | Oleg Godovykh, Stephen Edwards | 35m |
Square consolidates four Workflow versions by running a ktlint rule set (unit tested) invoked via a custom Gradle task and an IDE-accessible migration wizard… | ||
| Large screens and foldables | Guy Merin, Parker Schroeder, Kristen Halper | 42m |
Microsoft shows concrete steps to adapt existing apps: Google reports ~250 million large‑screen users and Microsoft notes 80 Play Store apps already optimized… | ||
| Building Responsive UIs for tablets, foldables, and other devices | Ran Nachmany, Ofir Miron | 37m |
Concrete migration recipes for large screens: use Activity Embedding (Android 12L, backward compatible) to show two activities side‑by‑side with configurable… | ||
| The Future of Design is Still Personal: Reaching Toward True Adaptation | Liam Spradlin | 28m |
Argues design should stop shipping one fixed interface and instead expose multi‑dimensional design spaces so individuals shape UI by intent; demonstrates… | ||
| Android Benchmarking and other stories | Enrique López Mañas, Iury Souza | 33m |
Covers using Android Profiler plus Google libraries microbenchmark and macrobenchmark to measure CPU, frames and startup times (examples: sorting 10,000 items… | ||
| Expand your Android app beyond the phone with Amazon Appstore | Anisha Malde | 21m |
Amazon Appstore plus Windows Subsystem for Android (WSA) lets Android apps run on Windows 11 by installing the Appstore which silently installs WSA then… | ||
| Using Compose Runtime to create a client library | Fatih Giriş | 28m |
Claims that Compose Runtime (not just UI) can host non-Android clients and demonstrates a working Compose-based PowerPoint client library: implemented Compose… | ||
| Decompose your Kotlin Multiplatform project into feature modules | Arkadii Ivanov | 22m |
Argues that a tree of feature modules reduces coupling and improves testability versus one huge shared module, demonstrates the Decompose library for… | ||
| Fakes over Mocks: Shift your paradigm and identify monolithic code | Caleb Donoho | 25m |
Company moves from heavy mocking to reusable fakes, replacing many mockito/mocktail uses and revealing hidden SRP violations: codebase shows 647 mocks declared… | ||
| The ever increasing convergence of native iOS and Android mobile development | John O'Reilly | 26m |
Swift and Kotlin read and behave very similarly now, with Swift 5.5 concurrency (tasks, async let, async sequences) mapping closely to Kotlin coroutines… | ||
| Observability of your app in production | Kurt Nelson | 26m |
Advocates setting up observability as soon as the app hits users, arguing that Crashlytics, Performance Monitoring, Analytics from Firebase get you running… | ||
| Mastering the mobile testing pyramid | Laurent Sigal | 24m |
Argues that success starts by make app automatable: add debug menus/backdoors and turn off AB tests so pre-release builds show deterministic states, then… | ||
| Mobile DevOps - How CI/CD can change your development world | Leilah Squires, Sujit Poudel | 25m |
Claims a cloud CI/CD pipeline on Bitrise cuts emulator test/build cycles from 28–90 minutes down to 10–15 minutes, improving throughput ~30–60%. Demonstrates… | ||
| Multi-device Development | Ryan Ausanka-Crues | 19m |
Google publicly launches the Cross-device SDK as a developer preview, restricted to Play Services beta with weekly updates, open sourced on GitHub and backed… | ||
| A deep dive into deep links | Sanat Tripathi, Chrystian Vieyra | 27m |
Deep linking for the Xfinity app uses manifest intent‑filters, Android App Links with assetlinks.json at /.well-known/assetlinks.json and autoverify="true"… | ||
| The Real MVP: Going from idea to users’ hands! | Annyce Davis | 29m |
Case study builds a native app for Meetup organizers using Kotlin Multiplatform Mobile, KTOR, Apollo GraphQL and Firebase, proving one complete flow in a… | ||
| Netflix + Gradle A Journey in Developer Productivity | Emmanuel Boudrant, Rooz Mohazzabi | 43m |
Case study of Netflix + Gradle shows concrete fixes: use Gradle Profiler and build scans to spot cache misses, enable local + remote build cache to seed… | ||
| Navigation and Dependency Injection in Compose | Ray Ryan | 29m |
Square’s patterns map DI into Compose by turning injected presenters into composable view-model structs, using molecule runtime to expose them as StateFlow and… | ||
| Demystifying Molecule: Running Your Own Compositions For Fun And Profit | Ash Davies, Bill Phillips | 42m |
Molecule turns a Composable into an asynchronous stream by running a recomposer + composition with a no‑op applier, observing snapshot state via a conflated… | ||
| Demystifying the UX of Compose Guidance | Preethi Srinivas, Paris Hsu, Chris Sinco | 30m |
A team builds and maintains a set of GitHub samples — Jetapps curated samples like Jetnews JetSnack Jetcaster JetSurvey and Jetchat — that stay current with… | ||
| Kotlin Multiplatform at five years | Russell Wolf | 36m |
Five years in, Kotlin Multiplatform is shipping real apps: KMM is approaching beta, the new memory manager replaces the old freeze API (deprecated in the… | ||
| Simplified Swift Multiplatform Integration | David Taylor | 32m |
Shows how to access Swift-only Apple APIs by wrapping Swift in an Objective‑C API and pulling it into Kotlin Multiplatform via a CocoaPods plugin, using @objc… | ||
| 6 weeks of Compose or How a good Design System is vital in Compose | Dinorah Tovar | 36m |
Rewrote a production mobile app into Compose in 6 weeks by building a focused design system: design tokens (color interface + palette)… | ||
| Opening the shutter on snapshots | Zach Klippenstein | 01h 04m |
Jetpack Compose’s snapshot system is a tiny runtime library (not compiler magic) that implements MVCC with a monotonic ID counter and per-snapshot invalid ID… | ||
| Using Jetpack Compose to Create Apps From Figma UI Sketches | Mikhail Foenko | 42m |
Lunchbox pulls JSON from Figma API and parses it with Moshi into lightweight structures, then renders UI with Jetpack Compose by mapping layer IDs to… | ||
| Composable Sheep: A Canvas Story | Nicole Terc | 32m |
Shows how Compose Canvas and the Canvas API let you build a fluffy sheep by combining drawCircle drawRect drawOval and transform helpers inside the provided… | ||
| Leverage Compose Tooling to Improve Your Workflow | Ramona Harrison | 27m |
A hands‑on tour of Android Studio Compose tooling using a Wordle‑style sample app called Word Tool, showing how Compose Preview and custom multi‑preview… | ||
| Integrating Kotlin/JS in a Kotlin Multiplatform library | Jigar Brahmbhatt | 34m |
Kotlin/JS compiles Kotlin to JS via the Gradle plugin with built‑in NPM, yarn and webpack support; use IR compiler and choose browser vs node and… | ||
| Breaking the Rules: Dynamic Navigation in Modularized Apps | Sumayyah Ahmed | 33m |
Explains how Navigation Components and Compose actually handle modularized apps by showing concrete techniques: make destinations discoverable with deep links… | ||
| What’s on tonight? New developments in Android and Google TV | Paul Lammertsma | 33m |
Google TV now dominates US activations and reports 110+ monthly active devices, with seven of the top ten OEMs shipping the platform. Android 12 adds a frame… | ||
| Architecture at Scale | Benoît Quenaudon | 32m |
Cash App scales to 40+ engineers and 600+ modules using strict unidirectional data flow where views consume plain UI models and emit UI events while presenters… | ||
| The future of dependency management, seen from 2022 | Louis CAD | 41m |
Dependency upgrades are tedious and error prone; the talk claims Gradle’s version catalogs and the MIT-licensed Gradle plugin refreshVersions cut that friction… | ||
| Chasing performance issues methodically | Amanjeet Singh | 32m |
Shows a practical methodology: add production observability with Firebase Analytics and BigQuery, define app launch spans and mark impacted sessions >5s… | ||
| nothing matches | ||