Episodes – Fragmented: Recent Episodes

None

An Android Developer Podcast hosted by Donn Felker and Kaushik Gopal

View Details

Your browser does not support the audio element. Download In this episode of our podcast, we explore the diverse landscape of Java versions within the Android ecosystem. Our guest is Michael Bailey, a seasoned Java expert who has been a frequent presence on our show since the early days of our podcast. We kick off … Continue reading 249 – Java and the JDK: Powering the Android Landscape with Michael Bailey

View Details

Your browser does not support the audio element. Download In this edition of Fragmented, we’re thrilled to host Ishan Khanna, a software engineer at Tinder who possesses great enthusiasm for feature flags and A/B testing. Donn discusses why he invited Ishan on the show, highlighting Ishan’s passion for feature flagging and A/B testing. The conversation … Continue reading 248 – Feature Flags & A/B Testing: A Deep Dive with Ishan Khanna

View Details

Your browser does not support the audio element. Download In this episode, we talk to, Siggi Jonsson. Siggi helps guide us through the complex and often confusing world of Android app modularization. Our conversation will begin by shedding light on the importance of modularization, what triggers the need for breaking projects into multiple modules, and … Continue reading 247: The Art of App Modularization with Siggi Jonsson

View Details

Your browser does not support the
audio element.

Download

In this podcast episode, we have the pleasure to host Fred Porciúncula, a Google Developer Expert (GDE) known for his work on Kotlin Inject and his invaluable contributions to the Android development community. Fred offers his expertise on Dependency Injection (DI), Kotlin Multiplatform (KMP), and how they intersect.

We kick off the conversation by discussing Dependency Injection (DI), its importance, and the options available to developers, including Dagger, Hilt, Anvil, Koin, and Kotlin-Inject. Fred explains the use and impact of DI in the Kotlin Multiplatform (KMP) world, considering Dagger’s current lack of KMP support and debating whether one should use separate DI tools for Android apps and KMP components.

Delving further into Kotlin-Inject, we explore its features, usage, and how it differentiates itself from other DI solutions. Topics discussed include its unique handling of Scopes, its support of constructor injection, and its utility in building dependency graphs. Furthermore, we examine the timeless debate of Dependency Injection versus Service Locator.

Toward the end of the episode, Fred presents his thoughts on the advantages and disadvantages of exclusively using Kotlin-Inject throughout an application. We also tackle the concept of “Vanilla Injection” – refraining from using DI libraries at all.

For further learning, we recommend resources like Fred’s insightful article on transitioning from Dagger/Hilt to Kotlin-Inject, a Dagger issue discussing KSP support, and a Kotlin-Inject discussion on Anvil-like features. Links to these resources, among others, are provided below. Don’t miss out on this engaging and informative episode with Fred Porciúncula!

Links* Kotlin Inject Library * Fred’s Kotlin Inject Article * Testing with Kotlin Inject * Kotlin Inject Scope Issue * Pulling code out of the platform class * DI vs Service Locators * Dagger KSP Support * Kotlin Inject Anvil Like Features * Making Your Android Application Work on iOS (Touchlab mentioning interfaces over expect) * Moko Resources * Klima Engineering

Find Fred Online Here

  • Twitter – @tfcporciuncula
  • androiddev.social/@fred
  • Klima Engineering Blog

Donn’s Git CourseNeed to learn Git? Donn has the course for you. In this FREE course you’ll learn everything you need to know in order to start working with Git everyday. Watch it here.

AndroidJobs.IO* Job postings are FREE on AndroidJobs.IO * Sign up to get notified of new jobs on a weekly basis as well. * AndroidJobs.IO

Software Freelancing* Donn’s Freelance Faction Community * Freelance Tactics Book * Donn’s Freelancing Content on YouTube

Contact@fragmentedcast on Twitter or our YouTube channel

Donn

  • @donnfelker
  • donnfelker
  • Donn’s YouTube
  • Donn’s Website

Kaushik

  • kau.sh (has links to all my networks)
  • twitter.kau.sh
  • mastodon.kau.sh
  • youtube.kau.sh (on YouTube)

Disclaimer: Many of the links we share to products are affiliate links. They help support the production of Fragmented. Thank you for your support.

View Details

Download

In this episode, Donn and Kaushik talk to an old friend of the show, Colin White, about Treehouse, a combination of the Redwood and Zipline libraries.

Colin is a Staff Engineer at Cash App (Block).

