41554 blogs · [
{
"id": "01a0de5a-cedc-7392-8e8a-99035620b89e",
"title": "withTaskCancellationShield: Swift 6.4 new feature",
"url": "https://www.swiftdifferently.com/blog/swift/concurrency/with-task-cancellation-shield",
"published_at": "2026-09-26T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b77ed34c4",
"title": "Communication between main app and extension using Darwin Notification",
"url": "https://www.swiftdifferently.com/blog/swift/drawin-notification",
"published_at": "2026-08-30T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7868f153",
"title": "Actors in Swift: The Problem They Solve and How it Works",
"url": "https://www.swiftdifferently.com/blog/swift/concurrency/how-actors-work",
"published_at": "2026-06-18T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b793a2a7c",
"title": "How Do You Build a Mutex That Works with async/await ?",
"url": "https://www.swiftdifferently.com/blog/swift/concurrency/how-do-you-build-a-mutex-that-works-with-async-await",
"published_at": "2026-05-31T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7a289d61",
"title": "Modern Isn't a Value. Fit Is.",
"url": "https://www.swiftdifferently.com/blog/system-desgin/modern-isnot-a-value-fit-Is",
"published_at": "2026-05-23T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7a8e9dc5",
"title": "Finally found a use case for .fixedSize 😅",
"url": "https://www.swiftdifferently.com/blog/swiftui/fixedsize-usecase",
"published_at": "2026-05-09T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7abf32e2",
"title": "I Couldn't Find the Perfect Browser, So I Built One with AI in two weeks",
"url": "https://www.swiftdifferently.com/blog/career-advice/how-I-built-full-browser-in-two-weeks",
"published_at": "2026-04-23T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7b484b1a",
"title": "The 4-Step Process I Use to Create SwiftUI Animations",
"url": "https://www.swiftdifferently.com/blog/swiftui/swiftui-animation-with-example",
"published_at": "2026-02-20T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7b52495a",
"title": "How Your Views Actually Move",
"url": "https://www.swiftdifferently.com/blog/swiftui/swiftui-animations-deep-dive",
"published_at": "2026-02-04T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7b584551",
"title": "The Secret to Buttery Smooth SwiftUI",
"url": "https://www.swiftdifferently.com/blog/swiftui/swiftui-performance-article",
"published_at": "2026-01-29T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7b84a8b6",
"title": "How I Stopped Resisting AI and Started Teaching It",
"url": "https://www.swiftdifferently.com/blog/swiftui/How I stopped-resisting-ai-and-atarted-teaching-it",
"published_at": "2026-01-24T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7c5e74ba",
"title": "The Magic Behind UUID() in Swift, How Your App Generates Truly Unique Identifiers",
"url": "https://www.swiftdifferently.com/blog/swift/the-magic-behind-uuid-in-swift",
"published_at": "2025-08-10T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7d1cea35",
"title": "AsyncImage the way I like it",
"url": "https://www.swiftdifferently.com/blog/swiftui/asyncImag-the-way-i-like-it",
"published_at": "2025-05-09T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7d4b2c40",
"title": "What I learned after doing magic for half my age.",
"url": "https://www.swiftdifferently.com/blog/career-advice/what-i-learned-from-doing-magic",
"published_at": "2025-04-09T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7dbfb4b1",
"title": "Creating Paging ScrollView using _VariadicView",
"url": "https://www.swiftdifferently.com/blog/swiftui/creating-paging-scrollView",
"published_at": "2025-03-25T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7ddaf71b",
"title": "Modern Concurrency and Legacy code",
"url": "https://www.swiftdifferently.com/blog/swift/concurrency/modern-concurrency-and-legacy-code",
"published_at": "2025-02-15T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7e2594ac",
"title": "Future of concurrent code in Swift",
"url": "https://www.swiftdifferently.com/blog/swift/concurrency/future-concurrency",
"published_at": "2025-01-31T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7e447dd3",
"title": "Stop Labeling Yourself, The Hidden Cost of the “Junior Developer” Mindset",
"url": "https://www.swiftdifferently.com/blog/career-advice/stop-labeling-yourself",
"published_at": "2025-01-24T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7f02892b",
"title": "Uncovering and Solving a SwiftUI Text Animation Bug",
"url": "https://www.swiftdifferently.com/blog/swiftui/uncovering-anim",
"published_at": "2025-01-17T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7f0be9a9",
"title": "Swift’s Hidden Gem, Understanding the @retroactive Keyword",
"url": "https://www.swiftdifferently.com/blog/swift/hidden-gem",
"published_at": "2024-12-31T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7f1ec59c",
"title": "Zero to Hero My journey to my first paying job in a FinTech company",
"url": "https://www.swiftdifferently.com/blog/career-advice/Zero-to-Hero",
"published_at": "2024-11-01T00:00:00+00:00"
},
{
"id": "01a087e8-8061-7185-8b36-594b7fea27f2",
"title": "Mastering Swift Macro",
"url": "https://www.swiftdifferently.com/blog/swift/Mastering-Swift-Macro",
"published_at": "2024-10-25T00:00:00+00:00"
}
] posts Claim your blog