Inside iOS Dev - podcast cover

Inside iOS Dev

Alex Bush, Sandeep Aggarwalinsideiosdev.com
Inside iOS dev is a weekly show about real world iOS development. Your hosts, Alex Bush and Sandeep Aggarwal, draw from their experiences ranging from 4+ year old legacy codebases, to small startup green field projects, to working on apps at places like Uber, Wayfair, and Upkeep with millions of active users. They discuss everything from implementing specific features, to creating flexible designs, to utilizing refactoring techniques, and more. This is THE show for professional iOS developers.
Last refreshed:
Follow this podcast in the Metacast mobile app to refresh it and see new episodes.
Download Metacast podcast app
Podcasts are better in Metacast mobile app
Don't just listen to podcasts. Learn from them with transcripts, summaries, and chapters for every episode. Skim, search, and bookmark insights. Learn more

Episodes

Clean Code’s Impact with Uncle Bob

In this episode we have legendary Robert Uncle Bob Martin come over to talk about Clean Code, professionalism, and courage. We cover: - the impact of Clean Code on businesses' ability to change software and make money - management pushback on applying Clean Code practices and how to handle it - how managers get to the truth and how developers get to the truth - professionalism, courage to take risk and saying NO despite potentially being fired - writing tests to reduce risks working with legacy ...

Jul 27, 20231 hr 21 minEp. 88

iOS Interview Tips from Engineering Manager and Senior Engineers

Sandeep and Alex talk to Aaina Jain and Muralidharan Kathiresan about interviewing in current layoffs prone market, interview stages and tips to be more successful in each. Aaina's medium: https://medium.com/@aainajain Murali: https://unknowndefault.com/ https://topmate.io/murali_k https://www.linkedin.com/in/muralidharankathiresan/ Prepping for a system design interview? Check out Alex's iOS System Design Interview: video course: https://iosinterviewguide.com/system-design-interview Need to pre...

Apr 04, 20231 hr 18 minEp. 87

WWDC 2022 Devs Reaction

In this episode Alex and Sandeep react to WWDC 2022 Platform State of The Union. This is our very raw, unresearched reaction/opinion on what we heard on latest WWDC changes for iOS development. Some things are just emotions and unfiltered opinions, some are things we already looked into. We'll be doing deep dives in other videos into some of the stuff we covered that we're not sure or don't know much about or stuff that deserves more attention. You can find the video we covered here: https://dev...

Jun 29, 20221 hr 18 minEp. 86

Top 10 iOS Dev Tips

Alex and Sandeep share 10 iOS development tips that you can add to your knowledge base in less than 10 minutes for a better development experience. Sign up for Alex's upcoming video course about iOS System Design Interview: https://iosinterviewguide.com/system-design-interview Need to prepare for an iOS Engineer Interview? https://iosinterviewguide.com Connect with us: https://twitter.com/insideiosdev Email us at hello@insideiosdev.com...

May 15, 202210 minEp. 85

Blocked by the backend? Use prod mocks.

In this episode Sandeep and Alex showcase how mocks can be used in production code to substitute upcoming unfinished or unreleased backend changes. They use dependency injection and Liskov Substitution Principle to inject a service object implementation that uses local hardcoded data instead of fetching it from the network. Sign up for Alex's upcoming video course about iOS System Design Interview: https://iosinterviewguide.com/system-design-interview Need to prepare for an iOS Engineer Intervie...

Mar 29, 202213 minEp. 84

Generating Mocks with Sourcery

Alex and Sandeep introduce Swift Sourcery, a code generation tool to automatically create mock implementations for interfaces in your code. Sourcery on github: https://github.com/krzysztofzablocki/Sourcery Sign up for Alex's upcoming video course about iOS System Design Interview: https://iosinterviewguide.com/system-design-interview Need to prepare for an iOS Engineer Interview? https://iosinterviewguide.com Connect with us: https://twitter.com/insideiosdev Email us at hello@insideiosdev.com...

Feb 26, 202216 minEp. 83

Refactoring Large Initializer in Swift. Part 1. Dependency Injection with Default Values and Properties.