Redwood is a multiplatform Compose library that allows you to target multiple UI toolkits on various native platforms. Ultimately this allows you to share presentation logic.

Zipline is a multiplatform JavaScript engine for Android, iOS, and the JVM, which uses Kotlin for calls in/out of the JavaScript land. This allows you to update the application logic of your apps without the traditional song and dance of the app store approval and release process.

Treehouse is the combination of both libraries, Redwood and Zipline. Listen in to learn more …

Links* Redwood * Zipline * QuickJS * Kotlin Conf Talk on Treehouse * Droicon NY talk – Redwood * Droidcon NY talk – Zipline

Find Colin Online here* Twitter – @colinwhi * Mastodon

AndroidJobs.IO* Job postings are FREE on AndroidJobs.IO! * Sign up to get notified of new jobs on a weekly basis as well. * AndroidJobs.IO

Contact@fragmentedcast on Twitter or our Youtube channel

Donn

  • @donnfelker (Twitter)
  • donnfelker (Instagram)
  • Donn’s YouTube
  • Donn’s Website

Kaushik

  • kau.sh
  • @kaushikgopal (Twitter)
  • mastodon.kau.sh
  • kaushikgopal – YouTube

Disclaimer: Many of the links we share to products are affiliate links. They help support the production of Fragmented. Thank you for your support.

View Details

In this episode, Donn and Kaushik announce that they are steering the podcast back into Android waters. In other words, the Fragmented Podcast is returning to its roots … we’re back to being a 100% Android Development focused show.

We’re glad to have you as a listener, here’s to the future of Android Development.

AndroidJobs.IO* Job postings are FREE on AndroidJobs.IO * Sign up to get notified of new jobs on a weekly basis as well. * AndroidJobs.IO

Contact* @fragmentedcast or our Youtube channel * @donnfelker and donnfelker (on Instagram) * [kaushikgopal] (on YouTube) or kau.sh/blog or @kaushikgopal

Disclaimer: Many of the links we share to products are affiliate links. They help support the production of Fragmented. Thank you for your support.

View Details

Your browser does not support the
audio element.

Download

In this episode, Donn and Kaushik talk to long-time friend Dan Lew about his recent career switch from Android developer to TypeScript/Node.js/Progressive Web App Developer (and more).

It’s an interesting discussion that covers …

  • Why Dan decided to leave the Android world
  • The challenges he faced when he moved from one tech stack to another
  • How to prepare for a big change like this (mentally, financially, etc.)
  • How to create the life you want live vi by identifying what’s important to you
  • and much more …

Links* Rheaply

Donn’s Git CourseNeed to learn Git? Donn has the course for you. In this FREE course, you’ll learn everything you need to know to start working with Git everyday. Watch it here.

AndroidJobs.IO* Job postings are FREE on AndroidJobs.IO during the early release phase (at the time of this recording). * Sign up to get notified of new jobs every week as well. * AndroidJobs.IO

Software Freelancing* Donn’s Freelance Faction Community * Freelance Tactics Book * Donn’s Freelancing Content on YouTube

Contact@fragmentedcast or our Youtube channel

@donnfelker and donnfelker (on Instagram)

Freelancing for Mobile Developers (Donn’s YouTube)

kaushikgopal (on YouTube) or kau.sh/blog or @kaushikgopal

Disclaimer: Many of the links we share to products are affiliate links. They help support the production of Fragmented. Thank you for your support.

View Details

Your browser does not support the
audio element.

Download

In this episode, Donn and Kaushik talk about one of the age old bike shedding topics – code formatting, and how you can solve it with automation and tools.

Code formatting can turn into an endless debate amongst peers and teams, and what Kaushik and Donn have found is that this can be delegated to a tool and automated. Freeing you and your team of having to worry about proper indentation, bracket placement, etc. By relying on a well defined tool and some automation you can clean your code up, make it much more uniform and easier maintain.

We talk about ktfmt, a Kotlin code formatter that was released by Facebook. We dive into ktlint, detekt and more. We also dive into spotless which can help you by integrating ktfmt into your gradle build pipeline.

Links* ktfmt – website, github * spotless – github * detekt – website * ktlint – website

Donn’s Git CourseNeed to learn Git? Donn has the course for you. In this FREE course you’ll learn everything you need to know in order to start working with Git everyday. Watch it here.

