Fatbobman (东坡肘子)

Fatbobman (东坡肘子)

@fatbobman.com

Swift & SwiftUI enthusiast | Tech blogger Blog: http://fatbobman.com Newsletter: http://weekly.fatbobman.com @fatbobman at X @fatbobman@mastodon.social https://www.linkedin.com/in/fatbobman/

661 followers261 following463 posts

Endless gratitude to the extraordinary souls who so freely entrusted us with the priceless wisdom they bore: Cutefish, Alok Singh, Snow Wu, @onev.cat, Apoorv Darshan, @pepicrft.bsky.social, Hao Liu, Cyandev and Harkhowalia

Fatbobman’s Swift Weekly #159 is now available! When Apps Are No Longer Tied to a Specific Operating System 🔭 Running Mac apps on Linux 🧷 iOS Haptic Pattern Guide ✨ SimRun: Run iOS Apps in Independent Mac Windows more... weekly.fatbobman.com/p/fatbobman...

Huge shoutout to this weeks sponsor: Swift Pro! Love Swift, but not Xcode? Swift Pro adds Swift to IntelliJ IDEA: SwiftPM and Xcode workflows, debugging, testing, SwiftUI previews, plus familiar JetBrains navigation and refactoring. 👉 l.fatbobman.com/sb-swift-pro

l.fatbobman.comSwift Pro - IntelliJ IDEs Plugin | MarketplaceSwift Pro brings compiler-powered Swift development into IntelliJ IDEA: edit and navigate code, refactor connected declarations and callers, build SwiftPM and Xcode...

Fatbobman’s Swift Weekly #158 is now available! Who Is the Real Threat to AI-Relay Apps? 🔭 iOS 27: App Intents Testing 🔍 HomeView and Apple TV 4K 🌞 iPhone Use: Let AI Assistants Control a Real iPhone over USB more... weekly.fatbobman.com/p/fatbobman...

Endless gratitude to the extraordinary souls who so freely entrusted us with the priceless wisdom they bore: Anton Gubarenko, Artem Novichkov, Sarun Wongpatcharapakorn, @mjtsai.bsky.social, Tiago Henriques, Bas Broek, ZhongErXin, GuoYu, Noah and @markbattistella.com

Fatbobman’s Swift Weekly #158 is now available! Who Is the Real Threat to AI-Relay Apps? 🔭 iOS 27: App Intents Testing 🔍 HomeView and Apple TV 4K 🌞 iPhone Use: Let AI Assistants Control a Real iPhone over USB more... weekly.fatbobman.com/p/fatbobman...

Endless gratitude to the extraordinary souls who so freely entrusted us with the priceless wisdom they bore: @massicotte.org, Bruno Valente Pimentel, Szymon Lorenz, @szamski.bsky.social, Manuel Lorenzo Parejo, Pedro Gomes, AnnotateIt, Ethan Parker and @lcandy.bsky.social

Fatbobman’s Swift Weekly #157 is now available! When Build in Public Goes Back Underground 🧷 Revisiting "Split Isolation" 🧠 SwiftUI Profiling with Instruments ✨ From Annotation to Create ML Training on Mac more... weekly.fatbobman.com/p/fatbobman...

UIKit is better suited for AI coding agents than SwiftUI? AI doesn’t hate abstraction—it hates unverifiable black boxes. As abstraction moves up, how can verification keep pace? My thoughts on Agent Ergonomics: fatbobman.com/en/posts/ai...

fatbobman.comAI-Friendly Frameworks - As Abstraction Moves Up, How Can Verification Keep Pace?Is UIKit really better for coding agents than SwiftUI? The issue isn't abstraction, but verification. A deep dive into stable models and Agent Ergonomics.

Huge shoutout to this week's sponsor: Transcribatron ! Transcribatron transcribes on-device, syncs two-way with your Obsidian vault, and ships an MCP server so Claude Code can query your meetings. Use your own API key or a local model. 👉 l.fatbobman.com/sb-transcrib...

Fatbobman’s Swift Weekly #156 is now available! Swift Server Has Another Google 🔍 SwiftUI modifier Order Is Matrix Order 🧠 How to reduce token usage ✍️ App Store Screenshots Generator more... weekly.fatbobman.com/p/fatbobman...

Endless gratitude to the extraordinary souls who so freely entrusted us with the priceless wisdom they bore: @johnsundell.bsky.social, @mecid.bsky.social, Mihaela Mihaljević Jakić, @avanderlee.com, @danielsaidi.bsky.social, Natascha Fadeeva, @onev.cat, @harshil.net, @swmansion.com and Parth Jadhav

Fatbobman’s Swift Weekly #156 is now available! Swift Server Has Another Google 🔍 SwiftUI modifier Order Is Matrix Order 🧠 How to reduce token usage ✍️ App Store Screenshots Generator more... weekly.fatbobman.com/p/fatbobman...

