Hunting memory leaks with Instruments: three real scenarios
Memory leaks are the sneakiest problem in iOS apps. Real examples using Xcode Instruments' Leaks and Allocations tools.
What actually matters about CORS: preflight, credentials, wildcard
Every frontend developer runs into CORS errors. Here is how it actually works and what each header really does.
Swift 6 concurrency migration: are you actually ready?
Swift 6 makes strict concurrency checking the default. How I migrate a 100K+ LOC codebase, and how to really understand actors, Sendable,…
Distributed rate limiting: sharing state across a server cluster
Rate limiting on a single server is easy. Across a 5 node cluster it is a shared state problem. Redis Lua, database,…
iOS 18 features that actually pay off in shipping apps
WWDC 2024 introduced iOS 18. Apple Intelligence, the new Control Center, tinted icons. Which of them are worth shipping, and which are…
Code review that improves quality without slowing the team down
Most teams' code review is either too slow or too shallow. Both are bad. Here is how I run reviews that are…
iOS 17 Privacy Manifest: how to fill it in correctly
Apple's PrivacyInfo.xcprivacy file is mandatory at submission time. Get it wrong and you get rejected.
API test automation: from Postman to Newman, straight into CI
Running API tests by hand is a bad habit. The discipline to take a Postman collection into a CI pipeline.
Fastlane release automation: the pipeline I run across 12 apps
An iOS release should be one command. Here's the repeatable pipeline I use on 12 shipped apps.
Where circuit breakers actually earn their keep in production
When a downstream service fails, don't go down with it. When circuit breakers are needed, how to implement them correctly.
Xcode Cloud or Fastlane: when each one earns its keep
Apple's native CI/CD is Xcode Cloud. Is it a Fastlane replacement or a complement? After trying it on two projects, here's how…
Doc-first API development with OpenAPI: the discipline that pays off
Writing docs after the fact is an anti-pattern. Four practical wins from writing the OpenAPI spec first.