In this episode Sandeep and Alex refactor a class with a large initializer into something easier to use. This is part one of this series. Sample code was taken from Fred’s tweet: https://twitter.com/frederickohen/status/1413595709471875072 Sign up for Alex's upcoming video course about iOS System Design Interview: https://iosinterviewguide.com/system-design-interview Sign up for Alex's upcoming video course about RIBs Architecture: http://ribsarchitecture.com/video-course-waitlist Need to prepar...

Oct 23, 202125 minEp. 82

RIBs. The Best iOS Architecture.

RIBs Resources: - [Original RIB repository]( https://github.com/uber/RIBs ) - [Uber RIB wiki]( https://github.com/uber/RIBs/wiki ) - General video: [Uber's new mobile architecture that scales to hundreds of engineers by Tuomas Artman]( https://youtube.com/watch?v=FfwZSk6VRVY ) - Video 1: [Architecture rewrite]( https://youtube.com/watch?v=bB9e7ZYVYCo ) - Video 2: [Deep Scope Hierarchies]( https://youtube.com/watch?v=LWu1HcFIRnQ ) - Video 3: [Introduction to RIBs]( https://youtube.com/watch?v=Q5c...

Sep 26, 20211 hr 4 minEp. 81

Developers/Designers Therapy Session with Michael DeGothsier and Sandeep Aggarwal

Alex and Sandeep talk to Michael DeGothsier about challenges developers and designers face working with each other and what approaches and perspectives they might take to improve collaboration. Sandeep's twitter: https://twitter.com/sandeepCool77 New Inside iOS Dev YouTube channel: https://www.youtube.com/c/InsideiOSDev Sign up for Alex's upcoming video course about iOS System Design Interview: https://iosinterviewguide.com/system-design-interview Need to prepare for an iOS Engineer Interview? h...

Aug 28, 202142 minEp. 80

2 Ways to Implement VIPER iOS Architecture with its author Jeff Gilbert

Alex and Sandeep talk to Jeff Gilbert, the author of VIPER architecture, about evolving understanding of VIPER, complex VIPER apps and compare different way to understand and implement VIPER on projects of all sizes. VIPER Architecture Diagram from the web: https://1drv.ms/u/s!AneU_VTSiGUE5Rvln8cBdVj0Ztja?e=IWt1hn VIPER Architecture Diagram from its author Jeff Gilbert: https://1drv.ms/b/s!AneU_VTSiGUE5R9MBCMLgr8talep?e=z87kEG Diagram of two ways of implementing VIPER: https://1drv.ms/u/s!AneU_V...

Aug 14, 20211 hr 6 minEp. 79

Swift Optional String Or Empty Extension

In this episode I walk you through how to create an extension on Optional String type to default nil strings to an empty string. This little shortcut can greatly reduce the amount of ifelsing and if let unwrapping on optional strings in your Swift codebase. This episode's video screencast: https://youtu.be/qzuFvUVuH9U This episode's audio podcast: https://insideiosdev.com/episodes/swift-optional-string-or-empty-extension Inside iOS Dev YouTube Channel: https://www.youtube.com/channel/UC6zcA3dAMU...

Jul 20, 20217 minEp. 78

Youtube Channel Announcement

I'm transitioning to Youtube! Don't worry, the podcast is not over :) I'll be making more and more screencast style videos instead of just audio podcast format. I'll still be having guest over and have conversations with them about the code and I'll be cross posting screencast episodes on the podcast as well. This new direction will allow me to explain the concepts and showcase the code examples better as the audio format can only do so much. Please hop on over to Youtube. You can find the chann...

Jun 30, 20213 minEp. 77

Builder Design Pattern in Swift with Sandeep Aggarwal

Alex talks to Sandeep Aggarwal about Builder design pattern. They talk about use cases where the pattern is most applicable and how the implementation they made turned out. Sandeep's Twitter https://twitter.com/sandeepCool77 Screencast covering Builder design pattern implementation in Swift can be found here https://youtu.be/EhT-sMo9gJs The article used to research on Builder Design Pattern: https://refactoring.guru/design-patterns/builder If you want to learn more about design patterns checkout...

May 31, 202124 minEp. 76

Saga of The Bug in Collapsing Navigation Bar in Scrolling View

Alex talks about unexpected bugs he encountered with the new iOS release and how replacing a 3rd party library with a built-in Apple implementation is not always the silver bullet. Sign up for Alex's upcoming video course about iOS System Design Interview: https://iosinterviewguide.com/system-design-interview Sign up for Alex's upcoming video course about RIBs Architecture: http://ribsarchitecture.com/video-course-waitlist Need to prepare for an iOS Engineer Interview? https://iosinterviewguide....