Fatbobman (东坡肘子) reposted

Xcode Preview MCP lets AI "see" SwiftUI, but agent automation hits real walls: • Can't specify render devices • Silent stale screenshot caches • Hot-reload crashes & macro index bugs How to fix It—and Unlocks the Full Potential of Div Preview 👇 fatbobman.com/en/posts/le...

Deep thanks to those who generously shared their priceless wisdom: Xiangyu Sun, Omar Elsayed, Irving Popovetsky, Snow Wu, @jacobstechtavern.com, codelaby, @avanderlee.com, Ronnie W., Anton Gubarenko, @Sarun W, Josh Lin, @natpanferova.bsky.social and @hishnash.bsky.social

Fatbobman’s Swift Weekly #155 is now available! The Month iPhone Duo Gives Developers 🔍 Running iOS Background Tasks Reliably 🧠 Dissecting Xcode 27’s mcpbridge 🌞 iPhone Duo & AnyOS 27 Adaptation more... weekly.fatbobman.com/p/fatbobman...

Fatbobman (东坡肘子) reposted

SwiftUI ArrangementView handles many layout decisions for us, but the content relationship is still ours to define: Who is primary? Who can disappear? Do split and overlay really share the same logic? Its sweet spot, I found, is also its boundary. fatbobman.com/en/posts/ar...

fatbobman.comArrangementView - Think Before You ArrangeAn architectural critique of SwiftUI's ArrangementView for iPhone Duo. Explore split vs. overlay trade-offs, state pitfalls, and why you must think before you arrange.

SwiftUI ArrangementView handles many layout decisions for us, but the content relationship is still ours to define: Who is primary? Who can disappear? Do split and overlay really share the same logic? Its sweet spot, I found, is also its boundary. fatbobman.com/en/posts/ar...

fatbobman.comArrangementView - Think Before You ArrangeAn architectural critique of SwiftUI's ArrangementView for iPhone Duo. Explore split vs. overlay trade-offs, state pitfalls, and why you must think before you arrange.

Endless gratitude to the extraordinary souls who so freely entrusted us with the priceless wisdom they bore: Jon Kelley, Anton Gubarenko, Kyle Ye, Itsuki Kamizuru, Sarun Wongpatcharapakorn, @0xtim.bsky.social, Artem Novichkov and Gregory Moskaliuk

Fatbobman’s Swift Weekly #154 is now available! A “Native” Debate Over SwiftUI Animation 🧷 How we built Devin's Mac 🔍 How SwiftUI animation works 🌞 Vapor 5 Beta Released and more... weekly.fatbobman.com/p/fatbobman...

Fatbobman (东坡肘子) reposted

Xcode 27.2 brings JSON to Xcode project configuration. The new project.xcproj replaces the pbxproj build graph — not the whole .xcodeproj bundle. What actually improves, what stays the same, and why Apple filed the docs under Coding Intelligence. fatbobman.com/en/posts/fr...

fatbobman.comFrom pbxproj to xcproj - Xcode Project Configuration Gets a JSON FormatXcode 27.2 replaces the pbxproj build graph with JSON via project.xcproj. What really changes, how to migrate, and what it means for Tuist and XcodeGen.

Xcode 27.2 brings JSON to Xcode project configuration. The new project.xcproj replaces the pbxproj build graph — not the whole .xcodeproj bundle. What actually improves, what stays the same, and why Apple filed the docs under Coding Intelligence. fatbobman.com/en/posts/fr...

fatbobman.comFrom pbxproj to xcproj - Xcode Project Configuration Gets a JSON FormatXcode 27.2 replaces the pbxproj build graph with JSON via project.xcproj. What really changes, how to migrate, and what it means for Tuist and XcodeGen.

Endless gratitude to the extraordinary souls who so freely entrusted us with the priceless wisdom they bore: Adrian Prantl, Artem Mirzabekian, Mia Koring, Wesley Matlock, @stewartlynch.bsky.social, Mike Apurin, @typ0genius.com, 이영준, Sagar Unagar, Jordan Morgan and Norikazu Muramoto

Fatbobman’s Swift Weekly #153 is now available! The Opportunities and Challenges of iPhone Duo 🔭 Module Tracking in Swift Debug 📈 Abstracting SwiftUI state with scopes 🌞 Adapting for iPhone Duo ✨ SwiftMusic: Declaring Music in Swift more... weekly.fatbobman.com/p/fatbobman...

Endless gratitude to the extraordinary souls who so freely entrusted us with the priceless wisdom they bore: @eidhof.nl, Florian Kugler, Simon Leeb, @davelester.dev, Kyle Ye, Harald Achitz, Kyle Browning, Alex Logan, Matthaus Woolard and Csaba Turdesan

Fatbobman’s Swift Weekly #152 is now available! When the Mac mini’s Price Is No Longer Mini 🧷 The End of Swift Talk 🔍 OpenSwiftUI on ESP32-C3 🧠 Multiplatform Swift, with C++ dependencies more... weekly.fatbobman.com/p/fatbobman...

Fatbobman (东坡肘子) reposted

3,000 rows. SwiftData list load: 176 MB / 0.30s. After splitting the model: 0.9 MB / 0.029s. The gap isn't SwiftUI's List. SwiftData dropped Core Data's faulting — the fetch completes and loading completes with it. Optimization has to start at modeling. fatbobman.com/en/posts/sw...

Endless gratitude to the extraordinary souls who so freely entrusted us with the priceless wisdom they bore: @johnsundell.bsky.social, Irving Popovetsky, Wesley Matlock, Matthaus Woolard, @stewartlynch.bsky.social, Gustavo Fão Valvassori, Sarunw and Kyle Ye

Fatbobman’s Swift Weekly #151 is now available! Just a Few Keystrokes 🧷 Running iOS Background Tasks Reliably ⚡ TipKit in a Shipping App ✨ JindoKit: Preview Dynamic Island in your app more... weekly.fatbobman.com/p/fatbobman...

Fatbobman (东坡肘子) reposted

Endless gratitude to the extraordinary souls who so freely entrusted us with the priceless wisdom they bore: @daveverwer.com, ilawsonlu, @seanallen.bsky.social, Wesley Matlock, @twostraws.bsky.social, Mia Koring, govi and Adam Zethraeus

Fatbobman’s Swift Weekly #150 is now available! AI Wanted to Give Up. The Human Didn’t. 🔭 What is a package registry? 🔍 OCR Gives You a Map 🧠 6 ways to promote your app more... weekly.fatbobman.com/p/fatbobman...

Fatbobman (东坡肘子) reposted

From "Using AI" to "Delegating to AI" is more than just prompt engineering—it’s a complete overhaul of system invariants. My new blog post details my thoughts on building Task-Driven: why a stable B+ is far better than an erratic A. fatbobman.com/en/posts/fr...

fatbobman.comFrom Using AI to Delegating Work to AI - Some ThoughtsFrom using AI to delegating real work: explore predictable AI agents, bounded acceptance criteria, durable handoffs, and the Task-Driven workflow.

From "Using AI" to "Delegating to AI" is more than just prompt engineering—it’s a complete overhaul of system invariants. My new blog post details my thoughts on building Task-Driven: why a stable B+ is far better than an erratic A. fatbobman.com/en/posts/fr...

fatbobman.comFrom Using AI to Delegating Work to AI - Some ThoughtsFrom using AI to delegating real work: explore predictable AI agents, bounded acceptance criteria, durable handoffs, and the Task-Driven workflow.

Endless gratitude to the extraordinary souls who so freely entrusted us with the priceless wisdom they bore: Artem Novichkov, Anton Gubarenko, Kyle Browning, Noam Efergan, @heckj.bsky.social, Mohammad Azam and Maksim

Fatbobman’s Swift Weekly #149 is now available! Who Is the Slower App Review Process Actually Stopping? 🔭 ContentBuilder Explained 🧷 Headless Xcode 🧠 From XCUITest to Promo Video more... weekly.fatbobman.com/p/fatbobman...

Fatbobman (东坡肘子) reposted

Why is SwiftUI so much faster to compile in Xcode 27? The new `ContentBuilder` splits view construction from validation with parameter packs. In tests, an 11-level nested layout went from a 10.9s timeout to 5.38ms. fatbobman.com/en/posts/co...

fatbobman.comContentBuilder Explained - The Secret Behind SwiftUI's Type-Checking SpeedupDeep dive into SwiftUI's ContentBuilder. Learn how decoupling construction and validation improves compiler type-checking performance, backed by benchmarks.

Why is SwiftUI so much faster to compile in Xcode 27? The new `ContentBuilder` splits view construction from validation with parameter packs. In tests, an 11-level nested layout went from a 10.9s timeout to 5.38ms. fatbobman.com/en/posts/co...

fatbobman.comContentBuilder Explained - The Secret Behind SwiftUI's Type-Checking SpeedupDeep dive into SwiftUI's ContentBuilder. Learn how decoupling construction and validation improves compiler type-checking performance, backed by benchmarks.

Endless gratitude to the extraordinary souls who so freely entrusted us with the priceless wisdom they bore: @massicotte.org, 이영준, Artem Novichkov, Alexander Weiß, Tibor B., Karthik K and Kyle Ye

Fatbobman’s Swift Weekly #148 is now available! Apple Intelligence Has Passed Chinese Government Review and Is Coming to China 🔭 Controlling Orphans in SwiftUI Text ⚡ Weekly Tuist News #1 🔥 Swift Subprocess 1.0 more... weekly.fatbobman.com/p/fatbobman...