Those Who Swift - Issue 215
Weekly note ✏️We all know how AI is becoming a quiet co-pilot in our day-to-day development. Whether it’s generating entire project skeletons, writing boilerplate code, or quickly parsing JSON—AI is becoming a valuable tool that can give you an edge, especially when job hunting. But not all companies are moving at the same pace. While some embrace the change, others resist it. There are still teams assigning multi-day take-home tasks to build yet another HackerNews client—ignoring how little that reveals about real-world problem-solving. Others go further: enforcing onsite-only policies, banning non-local tools, or running live-coding interviews with your camera on to monitor for extra screens or notebooks. Yes, that’s happening—big companies using AI themselves… This growing tension is pushing more developers to rely on assistance. And recent Stack Overflow surveys reflect that shift. So just like the debates between UIKit vs SwiftUI or Combine vs RxSwift, we’re entering a new divide: AI vs non-AI development environments. Get ready to see that become a regular keyword in job listings and CVs. Connect with the "Those Who Swift" team - Justas Markus & Anton Gubarenko 👋 Sponsor 💪How to set up analytics for iOS in SwiftPostHog makes it easy to track and analyze data about how users are using your iOS app. Swift Around the Web 🌐The Evolution of Native Engineering at Tripadvisor: Part 1Benoit Sarrazin details Tripadvisor’s transition from the MVVM-C architecture to The Composable Architecture (TCA) to enhance scalability, testability, and flexibility in their iOS development. By adopting TCA, Tripadvisor achieved more predictable navigation, reduced code complexity, and facilitated a smoother integration with SwiftUI. Should You Use Network Connectivity Checks in Swift?Donny Wals advises against preemptively checking network connectivity in Swift applications. He highlights that network conditions can change rapidly, making such checks unreliable and potentially leading to poor user experiences. Coding 👨💻Ultimate Guide to Dependency Injection for Modular iOS AppsThis comprehensive guide explores the role of Dependency Injection (DI) in building scalable and maintainable modular iOS applications. It discusses the benefits of DI, such as improved flexibility, testability, and separation of concerns, and compares it to alternatives like SwiftUI’s Environment. In a funny manner. Animatable Protocol: Taming Unruly SwiftUI AnimationsFatbobman explores how SwiftUI’s Animatable protocol can resolve inconsistent or malfunctioning animations across different iOS versions. He explains that by conforming to Animatable, developers can gain finer control over animation transitions, ensuring smoother and more predictable behavior. Apple 🍏Tax and Price updates for Apps, In-App Purchases, and SubscriptionsApple has announced upcoming changes to App Store pricing and tax policies. Starting June 2, 2025, pricing for apps and in-app purchases will be adjusted in Brazil and Kazakhstan to account for tax changes, including a new 10% CIDE tax in Brazil for developers outside the country. WWDC25 Labs AnnouncedThis week-long event will feature a series of group labs covering a wide range of topics, including Swift, SwiftUI, visionOS, machine learning, accessibility, and more. Developers are encouraged to register for these sessions to gain insights into the latest technologies and frameworks. Design 🎨Exploring Creative Coding with Swift and SwiftUIThis article delves into the intersection of programming and artistic expression, highlighting how Swift and SwiftUI can be powerful tools for creative coding. The authors discuss the historical context of computational art and demonstrate how SwiftUI’s declarative syntax and real-time previews facilitate the creation of generative art. Other cool stuff 🧰Programmatically Setting Focus on SwiftUI Text Fields with FocusStateGabriel Theodoropoulos explains how to programmatically manage focus on SwiftUI text fields using the @FocusStateproperty wrapper introduced in iOS 15. He demonstrates how to activate a text field via a button tap, dismiss the keyboard conditionally, and set focus automatically when a view appears. Complexity Part 6: Human Nature6 parts and still going: Dmitrii Ivanov delves into how inherent human cognitive traits contribute to software complexity. He discusses limitations such as our difficulty with tracking multiple states, handling layers of indirection, and the mental strain caused by frequent context switching. AI 🤖Google I/O AI HighlightsAt Google I/O 2025, Google introduced a suite of enhancements to the Gemini 2.5 model series, aimed at empowering developers to create more advanced AI applications. Key updates include the launch of Gemini 2.5 Flash Preview, optimized for speed and efficiency in coding and complex reasoning tasks. Tutorials 📒Change a Map Viewpoint with MapKitMatteo Altobello explores how to programmatically control the camera position of a MapKit map within a SwiftUI application using the MapCamera and MapCameraPosition APIs introduced in iOS 17. The tutorial demonstrates creating an interactive map where users can long-press to navigate to a random city, with the camera smoothly adjusting its center, distance, heading, and pitch. Video 🎥Getting Started with Unit Testing for iOS Development in SwiftKarin Prater explains how to setup a Unit Testing with a fresh project and start to write them finally Friends 🤝Get 30% off Natalia Panferova's Swift Gems book. Over 100+ tips to make your Swift code better. Great tips and best practices! Discount code: ThoseWhoSwift Thanks for reading Those Who Swift! Subscribe for free to receive new posts. |