

Fragmented - Android Developer Podcast
Donn Felker, Kaushik Gopal
The Fragmented Podcast is the leading Android developer podcast started by Kaushik Gopal & Donn Felker. Our goal is to help you become a better Android Developer through conversation & to capture the zeitgeist of Android development. We chat about topics such as Testing, Dependency Injection, Patterns and Practices, useful libraries, and much more. We will also be interviewing some of the top developers out there. Subscribe now and join us on the journey of becoming a better Android Developer.
Episodes
Mentioned books

Jun 25, 2018 • 53min
128: gRPC on Android with Sam Bobra
In today's episode, we are joined by Sam Bobra - engineering manager @VSCO, android fangirl and gRPC magician (some would go so far as to say evangelist !) to talk about gRPC on Android. Super informative episode!
Show Notes
VSCO
Sam's DroidconSF 2017 - Thinking Beyond the REST API: gRPC for Android
Microservices
Go (programming language)
Implementation
Protocol Buffers
protobuf-gradle-plugin
Reactive gRPC
Differences between gRPC & graphQL
Misc
codegen grpc-Java
codegen grpc-Lite
codegen Wire
Curling: grpcurl
envoy
Sponsors
Bitrise.io
Virtual Device Testing: full integration with Firebase Test Lab, run emulators quickly and reliably
Contact
@samwritescode [twitter.com]
@fragmentedcast [twitter.com]
@ryanjsalva
@donnfelker and +DonnFelker
@kaushikgopal and +KaushikGopalIsMe

Jun 11, 2018 • 47min
127: Audio playback on Android with Caren Chang
In today's episode, we sit down with Caren Chang from June to talk about audio engineering for Android. More specifically, how stoves can use audio to send notifications.
Show Notes
Caren's "Learning Kotlin in Action" summary blog post series
June Oven
June Oven Video
Apis
Audio Latency
MediaPlayer
SoundPool
ExoPlayer
Resources
Droidcon Boston
Caster.IO - ExoPlayer course
Sponsors
Microsoft AppCenter – Sign up now on appcenter.ms and spend less time managing your app lifecycle and more time coding.
Contact
@calren24
@fragmentedcast [twitter.com]
@ryanjsalva
@donnfelker and +DonnFelker
@kaushikgopal and +KaushikGopalIsMe

Jun 4, 2018 • 32min
126: GraphQL and Apollo with GDE Mike Nakhimovich (Part 2)
In this episode, we continue with Part 2 of this GraphQL series. If you haven't listed to episode 125 already, it might make sense to first listen to that one cause we go into the basics of GraphQL.
In this episode, we dive into the specifics of Apollo and how Mike went about creating a GraphQL client for Android. Let's get on with Part 2.
Show Notes
GraphQL
GraphQL specification
Apollo
Apollo Android - GraphQL Client for Android
Resources
droidcon NYC 2017 - GraphQL on Android is here!
Sponsors
Microsoft AppCenter – Sign up now on appcenter.ms and spend less time managing your app lifecycle and more time coding.
Contact
@friendlymikhail
@fragmentedcast [twitter.com]
@donnfelker and +DonnFelker
@kaushikgopal and +KaushikGopalIsMe

May 28, 2018 • 33min
125: GraphQL and Apollo with GDE Mike Nakhimovich (Part 1)
In this episode, we talk about GraphQL. Friend and GDE Mike Nakhimovich helped create the library Apollo for Android, which is the defacto official GraphQL client for Android.
In this first part of two, we take a step back and first try to understand what GraphQL is, why one would use it, how Mike set out to create and contribute Apollo for Android and his journey and satisfaction with open sourcing it when he worked at the New York Times.
If you've ever been interested in GraphQL, this is a good show to get you up to speed.
Download directly
Show notes
GraphQL
Sample GraphQL servers
Github explorer
Star Wars api GraphQLCMS visualization
Shopify GraphQL Explorer
Resources
React, Relay and GraphQL: Under the hood of the Times website redesign
The New York Times - Now on Apollo
Sponsors
Microsoft AppCenter – Sign up now on appcenter.ms and spend less time managing your app lifecycle and more time coding.
Contact
@friendlymikhail
@fragmentedcast [twitter.com]
@donnfelker and 📷 donnfelker
@kaushikgopal and 📷 kaushikgopal