Apr 30, 202136 minEp. 75

How to Determine Visibility of a View Controller

Alex talks about unexpected intricacies and complexities he encountered trying to determine if a given view controller is visible trying to refresh data every time the user sees it. This seems like an overkill but it is more complex then you'd expect. Table of states and viewDidAppear/Foreground notification calls: https://1drv.ms/u/s!AneU_VTSiGUEh2kmJVH376QmUG79?e=X13rSQ Sign up for Alex's upcoming video course about iOS System Design Interview: https://iosinterviewguide.com/system-design-inter...

Mar 29, 202134 minEp. 74

Unit-testing 101

Alex gives an introduction to unit-testing on iOS. He talks about what unit-testing is, how unit-tests are structured, and best practices on organizing your test code. He also touches upon mocking/stubbing and testing side effects as well. Sign up for Alex's upcoming video course about iOS System Design Interview: https://iosinterviewguide.com/system-design-interview Sign up for Alex's upcoming video course about RIBs Architecture: http://ribsarchitecture.com/video-course-waitlist Need to prepar...

Nov 29, 202016 minEp. 73

Protected Visibility Modifier in Swift with Daniel Hall

Daniel Hall and Alex talk about protected visibility modifier in objective oriented languages and how they wish it was added to Swift language. They talk about reasons for why it is needed and what workarounds you could use to achieve semi-similar result. Sign up for Alex's upcoming video course about iOS System Design Interview: https://iosinterviewguide.com/system-design-interview Sign up for Alex's upcoming video course about RIBs Architecture: http://ribsarchitecture.com/video-course-waitlis...

Nov 08, 202016 minEp. 72

Why I wasn't recording all this time? The Truth Exposed.

Alex talks about why he’s been missing in action and haven’t published any podcast episodes in a while. Sign up for Alex's upcoming video course about iOS System Design Interview: https://iosinterviewguide.com/system-design-interview Sign up for Alex's upcoming video course about RIBs Architecture: http://ribsarchitecture.com/video-course-waitlist Need to prepare for an iOS Engineer Interview? https://iosinterviewguide.com Connect with us: https://twitter.com/insideiosdev Email us at hello@insid...

Oct 25, 20208 minEp. 71

Law of Demeter, Async Programming, Naming Things with Tom Mornini

LinkedIn Law Of Demeter thread Twitter Law Of Demeter thread Tom on Twitter Tom on LinkedIn Sign up for Alex's upcoming video course about iOS System Design Interview: https://iosinterviewguide.com/system-design-interview Sign up for Alex's upcoming video course about RIBs Architecture: http://ribsarchitecture.com/video-course-waitlist Need to prepare for an iOS Engineer Interview? https://iosinterviewguide.com Connect with us: https://twitter.com/insideiosdev Email us at hello@insideiosdev.com...

Jul 08, 202046 minEp. 70

Data Observation in SwiftUI with Dainel Hall

Alex talks to Daniel Hall about SwiftUI data observation, Environment, EnvironmentObject, ObservableObject, and State. Daniel is an iOS architect at Wayfair. Environment EnvironmentObject ObservableObject State Daniel Hall on Twitter @_danielhall Sign up for Alex's upcoming video course about iOS System Design Interview: https://iosinterviewguide.com/system-design-interview Sign up for Alex's upcoming video course about RIBs Architecture: http://ribsarchitecture.com/video-course-waitlist Need to...

Jun 08, 202051 minEp. 69

iOS Interview Questions For Senior Developers in 2020 Part 2

Alex continues to cover his article iOS Interview Questions For Senior Developers in 2020. In this episode he covers questions: What is MVC? What do you know about singletons? Where would you use one and where would you not? What’s different between delegate and KVO? Links: iOS Interview Questions for Senior Developers in 2020 article Alex's book The iOS Interview Guide Systems Design Interview Course Submit interview questions you want me to answer here: https://iosinterviewguide.com/submit-que...

Apr 27, 202015 minEp. 68

iOS Interview Questions For Senior Developers in 2020 Part 1

