Fragmented - Android Developer Podcast cover image

Fragmented - Android Developer Podcast

Latest episodes

undefined
Dec 16, 2019 • 58min

185: Year End Decompress

In this decompress episode, Donn and KG talk about how their 2019 went. It goes from Dagger talk to Kotlin talk to Kotlin Conf talk. Give it a listen and enjoy! Sponsors 🙏 Square Square has SDKs and APIs to make payments and run a business. Even better, Square has a new YouTube channel for developers! Check out Square's new YouTube Channel for Developers at youtube.com/squaredev and let them know you heard about it from us. Contact Discord chat or @fragmentedcast or our Youtube channel @donnfelker and donnfelker (on Instagram) @kaushikgopal and kaushikgopal (on Instagram)
undefined
Dec 2, 2019 • 23min

184: Should I use a BaseActivity in my Android apps?

In this episode, Kaushik tries to talk through this question. Thanks to friends of the show Jeroen, Yigit and a bunch of others who ran through some ideas on this one. Application.registerActivityLifecycleCallbacks Android X Lifecycle Component Ep 16: Favor composition over inheritance Sponsors 🙏 Square Square has SDKs and APIs to make payments and run a business. Even better, Square has a new YouTube channel for developers! Check out Square's new YouTube Channel for Developers at youtube.com/squaredev and let them know you heard about it from us. Contact Discord chat or @fragmentedcast or our Youtube channel @donnfelker and donnfelker (on Instagram) @kaushikgopal and kaushikgopal (on Instagram)
undefined
Nov 25, 2019 • 20min

183: The Testing Paradox

How do you know what to test when you don't even know how to write the code that you need to test? This is a paradox that many developers find themselves in daily. In this episode Donn talks about his strategy for dealing with unknowns in programming, namely around testing and how to figure out how to write tests for new code that might be difficult, unfamiliar or even legacy code. Links Ron Jefferies Tweet Luxman Tweet Donn Tweet What is a Spike? Sponsors 🙏 Square Square has SDKs and APIs to make payments and run a business. Even better, Square has a new YouTube channel for developers! Check out Square's new YouTube Channel for Developers at youtube.com/squaredev and let them know you heard about it from us. Flatiron School Learn UX/UI design flatironschool.com/fragmented in 24 weeks and discover our global community on campus or online and go back to school with Flatiron School! flatironschool.com/fragmented! Change careers with confidence with 1:1 support from our dedicated Career Coaches and a money-back guarantee. Complete details at flatironschool.com/terms. See you in class! Contact Discord chat or @fragmentedcast or our Youtube channel @donnfelker and donnfelker (on Instagram) @kaushikgopal and kaushikgopal (on Instagram)
undefined
Nov 18, 2019 • 28min

182: Where do I put DB objects in a modularized Android app?

App Modularization has plenty of benefits and a lot of Android devs today are starting to modularize their android app. A common problem though that most folks will start to run into is - how do you manage your database objects in these modules? do you create a single module with all your database dependencies (modularize by layer), do you do the right thing and modularize by feature so each module has it's own database file etc.? In this episode Kaushik grapples with that question and tries to come up with an answer. Shownotes Modularization (KG's favorite resources) Google IO 19 : Build a modular Android app architecture Jeroen Mols's posts : Modularization - Why you should care Joe Birch's posts : Modularizing Android Appications Ep 117 : Multi Module Builds in Gradle Karan Trehan's post : Writing a modular project on Android Sponsors 🙏 Vettery Vettery is an online hiring marketplace that is changing the way people hire and get hired. Make a free profile, name your salary, and connect with hiring managers from top employers today. Listeners of Fragmented get a $300 bonus if you accept a job through Vettery! Sign up at vettery.com/fragmented -- Flatiron School Learn UX/UI design flatironschool.com/fragmented in 24 weeks and discover our global community on campus or online and go back to school with Flatiron School! flatironschool.com/fragmented! Change careers with confidence with 1:1 support from our dedicated Career Coaches and a money-back guarantee. Complete details at flatironschool.com/terms. See you in class! Contact Discord chat or @fragmentedcast or our Youtube channel @donnfelker and donnfelker (on Instagram) @kaushikgopal and kaushikgopal (on Instagram)
undefined
Nov 13, 2019 • 22min

181: In Functional Programming how to do IO and database operations

In the world of Functional programming where pure functions don't encourage side-effects, how does on actually do any IO? So in this brave new world where everyone is adopting more FP principles, do we just stop doing database operations? Listen to this episode to find out. Functional Programming basics Ep 83 : Learning the basics of functional programing with Anup Cowkur Ep 120 : Functional Programming with Kotlin Arrow team Ep 121 : Functional Programming with Kotlin Arrow team (Part 2) Unidirectional State Flow Ep 148 and Ep 151 KG's speakerdeck slide KG's Movie search apps Android app + iOS app Resources for FP/IO contention StackOverflow Q&A Flying Frog Blog: Functional programming and databases Sponsors 🙏 Flatiron School Learn UX/UI design flatironschool.com/fragmented in 24 weeks and discover our global community on campus or online and go back to school with Flatiron School! flatironschool.com/fragmented! Change careers with confidence with 1:1 support from our dedicated Career Coaches and a money-back guarantee. Complete details at flatironschool.com/terms. See you in class! Vettery Vettery is an online hiring marketplace that is changing the way people hire and get hired. Make a free profile, name your salary, and connect with hiring managers from top employers today. Listeners of Fragmented get a $300 bonus if you accept a job through Vettery! Sign up at vettery.com/fragmented Contact Discord chat or @fragmentedcast or our Youtube channel @donnfelker and donnfelker (on Instagram) @kaushikgopal and kaushikgopal (on Instagram)
undefined
Nov 4, 2019 • 15min

