File-system synchronized groups: how Claude Code drives Xcode
An agent can't click the New Project wizard. Xcode 16's file-system synchronized groups are the seam that lets it own every source file anyway.
Notes on the software, games, and music coming out of Imperfect Systems.
RSS feedAn agent can't click the New Project wizard. Xcode 16's file-system synchronized groups are the seam that lets it own every source file anyway.
Writing the CLAUDE.md for a new iOS app before any Swift exists: the MusicKit-in-simulator trap, CloudKit's SwiftData rules, and the learning-project framing.
Hashnode is a third syndication target, and the first over GraphQL: no client gem, a two-step publish flow, and sync by slug instead of draft ID.
The Forem API as the anti-Medium, a shared LinkedIn announce service with idempotency, and the Zeitwerk acronym gotcha that struck twice.
72 Medium posts my database knew nothing about: the RSS cap, an undocumented GraphQL workaround, Unicode apostrophes, and the kamal stdin trap.
My Mac's Docker daemon was a load-bearing part of production deploys. Build-once-deploy-many with Kamal 2, and the three research assumptions that were wrong.
Detecting Medium publishes by polling the RSS feed, LinkedIn's four mandatory headers, and the Zeitwerk acronym rule that broke migration rollback in CI.
Making dashboard titles link to the live posts: a configurable path prefix, a pub_date gate against broken links, and a spec column I scrapped.
In-page Pexels search with Turbo Frames, the auth header quirk that 401s Bearer tokens, and a singleton settings model for the API key.
A push-to-Medium button on a deprecated-but-working API: injectable Net::HTTP, on-demand markdown rendering, and a state machine split between job and service.
Page 15 of 16