Alex talks about an article he recently published - "iOS Interview Questions For Senior Developers in 2020" He covers first 3 questions from the article: What are the main features and advantages or disadvantages of Swift? What is an iOS application and where does your code fit into it? How is memory management handled in iOS? Links: iOS Interview Questions for Senior Developers in 2020 Article Alex's book The iOS Interview Guide Want one of your interview questions answered on podcast? Submit t...

Apr 13, 202015 minEp. 67

iOS System Design Interview

Alex talks about iOS system design interview, what to expect, what's important to focus on and what complexity a potential e-commerce application might have. The iOS System Design Interview Video Course Sign up for Alex's upcoming video course about RIBs Architecture: http://ribsarchitecture.com/video-course-waitlist Need to prepare for an iOS Engineer Interview? https://iosinterviewguide.com Connect with us: https://twitter.com/insideiosdev Email us at hello@insideiosdev.com...

Mar 30, 202020 minEp. 66

VIPER with Jeff Gilbert

Alex talks to Jeff Gilbert about VIPER architecture, how it came to be and how this architecture helps scale iOS codebases. Jeff is the author of VIPER. This episode sponsor is healr.io Jeff's twitter @heyjeffg Architecting iOS Apps with VIPER (objc.io) https://literati.com/ Sign up for Alex's upcoming video course about RIBs Architecture: http://ribsarchitecture.com/video-course-waitlist Need to prepare for an iOS Engineer Interview? https://iosinterviewguide.com Connect with us: https://twitte...

Feb 25, 202057 minEp. 64

Asynchronous Work on iOS (Combine Edition) with Leo Dion

Alex interviews Leo Dion about his recent article Asynchronous Multi-Threaded Parallel World of Swift. They talk about async work on iOS, options developers had previously (from low level to high), and then discuss how new Apple frameworks Swift Nio and Combine helps solve asynchronous tasks on iOS. Unfortunately the chat transcript for this call was lost and some of the links didn't make it into show notes. Leo's article - Asynchronous Multi-Threaded Parallel World of Swift Leo's 360 iDev talk ...

Jan 27, 202032 minEp. 63

Protocol Extension Overuse

Alex explains how overusing extensions and protocol extensions in Swift leads to unpredictable runtime bugs. Sign up for Alex's upcoming video course about RIBs Architecture: http://ribsarchitecture.com/video-course-waitlist Need to prepare for an iOS Engineer Interview? https://iosinterviewguide.com Connect with us: https://twitter.com/insideiosdev Email us at hello@insideiosdev.com...

Nov 27, 201924 minEp. 62

Optionals Are Evil..?

https://twitter.com/_ivancr/status/1180199237398626304?s=20 Need to prepare for an iOS Engineer Interview? https://iosinterviewguide.com Connect with us: https://twitter.com/insideiosdev Email us at hello@insideiosdev.com

Oct 28, 201914 minEp. 61

Flutter with Rody Davis

Alex interviews Rody Davis about Flutter, a cross platform framework for iOS and Android development. They also address cross platform development issues Dropbox experienced with their mobile apps. Dropbox drops mobile cross platform C++ Flutter Dropbox's cross platform C++ issues article Rody on Twitter Rody's website Rody's Github Need to prepare for an iOS Engineer Interview? https://iosinterviewguide.com Connect with us: https://twitter.com/insideiosdev Email us at hello@insideiosdev.com...

Oct 07, 201936 minEp. 60

Cross-platform code sharing via C++ at Dropbox with Eyal Guthmann

Recently, Dropbox published a blog illustrating the costs & overhead of using C++ to code share between iOS and Android. The author, Eyal Guthmann from Dropbox, joins us to elaborate more on the topic. Was the problem C++? Why couldn't Dropbox simply hire more C++ developers? Why not React Native or Flutter? Is cross platform mobile development simply not viable? Interested in C++ or mobile development? Dropbox is hiring! Dropbox C++ drop article Running into problems with shared cross platf...

Sep 19, 201944 minEp. 59

VIPER First Impressions

Alex talks about his first impressions working with VIPER architecture. He walks through each part of the architecture, compares it to RIBs, and talks about modularization. Need to prepare for an iOS Engineer Interview? https://iosinterviewguide.com Connect with us: https://twitter.com/insideiosdev Email us at hello@insideiosdev.com

Sep 09, 201933 minEp. 58
For the best experience, listen in Metacast app for iOS or Android