Kaushik Gopal, Iury Souza
Fragmented - AI Developer Podcast
Fragmented is an AI developer podcast for engineers who want to go beyond vibe coding and ship real software. We cover AI-assisted development the way working engineers actually use it: prompting strategies, code review, testing, debugging, workflows, and building production-grade software with AI tools. No hype. No "I shipped a SaaS in a weekend" stories. Just tactics that work. Hosted by Kaushik Gopal and Iury Souza — software engineers using AI daily to build and ship real products. From vibe coding to software engineering — one episode at a time. Our goal: help you use AI to become a bette...
Author
Kaushik Gopal, Iury Souza
Category
Podcast website
Latest episode
Apr 14, 2026
Where to listen?
Podcasts in the app Replaio Radio Coming soonPodcasts are coming to the app soon. Install now and be the first to see a whole new take on podcasts
Episodes
169: Testing and JUnit 5 with Marcel Schnelle 15.07.2019 1:06:31
Marcel Schnelle joins Donn in this episode to talk about how to get your application under test and some steps to go from scared to confident in your testing process. The second half of the show they dive in deep to JUnit 5 and its new features. JUnit 5 is backwards compatible with JUnit 4 and offers a slew of new features and extensibility points which make the framework much more appealing going...
168: Learning Kotlin: Lambda Expressions Part 2 08.07.2019 21:37
In this episode, Donn continues his talks about Kotlin Lambda Expressions. He explains how you can use lambda expressions as function parameters and as return types for functions. This is a very dense episode - if you get lost look at the code snippets below or view on them on fragmentedpodcast.com class LogReader { fun processFile(file: File, processLine: (String) -> Unit = {}) { file.forEachL...
167: Clean Architecture with Joe Birch 01.07.2019 49:38
Donn sits down with Buffer Android Lead, Joe Birch. Joe is a GDE for Android, Google Actions, Flutter and Google Pay. In this episode Donn and Joe talk about Clean Architecture, what it is, and why you might want to use it. They break down the concept of what Clean Architecture is in a manner that is easy for even a beginner to understand. Enjoy. Shownotes Caster. IO Course [Uncle Bob Clean Arch]h...
166: Cross platform development talk with Jesse Wilson 24.06.2019 44:36
Kaushik decides to hit record on a skype call he has with friend of the show Jesse Wilson. They start off by discussing building features across different platforms today. Jesse talks about a clever mechanism of using javascript to change logic on the fly across the Square cash app, that's worked out pretty well. They then go on to discussing how one can try and converge across platforms in terms...
165: Learning Kotlin: Lambda Expressions Part 1 17.06.2019 15:39
In this episode, Donn talks about Kotlin Lambda Expressions. He explains the syntax and how to build a couple of simple lambda expressions with and without type inference and declaration. We wrap up with a small example of passing a small lambda with multiple values to a function. See the show notes below for more info. This is part 1 of a multi-part series on Lambda Expressions in Kotlin. The bas...
164: Learning Kotlin: Sealed Classes 10.06.2019 20:35
In this episode, you'll learn all about Kotlin Sealed classes. Donn walks you through what they are, how to create them, how to use data classes, objects and regular classes to create a restricted type hierarchy. Kotlin Sealed Classes Sponsors 🙏 sentry.io - Your code is broken. Let’s fix it together - https://sentry.io/for/android/ Contact Discord chat or @fragmentedcast or our Youtube channel @d...
163: Parallelize Your Espresso Tests with Flank w/ Matt Runo 03.06.2019 39:01
In this episode, Donn talks to Matt Runo about the Flank project. Using Flank you can run your Espresso test suite in parallel on Firebase Test Lab (FTL). This allows you to lower your feedback loop time and increase developer productivity and throughput. You'll learn all about Flank, how it works and how to get started in this episode. Sponsors 🙏 sentry.io - Your code is broken. Let’s fix it tog...
162: Catching up on Google IO 2019 27.05.2019 52:34
Shownotes Digital trends: Comparing Pixel 2, 3 and 3A Google Activity tracking Google Activity tracking Controls Flutter for Web New navigation paradigm in Android Q What's new in Android Deveopment Tools - Torr's IO talk Contact Discord chat or @fragmentedcast or our Youtube channel @donnfelker and donnfelker (on Instagram) @kaushikgopal and kaushikgopal (on Instagram) Sponsors 🙏 Instabug - Inst...
161: Machine Learning on Android with ML Kit and TensorFlow with Dan Jarvis 20.05.2019 59:19
In this show, Donn talks with Dan Jarvis about Machine Learning on Android with ML Kit and Tensor flow. They dive deep into what ML (Machine Learning) is, what you need to know as a developer and how to apply those things to build ML applications on Android. They tal about what you can do on Android in regards to ML, model training and running the models on the device. You may be wondering if you...
160: Increase App Engagement with Android Q 13.05.2019 11:37
With the release of Android Q we now have the settings panel and all its glory. This panel, while most likely overlooked as a minor feature, is actually a diamond in the rough. Why? Simply because it's going to lower the abandonment rate of your app and increase the engagement of your app at the same time. Donn talks about this in depth in this episode. Enjoy. Shownotes Android Q Features Sponsors...
159: Improve Your App with the Android Material Components (feat. Cameron Ketcham & Connie Shi) 06.05.2019 52:27
In this show, Donn and Kaushik talk to Cameron Ketcham and Connie Shi from the Android Material Components team at Google. The Android Material Components are material designed components that you can easily drop into your application with just a few small tweaks. You get a bunch of fully built out material components, from the Android Material team at Google. From Chips, to Cards, to Buttons and...
158: Building High Performance Audio on Android 29.04.2019 1:03:17
In this show, Donn and Kaushik talk to Don Turner about how to build high-performance audio apps on Android. We dive deep into history of audio on Android, some of the problems that the platform faced. Then look into the tools that we now have to solve those problems so that developers like you can build killer audio apps. Enjoy. Shownotes Android Midi Oboe Intro to Oboe (Video) Google IO 2019 Tal...
157: Effective Java Item# 20 - Prefer interfaces to abstract classes 01.04.2019 25:40
In this episode, Donn talks about Item #20 in the Effective Java book (third series) by Joshua Bloch. He discusses why you should think about using interfaces over abstract classes, how they can add mixin like behavior to retrofit existing classes with new behavior, default methods, skeleton implementations and more. Enjoy. Sponsors 🙏 sentry.io - Your code is broken. Let’s fix it together - https...
156: Increase App Engagement with Android Q 18.03.2019 11:38
With the release of Android Q we now have the settings panel and all its glory. This panel, while most likely overlooked as a minor feature, is actually a diamond in the rough. Why? Simply because it's going to lower the abandonment rate of your app and increase the engagement of your app at the same time. Donn talks about this in depth in this episode. Enjoy. Shownotes Android Q Features Sponsors...
155: Naming conventions for RxJava Observables 11.03.2019 21:27
The Android community has come to use Rx pretty heavily but surprisingly there hasn't been any one convention that's won, when it comes to how we name our functions that return Observables. getUser() , user() , userUpdates() ? In this mini-episode dutifully does the yak-shaving for you and discusses what some options are and what the community has been gravitating towards. Enjoy. Shownotes yak-sha...
154: Developer Growth: Start Writing 05.03.2019 18:51
Growing as a developer is important for you, your career and your future. One of the best ways to grow your career is to start writing. Donn recommends starting a blog or contributing to a blog. The process of writing will expose your weak points in your comprehension of a topic. Refining your communication skills through writing and putting thoughts out into the universe via a blog will broaden y...
153: How to be an indie Android developer with Chris Lacy 19.02.2019 1:13:47
Listen to all star Indie developer and friend of the show Chris Lacy. Chris Lacy created the beloved Action Launcher - arguably one of the best Launcher apps on Android. In this epiisode, he talks to us about what it's like being an indie developer, starting on Action Launcher and of course his newest creation - ActionDash . Enjoy. Shownotes TweetLanes Action Launcher On selling Link Bubble Brave...
152: Should I Rewrite My App? with Jeroen Mols 11.02.2019 58:43
After you've been working on an app for sometime, the most common quandry one runs into is the need to rewrite the app. We've all been there, there's technical debt, we've improved our understanding, the tools have become better, we've become better. So should you go back and just rewrite the whole app? Jeroen walks us through his thinking. Shownotes The big Rewrite - Jeroen's talk Droidcon Italy...
151: Evolving Android architectures (Part 2) 04.02.2019 57:13
In this episode, we continue our discussion from episode 148 on evolving android architectures. We collected some of the questions from the community and try to answer them. Shownotes Listen to the recap in episode 148 LCE: Modeling Data Loading in RxJava Rx example pull from db then network (from KG's presentation) Donn's caster.io episode on the amb operator Akshay's episode on Arch components (...
150: Learning Kotlin - Returns, Jumps & Labels 21.01.2019 19:08
Shownotes Kotlin Returns and Jumps Documentation Code data class Customer(val isPlatinum: Boolean) fun main() { val customer = Customer(false) println("Number of points customer has: ${calculatePoints(customer)}") // Break out of the loop once we're over 25 for (i in 1..100) { if (i > 25) { break } else { println(i) } } // Skip all even numbers for (i in 1..100) { if (i % 2 == 0) { co...
149: Learning Kotlin: inline classes and Type driven design 15.01.2019 24:42
In this quick fragment, Kaushik talks about the new Kotlin 1.3 experimental feature "inline classes" and how it helps with Type driven design. Shownotes Kotlin releases 1.3 Fragmented episode #116 - inline, noinline & crossinline Think strong types and simple values typealias.com blog Type driven design resources Type drive approach to Functional design - Michael Feathers Type driven...
148: Evolving Android architectures (Part 1) 07.01.2019 58:47
In this episode, Donn and Kaushik talk about the state of android architectures and how they've stared to evolve. Kaushik recently worked on a project of coming up with an evolved version of an MVVM architecture, very similar to what the Android community now calls MVI. Special request: if you have follow up questions or clarifications or things you'd like to see specifically with respect to this...
147: Disposing RxJava 2 Streams with AutoDispose 31.12.2018 15:22
In this short fragment episode, Donn explains how you can clean up your RxJava 2 streams and ensure no memory leaks are occurring by using the AutoDispose library from Uber. Shownotes AutoDispose Library Tool to help migrate to RxJava 2 CatchUp Library Code Samples Java myObservable .map(...) .as(AutoDispose.autoDisposable(AndroidLifecycleScopeProvider.from(this))) .subscribe(...) Kotlin myObserva...
146: 3 Things Every Android Developer Needs to Know 24.12.2018 27:40
Dependency Injection Constructor_setter_method injection Service Locators or other DI frameworks Common Frameworks 1. Dagger 2. Koin 3. Kodein 4. ToothPick How to test Functional / System Integration Unit Tools: jUnit Espresso Spek Keep it simple simple KISS principle KISS principle - Wikipedia Examples Code Duplication “Extract this into a method” Lets create a framework for this Kaushik’s - 3x r...
145: Tracking Network Requests With x-Request-ID 18.12.2018 11:02
In this short fragment, Kaushik explains how you can trace network requests from your app by adding a special header. Easily trace an HTTP request all the way from a client to your backend web process. Shownotes What is the X-Request-ID HTTP Request IDs improve visibility across the application stack How HTTP headers work Where does the X- come from? Sponsors 🙏 codemagic.io by NeverCode Join thei...
Similar podcasts
Replaio is not a podcast publisher; show names, artwork and audio belong to their authors and are distributed through public RSS feeds.