May 14, 2018 • 50min
124: IO 2018 first impressions with Android Dialogs & Pocket Casts teams
In this episode of Fragmented, Kaushik talks to Chiuki & Huyen from Android Dialogs and Russell & Philip from Pocket Casts. Fresh after IO we huddled in a room to talk about our first impressions and what we thought were some of the highlights for us Android developers. Hope you enjoy the show! (if you want to see a behind the scenes crossover special, make sure to subscribe to Android Dialogs!)
Show Notes
Android Dialogs
Chiuki @chiuki
Huyen Tue Dao @queencodemonkey
Android Dialogs on YouTube
Pocket Casts
Russell Ivanovic @rustyshelf
Phil of PocketCasts @geekygecko
Pocket Casts
Wall Street Journal - Public Radio organizations buy Pocket Casts
io2018 stuff
Google I/O 2018: What's new in Android
Google Duplex announcement at Google IO
Android Jetpack (intro video)
Android Jetpack: manage UI navigation with Navigation Controller (Google I/O '18)
Material theming
Material Theme Editor (Sketch plugin)
Video 1: Guide to the new material.io website
Video 2: Build great Material Design products across platforms
Android App Bundles (iOS App thinning)
Android Jetpack: sweetening Kotlin development with Android KTX (Google I/O '18)
Android Slices: build interactive results for Google Search (Google I/O '18)
Getting started with App Actions (Google I/O '18)
Google is working on bringing Android Studio to Chrome OS
Sponsors
Microsoft AppCenter – Sign up now on appcenter.ms and spend less time managing your app lifecycle and more time coding.
Contact
@fragmentedcast [twitter.com]
@donnfelker and 📷 donnfelker
@kaushikgopal and 📷 kaushikgopal

May 7, 2018 • 1h 12min
123: Android Micro Frustrations
With good -most of the time- also comes the bad. In this episode, Kaushik and Donn chat about the small annoying things about being an Android developer, or more aptly - "Micro Frustrations".
We usually cover the new, latest, greatest and awesome developments. But it helps to step back and also point out the things that are broken and the 1000 cuts so to speak.
Sit back and enjoy this hearty rant!
Shownotes
F**k you Android
layout complaints
Kotlin Android Extensions
Anko layouts (slightly different from Kotlin Android extensions)
Android Studio 3.1 Stable - Build successful but can't resolve error
Navigation & System bar frustrations:
How do I ge the height and width of the android navigation bar
If you're looking for a solution to just hide system bar (and not the navigation bar) go to our main shownotes page to see the code.
Sponsors
Microsoft AppCenter – Sign up now on appcenter.ms and spend less time managing your app lifecycle and more time coding.
Contact
@fragmentedcast [twitter.com]
@donnfelker and 📷 donnfelker
@kaushikgopal and 📷 kaushikgopal

Apr 23, 2018 • 13min
122: Learning Kotlin - typealias
In this episode of learning kotlin, we look at the typealias keyword. The typealias keyword allows you to provide alternate names for existing types and and function types. Learn how, why and when you can use it in this episode
Show Notes
Kotlin Inline functions
Sponsors
Microsoft AppCenter – Sign up now on appcenter.ms and spend less time managing your app lifecycle and more time coding.
Contact
@fragmentedcast [twitter.com]
@donnfelker and 📷 donnfelker
@kaushikgopal and 📷 kaushikgopal

Apr 16, 2018 • 53min
121: Functional Programming with Kotlin Arrow team - 2
In this episode of Fragmented, we wrap up another 2 part series. We dive into the details of the Arrow library with this one. Arrow is a library in Kotlin that helps bring many of the functional paradigms of programming to your daily development. We talk to the team about how it all started, the history of the library, why we even need arrow, how Arrow is structured, some of the pitfalls, and in the end some resources on getting us started with Arrow.
Show Notes
Arrow library
Raul: Announcing Arrow for Kotlin
Jorge: Caster.io course - FP in Kotlin with Arrrow
Jorge: Kotlin Conf - Architectures Using Functional Programming Concepts
Paco: Arrow as a companion to Kotlin
Paco: Simple dependency injection in Kotlin (part 1)
Mario: Book on FP
Arrow Library eco system: Ank, Kollect, Helios
Misc
Arrow V 0.7.0 - now available
Higher Kinded types
KEEP - Type classes and Higher Kinded Types proposal
Kotlin Arrow docs
Get help on Arrrow
KotlinLang slack channel #arrow
Gitter: Arrow
Sponsors
Microsoft AppCenter – Sign up now on appcenter.ms and spend less time managing your app lifecycle and more time coding.
Contact
Paco (website)
Raúλ Raja
Jorge Castillo
Mario Arias (in spirit)
Arrow KT
@fragmentedcast [twitter.com]
@donnfelker and +DonnFelker
@kaushikgopal and +KaushikGopalIsMe

Apr 9, 2018 • 28min
120: Functional Programming with Kotlin Arrow team - 1
In this episode of Fragmented, we kick off another 2 part series. This time it's with the Kotlin Arrow team! In the first part, we talk to Jorge, Raul and Paco about Functional programming in general, some core FP concepts, do we already use functional programming today, what are pure functions, do I need to know complicated math to do FP, Immutability, Referential transparency and so much more. These are all pretty daunting words, but the Arrow team break it down and make it really simple for us to understand.
Show Notes
Kotlin Arrow team
Paco (website)
Raúλ Raja
Jorge Castillo
Mario Arias (in spirit)
Misc
Arrow KT
47 degrees
Jorge's caster.io course
Blogs & Presentations on FP - Arrow docs
Raul's presentation on Functional programming patterns
Sponsors
Microsoft AppCenter – Sign up now on appcenter.ms and spend less time managing your app lifecycle and more time coding.
Contact
@fragmentedcast [twitter.com]
Paco
Raúλ Raja
Jorge Castillo
Mario Arias (in spirit)
@donnfelker and +DonnFelker
@kaushikgopal and +KaushikGopalIsMe

Apr 2, 2018 • 53min
119: Flutter with GDE Eugenio Marletti - Part 2
In part 2 of this series,
To help us understand Flutter in-depth we talk to Flutter's GDE Eugenio Marletti. In Part 1 of this 2 part series, Eugenio helps us undersatnd what flutter is, why it was created, how it works, some really cool features with Flutter and why an AndroiDev today should really give Flutter a good look.
We got so carried away in conversation, that we were forced to break this episode into two parts. If you missed part 1 but want go back and listen you'll find it here: 118: Flutter and cross platform development with GDE Eugenio Marletti - Part 1)
Show Notes
RxDart
Dart 2
Flutter Weekly
Flutter on Gitter
Flutter on Codelab
Flutter on Github
https://play.google.com/store/apps/details?id=io.flutter.gallery&hl=en
Sponsors
Microsoft AppCenter – Sign up now on appcenter.ms and spend less time managing your app lifecycle and more time coding.
Contact
@workingkills [twitter.com]
@fragmentedcast [twitter.com]
@donnfelker and 📷 donnfelker
@kaushikgopal and 📷 kaushikgopal