droidcon NYC 2017
2017-09-25..2017-09-26
New York City, United States
[droidcon NYC 2016, droidcon NYC 2017, droidCon NYC 2018, droidcon NYC 2019]
| title | author | length |
|---|---|---|
| The Road to Kotlintown | Huyen Tue Dao, Christina Lee | 39m |
Starts by mapping Kotlin’s type system (nullable types, Nothing, Any vs Object, Unit) and then shows concrete choices when converting Java: add explicit upper… | ||
| Architecture Round Table | Jose Alcérreca, Yigit Boyar | 42m |
Google-backed Architecture Components get practical scrutiny: Room is called ready for production by some, LiveData is promoted as the lifecycle-aware glue for… | ||
| Vector Workflows | Nick Butcher | 45m |
Vector drawables are presented as a practical replacement for many PNGs: they stay sharp at any density, let the app animate and tint parts, and often shrink… | ||
| Optimizing Dagger on Android: Developer Workflow and Runtime Performance | Ron Shapiro | 41m |
Generated Dagger code causes heavy class loading so component initialization measures about 200 ms first init versus 2 ms subsequent inits; the concrete fixes… | ||
| Exploring Tensor Flow on | Zach Westlake | 24m |
Builds a spam classifier from a 5,000‑message dataset using Python and TensorFlow and layers created with TFlearn framework, about 30 lines of code. Training… | ||
| Creating the Lyft Driver App: Reduce, Reuse, Recycle | Ryan Tempas | 24m |
Lyft splits a single dual‑mode APK into two app modules by ripping mixed features into fine‑grained modules, moving shared logic into true core libraries, and… | ||
| Upgrading to Moshi | Eric Cochran | 32m |
Compares Moshi to Gson with concrete migration notes: Moshi keeps a streaming and object API, adds selectName/selectString and Options to avoid allocating… | ||
| How I met Flutter | Roberto Orgiu | 40m |
Overview of Flutter as a Google mobile SDK using Dart, with a C/C++ engine (Skia) and Dart VM that supports hot reload <1s and preserves UI state across… | ||
| App Development - Pragmatic Best Practices | Israel Ferrer Camacho, Yigit Boyar | 40m |
Survey of 150 Android devs finds top pain points: architecture, Android lifecycle/configuration quirks, and testing. Advice is concrete: enforce single… | ||
| Codelab: Deep Linking for Instant Apps Made Easy | Evan Groth | 11m |
Hands-on guide to Branch integration for Android Instant Apps showing exact steps: add the SDK to the instant feature module, set an app.link domain and Branch… | ||
| Store Library | Brian Plummer | 21m |
NYT’s Store is an open source library that implements a 2-level caching + network flow with RxJava + Guava + OKIO, a file-system persistor, OKHttp… | ||
| Security, an Enterprise perspective | Chuck Bolen | 40m |
Shows enterprise-grade fixes and numbers: Google scans ~400M devices and 6B apps/day, flags under 0.05% potentially harmful apps, and issues monthly security… | ||
| No Internet? No Problem! | Annyce Davis, Moyinoluwa Adeyemi | 25m |
Off Grid Electric builds an Android app that keeps field agents working in 2G or airplane mode by storing data locally, queuing actions and syncing later; the… | ||
| The Rx Workflow Pattern | Ray Ryan | 40m |
Square’s Point of Sale app has ~300 screens touched by almost 200 engineers, with clean builds up to 12 minutes; the fix is to split business logic into… | ||
| Elevated UX: How the foundations of Material Design influence user experience | Liam Spradlin | 24m |
Material Design is broken into concrete low‑level rules that change behavior not just look: elevation builds mental models by layering sheets and toolbars (map… | ||
| Have Your Cake and Eat It Too with A/B Testing | Nick Capurso | 43m |
Capital One Wallet runs A/B tests with Firebase Remote Config and Swerve, reporting small wins like 5–10% higher push opt‑ins and an 8% lift in notification… | ||
| Applied TensorFlow in Android apps | Dan Jarvis | 40m |
Hands‑on guide to running TensorFlow models on Android: use cloud Vision/Natural Language APIs, drop a pre‑trained graph.pb into an app via the Java… | ||
| Keynote: Asynchronous Dependency Injection | Eric Leong | 36m |
Covers migrating slow dependencies from eager injection to Dagger Producers vs RxJava + Dagger, swapping @Provides for @Produces, wiring an executor module and… | ||
| Instant Apps + Deep Linking 101 | Evan Groth | 32m |
Branch demonstrates a practical Instant App deep-linking flow using the Branch SDK and deep views as a web fallback, claiming to pass full link context via a… | ||
| Model-View-Intent for | Benoît Quenaudon | 33m |
Explains how MVI on Android uses Kotlin and RxJava to build a working to‑do screen: user intents as sealed classes map to actions, processors use Observable… | ||
| Effective Data Prefetching on Background | Lola Priego | 39m |
Instagram describes a concrete system that prefetches media only on Wi‑Fi, queues three feature jobs that each fetch up to 10 items in the prototype, and later… | ||
| ViewModels, LiveData and Lifecycles, oh my! | Lyla Fujiwara | 41m |
Practical demo of Android Architecture Components: uses ViewModel + LiveData + Lifecycle to move UI state out of Activities (example: Court Counter) so data… | ||
| Debugging without a Stacktrace: Using Android Studio’s Performance Monitors | Andrew Orobator | 19m |
A music player app becomes completely unresponsive for one specific song (Dumdum by Keys and Crates) while logcat only shows choreographer and ART pauses with… | ||
| One for all, all for one: The Journey to Android Monorepo | Gautam Korlam | 29m |
Migrates 100+ repositories into a single monorepo while preserving git history and blame, using a repo-merge script that snapshots daily and a one-weekend code… | ||
| Doppl | Kevin Galligan | 36m |
Uses J2ObjC + Gradle plugin to convert Java into Objective‑C and produce Xcode‑friendly frameworks, implements key Android APIs on iOS (Room… | ||
| Multi-threaded Rendering on Android (with Litho & Infer) | Jingbo Yang, Benjamin Jaeger | 37m |
Facebook migrates the Android News Feed rendering off the UI thread by building a background layout pipeline with Litho and automating concurrency checks with… | ||
| Get a Room | Mark Murphy | 36m |
Room promises a Retrofit-like layer over SQLite: you annotate POJOs as entities with table names, primary keys, indices and foreign keys, declare DAO… | ||
| Building for Android Oreo | Dan Galpin | 32m |
Android Oreo forbids starting background services and instead requires use of scheduled work (JobScheduler / Firebase Job Dispatcher) or the new… | ||
| Sentinel - The First Home Security Robot Powered by | Oscar Salguero | 32m |
A home security robot built on a Raspberry Pi running Android Things, with four DC drive motors, a pan‑tilt camera, USB mic, speakers and a Bluetooth… | ||
| View performance deep dive | Emil Sjölander, Pasquale Anatriello | 39m |
A sample RecyclerView app (cat photos) is profiled with CyTrace on Nexus 5 (Android 4.4) to break down create / bind / measure / draw work; text measurement… | ||
| Make Your App Instant! | Yuliya Kaleda | 39m |
Instant Apps delivers a native, URL-launched APK set using Android Gradle plugin 3.0 beta, modularization and ProGuard; real project numbers: a feature APK… | ||
| The Resurgence of SQL | Jake Wharton, Alec Strong | 42m |
SQL moves heavy filtering from Kotlin into the database, demonstrated with a Swarm-style check‑in example where doing filters in Kotlin takes ~30 seconds on… | ||
| Tech Talks for Humans | Pierre-Yves Ricau | 40m |
Practical checklist for preparing a tech talk: collect ideas in notes, pick one to three core messages, and build redundancy by repeating them. Replace dense… | ||
| Getting to 100% Kotlin: A practical guide | Dan Kim | 31m |
Basecamp converts a ~20,000-line Android app to 100% Kotlin over 430 days with two engineers and uses Android Studio’s autoconverter as a starting tool that… | ||
| How Espresso Works | Michael Bailey | 36m |
Explains Espresso 3.0 internals: matchers use Hamcrest, onView builds a Dagger 2-backed ViewInteraction with a UIController and ViewFinder, and calling onView… | ||
| Data Binding in a Kotlin World | Lisa Wray | 36m |
Data binding generates Java glue from XML so Kotlin code drops findViewById and manual setters, using KAPT and the dataBinding flag; a demo dog app shows… | ||
| The Art of Changing Large Software Systems in Place | Jason Sendros | 21m |
Rewrites Facebook News Feed Android rendering with Litho to enable background thread layout and fine‑grain view recycling, migrating pieces incrementally (text… | ||
| Deep Android Integrations | Ty Smith | 41m |
Deep linking for Uber-specific URIs uses Play Store install_referrer and an assetslinks.json verification with autoverify to preserve user context and avoid… | ||
| Developers Are Users Too | Florina Muntenescu | 31m |
Argues that developer-facing APIs must follow the same usability rules as UIs and gives concrete Android examples: Room and SQLite show compile‑time query… | ||
| Seeing is Believing: Mobile Vision API Deep Dive | Moyinoluwa Adeyemi | 37m |
Mobile Vision API provides face, barcode, text detectors that run on-device offline processing and are free; face detector returns positions, landmarks (eyes… | ||
| Advanced Networking with RxJava + Retrofit | Stephen D'Amico | 39m |
Shows concrete RxJava + Retrofit patterns: uses retryWhen with zip(1..3) and timer for bounded exponential backoff, replaces ad-hoc onError retries with a… | ||
| Lint to the Finish Line | John Rodriguez | 29m |
Step-by-step guide to writing and testing custom Android Lint checks using the AGP3-era toolchain: creates a Hungarian-notation detector that flags m/S… | ||
| Advanced HTTP Mocking with | Sam Edwards | 41m |
WireMock runs as an embedded HTTP server on device or on desktop, can record and playback live traffic (files + mappings saved during proxying to S3), and… | ||
| Becoming a master window fitter� | Chris Banes | 28m |
Explains why WindowInsets exist, how Android behavior changes across versions, and exactly which APIs to use: call setSystemUiVisibility layout flags to lay… | ||
| Reactive, Clean Architecture and Android Architecture Components, a solid formula for a MVVM based a | Lucia Payo | 22m |
Asserts a practical recipe: combine RxJava + Retrofit with a custom reactive store behavior streams (infinite, emits current state wrapped in Option), a Clean… | ||
| Stricter StrictMode | Kurt Nelson | 31m |
Android O adds about three new StrictMode detectors and expands thread and VM policies that catch disk reads/writes, network access, unbuffered IO, leaked… | ||
| Building Camera Features in a Snap | Matt Precious | 31m |
Targets Camera2-only apps and shows code that reads YUV_420_888 previews (1920×1080 ≈ 3 MB) instead of RGB888 (6 MB), implements kernel convolution and a… | ||
| O-mg what's new in Android Security? | Scott Alexander-Bown | 39m |
Covers concrete Android O steps: use Play Services SafetyNet APIs to list harmful apps, call Safe Browsing lookup (free tier ~10,000 requests/day) and perform… | ||
| IoT for Android Developers | Dave Smith | 41m |
Android Things brings full Android APIs and Google Play services to embedded devices, runs on a purchasable system‑on‑module (SOM) instead of custom boards… | ||
| Lottie and the Language of Motion Design | Gabriel Peal | 42m |
A native renderer that exports After Effects as JSON (via the Bodymovin plugin) and renders natively on Android, iOS and React Native, built at Airbnb and… | ||
| GraphQL on Android is here! | Brian Plummer, Mike Nakimavich | 37m |
The New York Times needed an Android GraphQL client and helps maintain Apollo Android, an open source Gradle plugin plus runtime that generates… | ||
| - a fresh start for object persistence | Markus Junginger | 32m |
ObjectBox is a new, non‑SQLite database that stores real Java/Kotlin objects in boxes via a BoxStore and claims up to 10x faster CRUD plus special fast lookups… | ||
| Doo z z z z z e | Ralf Wondratschek | 34m |
Explains how Doze and App Standby change exact timing and background execution and why Android O blocks many implicit broadcasts so apps relying on… | ||
| Mastering Android’s App Resources | Yash Prabhu | 25m |
Covers how to stop copying layouts and use resource qualifiers and simple values to make one UI adapt: uses a RecyclerView grid that switches column count by… | ||
| Driver Assistant Solutions with | Giorgio Natili | 46m |
Open-source Android prototype called pony-drive repo bit.ly/pony-drive shows computer vision driver assistance built with OpenCV on Android, using ROI + resize… | ||
| Model View Intent, Embracing Reactive UI's | André Staltz | 35m |
Argues MVI as Intent → Model → View with user actions and lifecycle represented as Rx streams, using state reducer functions and Rx scan to produce an… | ||
| Refactoring in Android Studio | Godfrey Nolan | 38m |
Shows how the Refactor menu in Android Studio plus plugins actually reduces real technical debt: run Metrics Reloaded to find a method with cyclomatic… | ||
| Keynote: Illegitimi non carborundum | Kathy Tafel | 37m |
Brings concrete milestones: Apple chooses OpenGL over 3Dfx in 1998, John Carmack helps implement full‑screen GL contexts, and OpenGL on macOS attracts games… | ||
| Full-Stack Kotlin | Brent Watson | 40m |
Builds a full stack: a server using Ktor (embedded Netty, routing, in-memory store, JSON endpoints), a web front end compiled with Kotlin/JS and kotlinx.xhtml… | ||
| Codelab: Easily Integrate barcode scanning in your Enterprise Android Application | Bill Hecox | 36m |
Shows how to integrate on-device scanners using DataWedge on Zebra Android devices and proves it by building a working sample app that creates and updates… | ||
| Codelab: Prototyping fun with Android Things | Tyler Williams | 25m |
Prototyping uses Intel Edison and SparkFun breakouts to drive an MMA8452Q accelerometer over I²C driver code written from its data sheet; no existing Android… | ||
| Rule Your Realm | Tom Wilson | 36m |
Blue Apron uses Realm as a fast, object‑based mobile DB because it’s simple to set up, has a reactive live query model and a handy Realm Browser, but it trips… | ||
| Android Internals for Developers | Effie Barak | 42m |
Explains how Android actually runs apps: the kernel uses an OOM killer that ranks processes (example session shows ~30 processes and the camera triggers… | ||
| Clean app design with Architecture Components | Chuck Greb | 39m |
Shows how Android Architecture Components—Lifecycle, ViewModel, LiveData, Room—slot into an existing clean architecture to solve lifecycle, state and… | ||
| nothing matches | ||