~/conference

droidcon San Francisco 2018

date:2018-11-19..2018-11-20
location:San Francisco, United States
series:droidcon San Francisco · 5 editions
tags:[android, kotlin]
titleauthorlength
Your App is a Giant DDOS BotnetSanae Rosen30m
An app can amplify retries into a global outage: millions of devices repeatedly resending failed analytics created exponential log storms that looked like a…
Talk on
Opening Keynote: Between JOMO and FOMO: You are reshaping communication.Britt Barak, Ty Smith, Joaquim Verges39m
Mobile apps change moods and attention: users average 2 hours 51 minutes on phones and 150 unlocks per day, positive apps get ~9 minutes daily while negative…
Talk on
A More Secure World for Android AppsMercedes Wyss46m
Shows concrete failures and concrete fixes: a loyalty app leaks redeem codes and credentials over GET and no TLS — remedy is use TLS and POST plus a geofence…
Talk on
Android malware forensicsAlina Matyukhina41m
Builds a string-based author attribution pipeline that extracts URLs, class/method names and XML text from APKs (APKTool, dex2jar, JADX), converts tokens to…
Talk on
Buffed up BiometricsBrian Gardner33m
Android replaces FingerprintManager with the BiometricPrompt API (framework API 28+) and an AndroidX compat alpha2 that backports behavior to API 23…
Talk on
Android performance monitoring with automationBrien Colwell40m
Process for automated Android performance monitoring that builds a global device cloud with custom boxes (24 devices each), an e-finger for remote maintenance…
Talk on
Mindfulness for AchieversLida Tohidi40m
Claims meditation improves focus, sleep, stress response and can help anxiety or depression, backed by the surprising stat 8% of US adults reporting a regular…
Talk on
Scaling an Android App from 1 to 100 developers with modularization.Ben Schwab39m
Airbnb modularizes its Android code into a thin core, many feature modules and lib modules, and a thin app shell, resulting in over 200 modules and a main team…
Talk on
Building for the future at SnapchatBen Dodson, Gustavo Moura49m
Company rewrites Android app into a modular platform of 16 standalone apps and feature modules that must not preload, proving each module with a sample app…
Talk on
Advanced KotlinBrent Watson44m
Covers concrete Kotlin features and what they do: the standard library’s four delegates — observable, vetoable, notNull — plus how to build a SharedPreferences…
Talk on
Motif - An Opinionated Dependency Injection API for Deep GraphsLeland Takamine28m
Motif is an opinionated DI layer that generates Dagger code and intentionally simplifies component-per-scope boilerplate, trading Dagger’s broad flexibility…
Talk on
Debugging Application PerformanceCarmen Jackson42m
Systrace shows exact CPU and thread timelines so developers spot concrete regressions: extra activities add 235 ms or 166 ms to startup, service transactions…
Talk on
Improving Android Build performanceTony Robalik31m
Uses real Chess.com builds and the Gradle profiler to measure scenarios, finds GC as high as 17s (8% of build), and shows upgrading Gradle/AGP and enabling the…
Talk on
100%.ktOleg Godovykh38m
Gradle Kotlin DSL exists in the wild but is still small: build.gradle: 5.5M vs build.gradle.kts: ~8k and migration needs care — Gradle’s Kotlin DSL 1.0 is tied…
Talk on
Kotlin Multiplatform In ProductionKevin Galligan, Ty Smith, Joaquim Verges41m
Kotlin multiplatform is usable now but nascent: Kotlin/Native 1.0.1 beta and Gradle 4.10 enable shared common modules compiled to JVM, JS and iOS frameworks…
Talk on
Breaking Android AppsManpreet Singh25m
Walks through reversing the Wikipedia APK to change the donation URL to a personal Twitter, rebuilding with apktool and signing with a debug keystore so the…
Talk on
Android CI @ AirbnbMichael Dang35m
Airbnb migrates from TeamCity→Buildkite (2017) after PR-status and scaling pain, running ~250 agents for ~150 contributors in a mobile monorepo; engineers use…
Talk on
MotionLayout & ConstraintLayout 2.0Nicolas Roard, John Hoford49m
ConstraintLayout 2.0 adds MotionLayout, a working subclass that lets layouts animate via declarative XML instead of custom code, with an Android Studio motion…
Talk on
Dude, Where's My Build? Android CI/CD at UberGautam Korlam41m
Uber moves Android CI from a single Mac Mini to Linux servers with Buck and a network cache, cutting flakiness and enabling massive parallelism across 2,000+…
Talk on
How to Build a Performance Testing Pipeline from ScratchValera Zakharov45m
A production pipeline is built that runs UI scenarios on physical devices (cloud-backed via Firebase Test Lab), records network with OKReplay, collects…
Talk on
Kotlin on Code Quality ToolsNiklas Baudy37m
Compares Android Lint, Detekt and ktlint with concrete tradeoffs: ktlint autoformats via -F and editorconfig and is fastest; Detekt runs YAML-configured static…
Talk on
Lessons Learned from React Native at AirbnbGabriel Peal, Ty Smith, Joaquim Verges42m
Airbnb adopts React Native to ship quickly then reverses course after two years. The company builds 220 screens totalling 80,000 lines of product code plus 40k…
Talk on
From Effective Java to Effective KotlinIsrael Ferrer Camacho, Ty Smith, Joaquim Verges43m
Compares Effective Java items to Kotlin features with concrete translations and examples: uses object singletons instead of enum singletons, shows data class…
Talk on
Moving with the Android ecosystem towards a 64-bit r-EvolutionDavid Whaley32m
Google requires 64-bit builds for new and updated Play apps starting August 2019 and ARM shows concrete gains: 20% ART uplift for Java apps, native gains of…
Talk on
A Slice of PieSean McQuillan, Ty Smith, Joaquim Verges40m
Slices are a Jetpack mini-UI that expose app actions in Search and Assistant and are not GA yet, so testing uses preview slices and cached responses with…
Talk on
Manual documentation is dead. Long live automated documentation!Pablo Guardiola37m
Ank is a Gradle plugin that compiles and evaluates Kotlin and Java snippets at build time, verifies examples, and generates Markdown used directly on GitHub…
Talk on
When metrics lieRyan Cooke, Ryan Cohen40m
Pinterest builds a certification process for core metrics, starting with pin impression = visible ≥1s and minimum viewport fraction, writing product specs…
Talk on
Flutter + ML Kit: Building smart cross-platform appsIfeoma Okereke, Ty Smith, Joaquim Verges32m
Flutter compiles Dart ahead-of-time to ARM machine code for native performance, uses JIT for hot reload that updates UI in under a second (demo changed “Hello…
Talk on
Intro to Android ThingsJonathan Petit-Frere, Ty Smith, Joaquim Verges23m
Android Things is a Google-backed Android build for IoT that runs on Raspberry Pi 3 for prototyping and on certified production platforms with 3 years security…
Talk on
The JPEG of 3D: Bringing 3D scenes and objects into your 2D Android app with glTFPierre-Antoine LaFayette37m
Facebook adds interactive 3D posts to Android and web by shipping scenes in glTF (binary .glb) and rendering them with an OpenGLES pipeline and a minimal Java…
Talk on
The Art of PhotographyRomain Guy48m
Ten years of work condensed into practical rules and exact settings: exposure is ISO, shutter speed, aperture — use aperture priority + auto ISO for control…
Talk on
I like to move it, move itEliza Camber, Ty Smith, Joaquim Verges31m
Motion now ranks as a required part of the first 30 seconds to retain users, and Android’s current toolset makes it practical: use…
Talk on
Advanced Augmenting: A Guide to Augmenting ImagesJosh Williams33m
Hands-on guide to using ARCore augmented images with Sceneform + Filament that shows exactly what to build and what breaks: exports from Blender or Poly models…
Talk on
Getting Started with the Android NDKMozart Louis32m
NDK now ships with C++17 support and Clang and compiles per-ABI (ARM64, x86) so builds must target specific instruction sets; JNI requires exact mangled names…
Talk on
Taming WebSocket with ScarletZhixuan Lai43m
Scarlet is an extensible Kotlin library that turns Android WebSocket integration into a declarative interface and cuts boilerplate down to 10 lines of code. It…
Talk on
HERE BE DRAGONS* - THE ENTERPRISE MOBILE SECURITY JOURNEYDan Quaglian25m
Enterprises must stop treating devices as one-time Golden Image to Rolling Releases installs and accept frequent OS and app updates; Zebra’s Lifeguard for…
Talk on
Untangle your App: Efficient Threading in AndroidYohan Hartanto, Utkarsh Garg33m
Explains where Android and RxJava actually create native threads and why apps hit pthread_create ENOMEM, tying it to 140 KB stacks for worker threads vs 8 MB…
Talk on
How HTTP/2 works, and how Android developers can leverage itAman Alam, Arjan Ali28m
HTTP/2 (finalized 2015) replaces text framing with binary frames, adds header compression and stream priorities, and multiplexes many requests over one TCP…
Talk on
Working Effectively with (Android) Legacy CodeChuck Greb, Mohit Sarveiya, Ty Smith, Joaquim Verges42m
Provides concrete micro‑refactors that turn untestable Android Java code into testable seams: find object seams, break singletons like a DatabaseManager with a…
Talk on
Adventures in NavigationLyla Fujiwara, Ty Smith, Joaquim Verges38m
Demo of the Android Jetpack Navigation Component shows a concrete setup: a nav graph resource, a nav host fragment, and a NavController for navigate calls; use…
Talk on
Human Centered API DesignPy Walmsley, Pierre-Yves Ricau, Ty Smith, Joaquim Verges48m
Square builds the Square Reader SDK (Android and iOS) for custom point‑of‑sale and finds API quality comes from measurable choices: group surface into checkout…
Talk on
Grox: a library to manage the state of Java / Android appsAlin Turcu, Stéphane Nicolas48m
Grox is an open source Java/Kotlin library (https://github.com/groupon/grox) that Groupon builds into production to tame concurrent app state: a single store…
Talk on
Using server-driven UI to rapidly iterate across platformsLaura Kelly, Ty Smith, Joaquim Verges29m
Airbnb builds a server-driven UI so reservation screens on web, iOS, and Android update from a polymorphic JSON API parsed into UI components, letting teams…
Talk on
Netflix's componentization architecture with RxJava + Kotlin - Part IIJuliano Moraes39m
Netflix moves a monolithic player to small, reusable components that own UI state, lifecycle and presentation logic, enabling independent unit tests and faster…
Talk on
Tackling Tech Debt on AndroidKate Kelly, Ty Smith, Joaquim Verges33m
Defines tech debt as code that erodes confidence and recommends measuring items by impact/effort/contagion so high-impact low-effort low-contagion items get…
Talk on
Deep Dive into the Android Gradle PluginJohn Rodriguez56m
Explains what the Android Gradle Plugin actually does: task graph versus configuration, why variant-aware tasks are created in afterEvaluate, and how the build…
Talk on
Cross-Platform Fireside ChatGabriel Peal, Ifeoma Okereke, Joaquim Verges, Matthias Wenz, Kevin Galligan41m
Compares four real apps: Kotlin Multiplatform shares SQLite, threading and reactive architecture while leaving UI to native but suffers from immature tooling…
Panel on
LiveData beyond VIewModelsMarcos Paulo Damasceno, Akshata Ramesh41m
LiveData and ViewModel become the wiring for a reactive UI: use state live data + actions as a simple state machine, apply Transformations.map/switchMap for…
Talk on
Coroutines: Kotlin VersusBolot Kerimbaev, Ty Smith, Joaquim Verges45m
Compares concrete coroutine designs and tradeoffs: Kotlin puts a single suspend keyword in the language but leaves builders like launch/produce/Deferred in a…
Talk on
The Dangers of SharedPreferences: An API allegoryKurt Nelson38m
SharedPreferences’ default apply has no callback, so writes go to an in‑memory map and an async OS threadpool (CuedWork) and can silently fail when flash is…
Talk on
From AlarmManager to WorkManagerRalf Wondratschek, Ty Smith, Joaquim Verges39m
Compares the older AlarmManager/JobScheduler/GCM and the third‑party Android‑Job library with WorkManager and gives concrete tradeoffs: Android‑Job supports…
Talk on
Quick and clean prototypes that scale with Helium: a reactive MVP framework in KotlinJoaquim Verges, Ty Smith45m
Helium is an open source Kotlin MVP framework that claims a full app in 20 lines by wiring presenters, view delegates and repositories; the demo builds a…
Talk on
How to build your own ridesharing appRichard Sueselbeck, Ty Smith, Joaquim Verges51m
Step-by-step blueprint for a DIY rideshare: get a live dot with the Positioning API (GPS + GNSS + Wi‑Fi/cell fusion), turn lat/long into a pickup with the…
Talk on
Tools of the TradeTy Smith39m
Company migrates to a monorepo per platform so API-breaking changes update in one atomic commit instead of cascading across many repos, and adopts Buck for…
Talk on
Making a good first impression: removing friction when onboarding usersSam Wolfand, Ty Smith, Joaquim Verges20m
Eighteen months of work rebuilds Slack sign‑in around an email-first confirmation flow plus a new workspace selection screen that prioritizes the 80% of users…
Talk on
A Comedy TalkRomain Guy, Chet Haase40m
A satirical playbook lists concrete policies: keystroke interceptors that log every typed character into a manager folder, webcams that file two‑minute clips…
Talk on
Teach Kotlin to play well with Java - Optimization tips for InteroperabilityVivek Chanddru, Ty Smith, Joaquim Verges39m
Kotlin-to-Java interoperability covers 11 practical fixes: rename generated classes to avoid AmazingUtilsKt with @file:JvmName and @JvmMultifileClass; avoid…
Talk on
Kotlin, Practically SpeakingAndrew Watson39m
Yammer’s one-and-a-half-year migration reports concrete gotchas and fixes: Android Studio’s autoconverter inserts !! and nullables that cause runtime crashes…
Talk on
Minimalist Dependency Injection in KotlinAleksei Zakharov21m
Aleksei’s injector is a lightweight Kotlin service‑locator that uses delegated properties to deliver dependencies lazily, explicitly avoiding no reflection or…
Talk on
Mastering the Images SpectrumDaniel Hugenroth, Hugo Cuvillier33m
Spectrum is Facebook’s open‑source image pipeline: a C++ core with C++ core with plugins and thin Android/iOS wrappers that lets apps transcode, encode, decode…
Talk on
Camera2 API and beyondTomoaki Imai42m
Camera2 requires managing many low-level pieces so the demo builds a from-scratch sample (forked from Google) that adds manual focus and white balance…
Talk on
If your code looks like it's Kotlin & quacks like it's Kotlin, then it probably is Swift.Adrián Catalan, Cecilia Castillo42m
Claim: Kotlin and Swift are similar enough to make a small native team bilingual across Android and iOS. Built a simple dog-guessing app using the Dog API…
Talk on
ARCore and indoor navigation, lessons learnedIvan Alyakskin, Anton Popov37m
ARCore plus Sceneform and Firebase cloud anchors are used to build shareable indoor routes; cloud anchors host sparse point maps on Google servers and resolve…
Talk on
Building Effective Teams of Competent, Friendly PeopleChris Koeberle51m
Leads teams of about 15–30 people with 4–8 Android developers and proves a reproducible approach: require competent, friendly baseline hires, enforce a 40-hour…
Talk on
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.