AndroidJobs.IO* Job postings are FREE on AndroidJobs.IO during the early release phase (at the time of this recording). * Sign up to get notified of new jobs on a weekly basis as well. * AndroidJobs.IO

Software Freelancing* Donn’s Freelance Faction Community * Freelance Tactics Book * Donn’s Freelancing Content on YouTube

Contact@fragmentedcast or our Youtube channel

@donnfelker and donnfelker (on Instagram)

Freelancing for Mobile Developers (Donn’s YouTube)

kaushikgopal (on YouTube) or kau.sh/blog or @kaushikgopal

Disclaimer: Many of the links we share to products are affiliate links. They help support the production of Fragmented. Thank you for your support.

View Details

Your browser does not support the
audio element.

Download

In this episode, Donn and Kaushik talk about the fear of shipping, some impostor syndrome and how it contributes to uncertainty and doubt in your capabilities as a software developer.

Recently Donn embarked on a mission to come up with an idea and ship it within 24 hours (which he did do). The end result was a net benefit of confidence, speed and skill acquisition. This helped reduce any doubt, uncertainty and ultimately fear of shipping a product faster.

That’s what this conversation is about … how to doing a project like the 24 hour MVP can remove fear, uncertainty and doubt and help you ship your side project/products faster.

Links* Donn’s 24 Hour Project – EXIFR * Jumpstart Rails Template that Donn Used * Books-AI App by Florian Walther * Open AI

Donn’s Git CourseNeed to learn Git? Donn has the course for you. In this FREE course you’ll learn everything you need to know in order to start working with Git everyday. Watch it here.

AndroidJobs.IO* Job postings are FREE on AndroidJobs.IO during the early release phase (at the time of this recording). * Sign up to get notified of new jobs on a weekly basis as well. * AndroidJobs.IO

Software Freelancing* Donn’s Freelance Faction Community * Freelance Tactics Book * Donn’s Freelancing Content on YouTube

Contact@fragmentedcast or our Youtube channel

@donnfelker and donnfelker (on Instagram)

Freelancing for Mobile Developers (Donn’s YouTube)

kaushikgopal (on YouTube) or kau.sh/blog or @kaushikgopal

Disclaimer: Many of the links we share to products are affiliate links. They help support the production of Fragmented. Thank you for your support.

View Details

Your browser does not support the
audio element.

Download

In this episode, Donn and Kaushik talk about 5 new-ish Kotlin constructs that you might not be aware of.

The constructs that they talk about are:

  1. fun interface (SAM – Single Abstract Method), and they juxtapose them vs function types
  2. type alias
  3. import alias
  4. value class
  5. data object

You’ll learn what they are, how you can use them and when or when you might not want to use them, and more. We hope you enjoy.

Links* Kaushik’s Blog Post – Important Kotlin Constructs * SAM Interface – Kotlin Docs * Function Types – Kotlin Docs * Type Aliases – Kotlin Docs * Import Alias – Kotlin Docs * Value Class – KEEP * Data Object – KEEP

Enjoy!

Donn’s Git CourseNeed to learn Git? Donn has the course for you. In this FREE course you’ll learn everything you need to know in order to start working with Git everyday. Watch it here.

AndroidJobs.IO* Job postings are FREE on AndroidJobs.IO during the early release phase (at the time of this recording). * Sign up to get notified of new jobs on a weekly basis as well. * AndroidJobs.IO

Software Freelancing* Donn’s Freelance Faction Community * Freelance Tactics Book * Donn’s Freelancing Content on YouTube

Contact@fragmentedcast or our Youtube channel

@donnfelker and donnfelker (on Instagram)

Freelancing for Mobile Developers (Donn’s YouTube)

kaushikgopal (on YouTube) or jkl.gg/b or @kaushikgopal

Disclaimer: Many of the links we share to products are affiliate links. They help support the production of Fragmented. Thank you for your support.

View Details

