Swift Modules and Code/Assets Duplication
How to use SPM modules in an Xcode project with several targets and avoid duplicated code and assets.
How to use SPM modules in an Xcode project with several targets and avoid duplicated code and assets.
A diagnostic of slow Swift build times after modularizing, focusing on module verification and practical fixes to speed up compilation.
Describes problems and solutions when integrating Swift packages into an Objective-C project structure that uses static frameworks.
Explains common pitfalls when validating App Store receipts locally on macOS and why Apple's suggested approach can fail.
Techniques for adjusting animation timing using custom timing functions to achieve more natural, spring-like motion.
Patterns and practical workarounds for using generic view controllers with storyboards when the storyboard needs a concrete class.
Presents `AnyDecodable`, a flexible approach to decoding JSON with `Codable` when the exact types are unknown ahead of time.
Practical steps to modularize an Xcode project into separate frameworks and common pitfalls related to linking and build flags.
A tutorial-style deep dive into working with unsafe pointers in Swift—memory layout, buffers, and patterns to work safely.
A critique of macOS security alerts: why overuse of consent prompts harms usability and the goal of protecting users.
Post-WWDC reflections highlighting notable platform updates and a closer look at SwiftUI.
A short solution for UI tests that need to interact with off-screen elements inside `NSScrollView`.
A practical guide to Xcode's Find features with an emphasis on using search scopes to speed up code navigation.
Explains how the responder chain can cause surprising behavior and techniques to sidestep those issues in Cocoa apps.
A pattern for asserting that something did *not* happen in tests, and how to write reliable inverted expectations.
Practical tips for comparing and reasoning about Xcode build settings, from long-term usage experience.
Introduces a simple Expectation object (backed by `NSCondition`) for waiting on asynchronous tasks outside of XCTest.
How to use `NSSocketPort` to spin up a simple TCP server for testing without adding heavyweight dependencies.
A reflection on the Mac App Store's current problems and ideas for improvements that would help both users and developers.
A short tip on how to run spring animations in reverse (for example by using a negative speed) and why that helps achieve natural UI effects.
An argument that Mojave's Apple Event authorization prompts harm automation and user experience, with suggestions for better approaches.
Approaches for adopting Dark Mode while keeping compatibility with older macOS versions and APIs.
A deep-dive into an NSOperation KVO bug and practical guidance on managing asynchronous operation state to prevent hangs.
A call for developers to organize and advocate for App Store changes—like free trials—that can improve sustainability for users and creators.
How to manage multiple Xcode build configurations with .xcconfig files so build settings stay maintainable and preprocessor logic stays readable.
Practical techniques for creating and sharing deterministic fixtures for iOS UI tests, helping avoid flakiness and sandboxing pitfalls.