Liquid Glass can be gradually rolled out
Explains how to gradually roll out Liquid Glass in SwiftUI apps using a private User Defaults key.
Scott Berrevoets is an iOS-focused software engineer with over a decade of experience building and scaling mobile platforms. Currently at Speak and formerly a long-time iOS tech lead at Lyft, he writes about iOS development, architecture, and mobile engineering.
36 articles from this blog
Explains how to gradually roll out Liquid Glass in SwiftUI apps using a private User Defaults key.
Explains how GitHub handles Git LFS, including storage costs, bandwidth usage, and strategies for managing large files like PNG snapshots.
Explores ZeroVer, a satirical yet realistic alternative to Semantic Versioning for software that stays in 0.x releases.
Explores how Objective-C enums use FourCC codes as string-backed integer constants, with AVAudioSessionErrorCode examples.
Discovers Swift's Optional.take() method that returns a value and sets the optional to nil.
Explores the evolving value of code review in the AI era, where AI agents generate and review code, challenging traditional human review processes.
Explains how Claude loads files lazily via markdown links vs greedily via @-syntax in Claude Code.
A retrospective on using Interface Builder for iOS UI development at scale, its benefits, challenges, and the migration to SwiftUI.
Learn how to configure macOS to remember SSH passphrases using Keychain for passwordless connections.
How to use git commands to find ignored files and the reason they are ignored.
Explains a Swift Package Manager bug where moving localization files to an SPM package breaks app translations, detailing the cause and a workaround.
Explores the challenges of managing code deprecations on iOS, covering both vendor and internal deprecations, and discusses the limitations of Apple's tooling.
Explores how tech debt in infrastructure code creates a self-perpetuating 'flywheel' effect, making it extremely costly and difficult to fix.
Explores best practices for modeling state in SwiftUI apps, emphasizing value types and avoiding common pitfalls like singletons.
A developer explains how to create and manage a resume using Markdown, source control, and tools like pandoc and wkhtmltopdf for PDF conversion.
An iOS developer reflects on the massive growth in complexity and specialization within the iOS ecosystem over the past decade, from frameworks to Swift language features.
A guide to extending Neovim's 'K' key to look up word definitions using a custom Python script and dictionary API.
Explores code coverage as a metric for untested code, its limitations, and practical tools for tracking and improving test quality in software development.
A technical article on building a robust testing infrastructure for iOS development, covering modularization, test types, and strategies to reduce flakiness.
A software engineer details the multi-year journey to establish a strong automated testing culture at Lyft, focusing on motivation, infrastructure, and measurement.