Your browser does not support the audio element. Download In this short episode, Donn talks about the CODEOWNERS file and how it can help you ensure teams review the code that they are responsible for before merging. The CODEOWNERS file is a file that you drop into the root of your project (or into the … Continue reading 239: Require PR Reviews with CODEOWNERS

View Details

Your browser does not support the audio element. Download In this episode, Donn talks about the tips and tricks he’s used over the last 20 years of consulting, freelancing and working full time to find jobs and new opporftunities. We’re hoping some of these tips help those affected by the recent tech layoffs. These are … Continue reading 238: How to Land a Job (if you got laid off or if you’re just starting out)

View Details

Your browser does not support the audio element. Download In this episode, Donn and Kaushik talk about their thoughts on Jetpack Compose and XML for Android layouts and which one you should learn first. As with every conversation in tech … it depends on what you’re trying to do, where you are at in your … Continue reading 237: Compose vs XML – Which one should you learn as an Android Dev?

View Details

Your browser does not support the audio element. Download In this episode, Donn and Kaushik talk about the thought of having a terminal for Android. Have you ever wished you could whip up a quick script to get the current location of a device, add it to cron and do some automated tasks on your … Continue reading 236: A Terminal for Android?

View Details

Your browser does not support the audio element. Download In this episode, Kaushik goes solo and interviews Ben Orenstein. Ben is a prolific Ruby developer, an amazing conference speaker, an ardent vim-ster, and now the CEO of Tuple. Kaushik has been a big fan of Ben’s work and was super stoked to talk to Ben … Continue reading 235: Pair programming with Ben Orenstein & Tuple

View Details

Your browser does not support the audio element. Download In this episode, Donn and Kaushik talk about how many Android applications seem to suffer from the disease of over-architecture while neglecting the product (UI/UX) itself. They discuss why this is deterimental to the user experience in the Android platform and how they’ve seen it evolve … Continue reading 234: More Product. Less Architecture?

View Details

Your browser does not support the audio element. Download In this episode, Donn and Kaushik talk to John Rodriguez (jrod) about the Paparazzi library which allows you to perform UI screenshot testing on Android without emulators or physical devices. They talk to John about what screenshot testing is, why it’s important, advantages and it’s disadvantages … Continue reading 233: UI Screenshot Testing with Paparazzi and John Rodriguez

View Details

Your browser does not support the audio element. Download In this episode Donn and Kaushik talk about frustration, finding “flow state” and how it’s known as “the madness” and how to deal with it. We originally were going to talk about an other topic, but during the off air banter Donn brought up how he … Continue reading 232: Frustration, Flow State and “The Madness”

View Details

Your browser does not support the audio element. Download In this episode, Donn and Kaushik talk to Android GDE Vinay Gaba about learning Jetpack Compose. They talk about how to learn how to use Jetpack Compose by example (and Vinay’s excellent talk by the same name). How to use Jetpackcompose.app to help you find the … Continue reading 231: Learning Jetpack Compose with Vinay Gaba

View Details

Your browser does not support the audio element. Download In this episode Donn talks about that pit of the stomach feeling we all get when we feel like we should know something but we  don’t. It’s that voice in our head as developers that makes you feel like an idiot even when you’re not. Donn … Continue reading 230: Feeling Like an Idiot

View Details

Your browser does not support the audio element. Download In this episode, Kaushik peppers Donn with questions about his foray into Android Turbo, Hotwire, and the concept of “Native Where You Need It”. Donn recently launched Android Jumpstart, the Android client for the Jumpstart Rails trifecta. Jumpstart Rails allow you to launch your SaaS business … Continue reading 229: Native Where You Need It with Turbo (Launch Your Side Projects Faster)

View Details

Your browser does not support the audio element. Download In this episode Donn and Kaushik talk to Konstantin Liakhovskii about Expo development and how it takes cross platform development and its productivity to the next level.  Konstantin dives deep into the usages and reasons why Expo (and React Native) are still very good options for … Continue reading 228: Expo Development with Konstantin Liakhovskii

View Details

Your browser does not support the audio element. Download In this episode Donn sits down and talks to Ephraim Schmitt about how he changed careers from being an exotic car salesman to a mobile software developer. It’s a fascinating and inspiring story for anyone looking to get into software development.  We talk about the mental … Continue reading 227: Exotic Car Salesman to Mobile Developer with Ephraim Schmitt

View Details

Your browser does not support the audio element. Download In this episode Donn and Kaushik are back together on the mic. After an extended break, they both returned renewed and ready to dive into all things software, starting off with IDE themes, plugins and what they’ve been up to since they were last on the … Continue reading 226: The Reunion – Themes, VS Code and More

View Details

Your browser does not support the audio element. Download In this episode Donn talks about something not giving up and persevering when the going gets tough in software, your career and more. It’s easy to give up, but the real reward is when you persevere. Links from the show Growth Mindset Book AndroidJobs.IO Job postings … Continue reading 225: Don’t Give Up – Persevere