180: Code Comments

In this episode of Fragmented, Donn talks about when it's appropriate to comment your code. Donn then dives into the types of code comments, when you might want to comment vs when you might not want to (depending upon your consumer) and then gets into how he decides to comment his code with a simple two-step process. Enjoy! Things Mentioned Commenting Code Post Sponsors Bitrise Build amazing apps in Java, Kotlin or whatever tech you prefer and use Bitrise to automate your Android integration, build, test and deploy process quickly and easily. Sign up for an exquisite pair of Bitrise Branded Socks at https://go.bitrise.io/fragmented Flatiron School Learn UX/UI design flatironschool.com/fragmented in 24 weeks and discover our global community on campus or online and go back to school with Flatiron School! flatironschool.com/fragmented! Change careers with confidence with 1:1 support from our dedicated Career Coaches and a money-back guarantee. Complete details at flatironschool.com/terms. See you in class! Contact Discord chat or @fragmentedcast or our Youtube channel @donnfelker and donnfelker (on Instagram) @kaushikgopal and kaushikgopal (on Instagram)
undefined
Oct 28, 2019 • 42min

179: Kaushiks Top Tips For Giving A Technical Talk

In this episode of Fragmented, Kaush breaks down how he begins creating and writing technical talks, using a talk he's about to give at the Mobilization Conference. Enjoy! Things Mentioned Mobilization conference - KG is about to give a talk at Post it notes pic1 pic 2 My Speakerdeck San Jose Theme Nick Butcher - speakerdeck Cyril Motier - speakerdeck Sponsors Vettery Vettery is an online hiring marketplace that is changing the way people hire and get hired. Make a free profile, name your salary, and connect with hiring managers from top employers today. Listeners of Fragmented get a $300 bonus if you accept a job through Vettery! Sign up at vettery.com/fragmented Bitrise Build amazing apps in Java, Kotlin or whatever tech you prefer and use Bitrise to automate your Android integration, build, test and deploy process quickly and easily. Sign up for an exquisite pair of Bitrise Branded Socks at https://go.bitrise.io/fragmented Contact Discord chat or @fragmentedcast or our Youtube channel @donnfelker and donnfelker (on Instagram) @kaushikgopal and kaushikgopal (on Instagram)
undefined
Oct 14, 2019 • 35min

178: Learning New Languages

As Android developers we know Java and now Kotlin. But to become even more seasoned developers, learning newer languages can be a level booster. The list can go on and on, especially if you've been in the industry awhile. So, when does it make sense for you to learn a new language? When should you learn a new language? When does it make sense? How do you do it? In this episode KG and Donn discuss the merits of learning new languages, what new languages they’ve picked up and how they feel its important for them and their careers as developers. Sponsor Build amazing apps in Java, Kotlin or whatever tech you prefer and use Bitrise to automate your Android integration, build, test and deploy process quickly and easily. Sign up for an exquisite pair of Bitrise Branded Socks at https://go.bitrise.io/fragmented Contact Discord chat or @fragmentedcast or our Youtube channel @donnfelker and donnfelker (on Instagram) @kaushikgopal and kaushikgopal (on Instagram)
undefined
Oct 7, 2019 • 31min

177: Over-Engineered Code

How do you know if some code is over-engineered? What does that even look like? How do you know if you're over-engineering the code that you're writing? What if you recently started at a new company, how do you know if the code you're working with is over-engineered? In this episode, Kaushik and Donn go back and forth on this topic ... Sponsor This episode is sponsored by Instabug - Understand How Your App is Doing with Real-Time Contextual Insights From Your Users Contact Discord chat or @fragmentedcast or our Youtube channel @donnfelker and donnfelker (on Instagram) @kaushikgopal and kaushikgopal (on Instagram)
undefined
Sep 30, 2019 • 16min

176: Kotlin's !! Operator is a Code Smell

Kotlin isn't a magic bullet that prevents NullPointerExceptions. Not at all. What Kotlin does do is force you to think about how you want to handle your nulls. through Kotlin forcing you to think this through, the hope is that you'll avoid NullPointerExceptions. The only problem is, Kotlin has the !! operator, also known as the "Not Null Assertion Operator". This operator basically says "Hey Kotlin, trust me, I'm a pro, I know what I'm doing ... I KNOW THIS WON'T BE NULL". This... is a code smell. In this episode, Donn walks through why Kotlin's Not Null Assertion Operator (!!) is a code smell and what you can do to alleviate it. Thanks To This Week's Sponsor: Bitrise Build amazing apps in Java, Kotlin or whatever tech you prefer and use Bitrise to automate your Android integration, build, test and deploy process quickly and easily. Sign up for an exquisite pair of Bitrise Branded Socks, here! https://go.bitrise.io/fragmented Contact Discord chat or @fragmentedcast or our Youtube channel @donnfelker and donnfelker (on Instagram) @kaushikgopal and kaushikgopal (on Instagram)

Get the Snipd
podcast app

Unlock the knowledge in podcasts with the podcast player of the future.
App store bannerPlay store banner

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode

Save any
moment

Hear something you like? Tap your headphones to save it with AI-generated key takeaways

Share
& Export

Send highlights to Twitter, WhatsApp or export them to Notion, Readwise & more

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode