TopPodcast.com
Menu
  • Home
  • Top Charts
  • Top Networks
  • Top Apps
  • Top Independents
  • Top Podfluencers
  • Top Picks
    • Top Business Podcasts
    • Top True Crime Podcasts
    • Top Finance Podcasts
    • Top Comedy Podcasts
    • Top Music Podcasts
    • Top Womens Podcasts
    • Top Kids Podcasts
    • Top Sports Podcasts
    • Top News Podcasts
    • Top Tech Podcasts
    • Top Crypto Podcasts
    • Top Entrepreneurial Podcasts
    • Top Fantasy Sports Podcasts
    • Top Political Podcasts
    • Top Science Podcasts
    • Top Self Help Podcasts
    • Top Sports Betting Podcasts
    • Top Stocks Podcasts
  • Podcast News
  • About Us
  • Podcast Advertising
  • Contact
Not in our directory?
Add Show Here
Podcast Equipment
Center

toppodcastlogoOur TOPPODCAST Picks

  • Comedy
  • Crypto
  • Sports
  • News
  • Politics
  • True Crime
  • Business
  • Finance

Follow Us

toppodcastlogoStay Connected

    View Top 200 Chart
    Back to Rankings Page
    Podcasting

    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 better engineer, not be replaced by one.

    Advertise

    Copyright: © 2020 Spec Network, Inc.

    • Apple Podcasts
    • Google Play
    • Spotify

    Latest Episodes:
    150: Learning Kotlin - Returns, Jumps & Labels Jan 21, 2019
    Show notes

    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) {
                continue
            } else {
                println(i)
            }
        }
    
    
        // Break out of the outer loop (which breaks out of the inner too) using a label
        donn@ for (i in 1..100) {
            for (j in 100..200) {
                if (j > 150) break@donn // This will break out of the inner loop and outer loop
                else println("i: $i, j: $j")
            }
        }
    
        // Continue processing the next outer loop value when a condition is met.
        donn@ for (i in 1..100) {
            for (j in 100..200) {
                if (j > 150) continue@donn // This will break out of the inner loop and outer loop
                else println("i: $i, j: $j")
            }
        }
    
        // returns with label
        example1()
        example2()
    
        println("I'm done processing!")
    }
    
    fun calculatePoints(customer: Customer): Int {
        if (customer.isPlatinum) {
            return 100000
        } else {
            return 10
        }
    }
    
    
    fun example1() {
        listOf(1, 2, 3, 4, 5, 6, 7, 8, 9).forEach {
            if (it > 7) {
                return
            } else {
                println(it)
            }
        }
        println("This wont print :( because return exited the bar() function")
    }
    
    fun example2() {
        listOf(1, 2, 3, 4, 5, 6, 7, 8, 9).forEach bin@ {
            if (it > 7) {
                return@bin
            } else {
                println(it)
            }
        }
        println("This will print! :) return exited the forEach!")
    }
    

    Sponsors 🙏

    • Nevercode

      • Nevercode is taking Flutter revolution extremely serious and is prepared to offer kick-ass CI/CD for Flutter projects with codemagic.io. Check it out and get started at https://codemagic.io/
    • Sentry.io

      • Sentry tells you about errors in your code before your customers have a chance to encounter them.
        Check them out at: https://sentry.io/for/android/

    Contact

    • Discord chat or @fragmentedcast or our Youtube channel
    • @donnfelker and donnfelker (on Instagram)
    • @kaushikgopal and kaushikgopal (on Instagram)

    149: Learning Kotlin: inline classes and Type driven design Jan 15, 2019
    Show notes

    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 design in Elm
    • blog.ploeh - Type driven design

    Kotlin KEEP

    • KEEP proposal - inline classes
    • KEEP discussion

    vs typealias

    • Fragmented Ep #122 - typealiases
    • inline classes vs typealiases
    • How to represent money in programming
    • Kotlin experimental
    • Jake Wharton - inline classes make great database ids

    Sponsors 🙏

    • Nevercode

      • Nevercode is taking Flutter revolution extremely serious and is prepared to offer kick-ass CI/CD for Flutter projects with codemagic.io. Check it out and get started at https://codemagic.io/
    • Sentry.io

      • Sentry tells you about errors in your code before your customers have a chance to encounter them.
        Check them out at: https://sentry.io/for/android/

    Contact

    • Discord chat or @fragmentedcast or our Youtube channel
    • @donnfelker and donnfelker (on Instagram)
    • @kaushikgopal and kaushikgopal (on Instagram)

    148: Evolving Android architectures (Part 1) Jan 07, 2019
    Show notes

    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 dicussion, hit us up on the Discord #fragmented-podcast channel with your thoughts and we'll make sure to address them in future parts!

    Shownotes

    • MBLT-Dev talk by KG : Unidirectional state flow patterns - a refactoring story
    • github sample repo with this pattern

    Salient features of the pattern:

    I. Screens are driven by a single ViewModel
    II. Screens listen to a single Observable exposed from the ViewModel
    III. Screens listen to a single Observable exposed from the ViewModel
    IV. Events are sent into the VM through a single function processInputs
    V. Break(ing) the Chain
    VI. Testing strategy

    Inspiration

    • The state of managing state with RxJava
    • MVI patterns with Hannes Dorfmann
    • MVRx

    Sponsors 🙏

    • Nevercode

      • Nevercode is taking Flutter revolution extremely serious and is prepared to offer kick-ass CI/CD for Flutter projects with codemagic.io. Check it out and get started at https://codemagic.io/
    • Sentry.io

      • Sentry tells you about errors in your code before your customers have a chance to encounter them.
        Check them out at: https://sentry.io/for/android/

    Contact

    • Discord chat or @fragmentedcast or our Youtube channel
    • @donnfelker and donnfelker (on Instagram)
    • @kaushikgopal and kaushikgopal (on Instagram)

    147: Disposing RxJava 2 Streams with AutoDispose Dec 31, 2018
    Show notes

    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

    myObservable
    	.map(...)
    	.autoDisposable(AndroidLifcycleScopeProvider.from(this))
    	.subscribe(...)
    

    With Scope Event Provided

    myObservable
    	.map(...)
    	.autoDisposable(AndroidLifcycleScopeProvider.from(this, Lifecycle.Event.ON_DESTROY))
    	.subscribe(...)
    

    Testing

    // File: CustomerService.kt
    class CustomerService @Inject constructor(...) {
    	lateinit var scopeProvider: ScopeProvider
    }
    
    // Usage in Fragment/Activity/etc
    val service = CustomerService(...).apply {
    	scopeProvider = AndroidLifecycleScopeProvider.from(this)
    }
    
    // Usage in Test
    val service = CustomerService(...).apply {
    	scopeProvider = TestScopeProvider.create()
    }
    

    Contact

    • @fragmentedcast or our Youtube channel
    • @donnfelker and donnfelker (on Instagram)
    • @kaushikgopal and kaushikgopal (on Instagram)
    • Fragmented Chat

    146: 3 Things Every Android Developer Needs to Know Dec 24, 2018
    Show notes
    • Dependency Injection
    1. Constructor_setter_method injection
    2. Service Locators or other DI frameworks
    3. Common Frameworks
      1. Dagger
      2. Koin
      3. Kodein
      4. ToothPick
    • How to test

      1. Functional / System
      2. Integration
      3. Unit
      4. Tools:
        1. jUnit
        2. Espresso
        3. Spek
    • Keep it simple simple

      1. KISS principle KISS principle - Wikipedia
      2. Examples
        1. Code Duplication
          1. “Extract this into a method”
        2. Lets create a framework for this
        3. Kaushik’s - 3x rule
          • if something is duplicated 3 or more times, think about extracting it
        4. 3/6 Rule - In 6 months, will I be able to understand this in under 3 minutes?

    Contact

    @fragmentedcast or our Youtube channel
    @donnfelker and donnfelker (on Instagram)
    @kaushikgopal and kaushikgopal (on Instagram)


    145: Tracking Network Requests With x-Request-ID Dec 18, 2018
    Show notes

    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 their Flutter Community here

    Contact

    • @fragmentedcast or our Youtube channel
    • @donnfelker and donnfelker (on Instagram)
    • @kaushikgopal and kaushikgopal (on Instagram)

    144: Developer Productivity Tools Dec 10, 2018
    Show notes

    In this episode, Donn and Kaushik talk about productivity tools for developers. As developers, what are some additional tools and utilities that really up your game. If you wanted to see how they tweak their development environments and workstations in general, this is a good episode to listen. Also introducing a Fragmented Discord Chat server!

    Shownotes

    • Fragmented Discord Chat Server

    Productivity tools

    Keyboard Maestro

    • Keyboard Maestro - Mac (Referral code with 20% discount)
    • Sample macros:
      • Demo: Better auto pairing with BBEdit and Keyboard Maestro
      • Demo: Autocopy text from one program to another
    • AutoHotkey - Windows (Windows equivalent of sorts)
    • DuckDuckGo
      • Bang Syntax
    • Muzzle App
    • Window management tools:
      • Divvy
      • Spectacle
      • Magnet
      • Moom
      • Phoenix
    • VSCode
      • Night owl theme
    • OhMyZsh
      • Spaceship prompt
      • Auto Suggestions
    • Fish Shell
    • Kap - Screen recording tools
    • Sip - Color Management

    Sponsors 🙏

    • codemagic.io by nevercode
      • Join their Flutter Community here

    Contact

    • @fragmentedcast or our Youtube channel
    • @donnfelker and donnfelker (on Instagram)
    • @kaushikgopal and kaushikgopal (on Instagram)

    143: Real world testing thoughts Dec 03, 2018
    Show notes

    In this mini fragment, Donn and Kaushik share some thoughts on real world testing with Android development - a favorite topic of theirs.

    Kaushik recently ran into a case where an espresso test fails because the UI stops performing. It's an interesting discussion on figuring out what matters when you write your tests. They dive into strategies and techniques around testing. What makes a good test, what should you be testing?

    They then talk about why Hermetic testing is pretty hard on mobile and ideas around a simple solution that could be provided out of the box. They then round it up talking about TDD and it's role in today's world.

    Shownotes

    • Espresso Testing lists (onData)
    • Espress test swipe action
    • What is the fold
    • Hermetic Servers testing
    • MockWebServer
    • WireMock

    Sponsors 🙏

    • American Express Jobs - American Express is hiring Android developers!
    • NeverCode
      • Blog post on developing apps 20% faster

    Contact

    • @fragmentedcast or our Youtube channel
    • @jebstuart
    • @donnfelker and donnfelker (on Instagram)
    • @kaushikgopal and kaushikgopal (on Instagram)

    142: Indie development on Android and iOS with Matt Logan Nov 19, 2018
    Show notes

    In this episode, we talk to our friend Matt Logan. Matt took some time off and worked on an indie app called Sessions. He built this for both Android and iOS. In this episode we talk to him about his experience building apps on both platforms, techniques, advice and other good stuff.

    Shownotes

    • Sessions Android iOS
    • Strava
    • Chris Lacy - Action Launcher
    • Indie Hacker's podcast
    • Fragmented Ep #64 - Garbage Collection (Android) vs Reference Counting (iOS)
    • Matt's blog post on code sharing

    Sponsors

    • Instabug
    • NeverCode
      • Blog post on developing apps 20% faster

    Contact

    • @fragmentedcast
    • @_mattlogan
    • @donnfelker and donnfelker (on Instagram)
    • @kaushikgopal and kaushikgopal (on Instagram)

    141: Impostor Syndrome Nov 12, 2018
    Show notes

    In this mini fragment, Donn and KG talk about Impostor syndrome. Most of us developers are plagued by this. Does this feeling ever go away? How do we deal with this? Listen to this short episode to find out more.

    Shownotes

    • Karl the Fog (wikipedia page) @KarlTheFog
    • Matt's twitter post on background process limit 0
    • #135 - You can't learn everything
    • I’m willing to look foolish, if it means I’ll learn something.
    • Larry page 1996- Java thread
    • #76: Taming the activity lifecycle with Kristin Marsicano
    • Jose Alcérreca's lifecycle cheatsheet bookmark

    Sponsors

    • Instabug -
      Thousands of companies including Lyft, eBay and T-Mobile rely on Instabug to receive
      comprehensive bug reports from users and testers, helping them iterate faster
      and enhance their app quality. Signup now, integrate the SDK for free, and get a
      special Instabug t-shirt.

    • Nevercode
      -Develop apps 20% faster with the leading CI/CD partner for iOS, Android, Cordova, Ionic, React Native & Flutter projects.
      Blog post on developing apps 20% faster

    Contact

    • @fragmentedcast
    • @preusslerberlin
    • @donnfelker and donnfelker (on Instagram)
    • @kaushikgopal and kaushikgopal (on Instagram)

    Previous 1 11 12 13 14 15 27 Next

    Related Podcasts

    https://ricochet.com

    1

    https://ricochet.com News
    Kyle Kingsbury Podcast

    2

    Kyle Kingsbury Podcast Fitness
    Exponent

    3

    Exponent Podcasting
    High Resolution

    4

    High Resolution Arts
    The TWIML AI Podcast (formerly This Week in Machine Learning & Artificial Intelligence)

    5

    The TWIML AI Podcast (formerly This Week in Machine Learning & Artificial Intelligence) News
    AWS Podcast

    6

    AWS Podcast News
    footer-logo

    Contact Us

    Toll Free: 844-670-7747

    Links

    • Home
    • Top Charts
    • Networks
    • Apps
    • Independents Podcasts
    • Podcast Advertising
    • Podcast News
    • Contact Us
    • About Us
    • Analytics & Insights

    Stay Connected

      Privacy, Terms of Use & Our Code of Ethics Protecting Content Creators Copyrights