Home / Blog

Blog

Short technical notes on SaaS, iOS, API and WordPress.

Shipping a closed-source SDK through SPM binary targets

A client needed a closed-source SDK. I used to deliver these as a Cocoapods vendored framework; since moving to SPM, binaryTarget gives…

Blog 3 min

Writing my first Swift macro: killing Codable boilerplate

I was a consumer of Swift macros in 2024 (@Observable, #Preview). In 2025 I had to write one of my own. A…

Blog 4 min

Swift Testing: five concrete wins after moving off XCTest

I’ve been using Swift Testing on two projects. After living with the differences from XCTest, it’s my default on new work. Here’s…

Blog 3 min

SwiftData in production: relationships and migrations that actually hold up

I’ve put SwiftData into production on two projects. The API that looks clean in demo tutorials behaves differently at real data volumes.…

Blog 4 min

Client management: expectations are set before the contract is

The hardest thing in freelancing isn't the tech, it's managing client expectations. Here are the rules I follow from the first call…

Blog 5 min

CDN shootout: Cloudflare, BunnyCDN, Fastly on real projects

I've run all three CDNs in production. Pricing, latency, features, and the quirks you hit only in specific scenarios, all in one…

Blog 4 min

LiteSpeed vs WP Rocket vs W3 Total Cache: which one, when

I've used the three popular WP cache plugins on different sites. Here are the real performance numbers, setup pain, and compatibility notes.

Blog 4 min

API monitoring: the four signals that actually matter during an incident

How I put the Google SRE book's four golden signals into practice. Dashboard layout, alert thresholds, and sample queries for each.

Blog 4 min

ATT without losing the user: pushing opt-in from 19% to 52%

Ask for ATT the wrong way and you lose the user. Here's the pre-prompt strategy and the experiments that pushed my opt-in…

Blog 4 min

Microservice granularity: how small is small enough?

Go too big or too small on microservices and both bite you. Here are the criteria I use and real examples from…

Blog 4 min

Solo dev: how one person ships what a five-person team ships

I learned to deliver fast as a freelancer. Here are the disciplines that actually produce output, and the ones that only look…

Blog 5 min

SSR vs CSR vs static: the trade-offs you actually feel in production

I ran all three rendering models through separate production projects. Real performance numbers and real editor experience, not theoretical comparisons.

Blog 4 min