# 85 - Have You Registered for WWDC 2025 Group Labs Yet?

Published on

Three months ago, during my communication with a certain Apple department, I reiterated my expectation for Apple to continue hosting group Q&A activities like Lounges or Ask Apple. I’m delighted to see that WWDC 2025 brings back this new group interaction initiative in the form of Group Labs.

From the information currently disclosed, besides switching the participation platform from Slack to Webex, there have been some adjustments to the group categorization. The persistence frameworks and iCloud services that I personally follow closely don’t have corresponding Labs, which perhaps suggests to some extent that these areas won’t see major changes this year. Meanwhile, SwiftUI continues to maintain its dedicated Lab rather than being integrated into a comprehensive UI framework Lab, an arrangement that also highlights SwiftUI’s significance.

Due to time zone differences, the scheduling of these activities isn’t particularly friendly for me (mostly happening during midnight or early morning hours). However, I still greatly enjoy the process of carefully browsing through the Q&A content after the live sessions, always learning quite a bit and staying updated with the latest developments. I’m just slightly concerned that with the platform switch to Webex, whether these valuable interactive contents will still be available for review for some time after the live sessions.

Compared to the intensive interactions during WWDC, I’m more looking forward to Apple continuing to host Ask Apple-like activities in the months following WWDC. By that time, developers will have gained some practical experience with the new APIs, making their questions more targeted and helping them better understand Apple engineers’ responses, thereby fostering deeper technical discussions.

Regardless, being able to continue this group Q&A tradition is worthy of recognition. If you haven’t registered yet, I’d suggest not hesitating. You can register to participate in the activity here.

Original

Experience the Charm of Swift: One-Click DataFrame Export

The more I work with Swift, the more captivated I am by its elegance. Swift allows me to express programming ideas with clarity, precision, safety, modernity, and grace. While these traits are easy to appreciate in theory, I recently built a small feature—just over a hundred lines—that beautifully brought them all together.

By combining Swift’s generics, KeyPath, protocol extensions, and ResultBuilder, we’ll build a type-safe DataFrame export utility that integrates seamlessly with TabularData. Let’s explore column mapping, conditional logic, and a concise DSL syntax to experience the unique charm of Swift.

Recent Recommendations

Exploring Concurrency Changes in Swift 6.2

Many developers have found themselves puzzled by the evolution of concurrency in Swift 6. In this article, Donny Wals highlights several important updates in Swift 6.2: nonisolated(nonsending), the @concurrent attribute, and the NonisolatedNonsendingByDefault feature flag. While these changes may seem subtle, they can significantly alter execution context and default behavior—understanding and applying them well takes time and practice.

Learning (or wrestling with) concurrency might just become part of the daily rhythm throughout the Swift 6 cycle.

Creating Xcode Source Editor Extensions

Is Xcode missing a feature? Maybe we can build it ourselves. In this article, Moritz Philip Recke walks through creating, debugging, and distributing a Source Editor Extension in Xcode 16.2. From adding a new target, configuring Info.plist, implementing XCSourceEditorCommand, to testing with a second instance of Xcode and finalizing code signing—the entire development process is covered.

Xcode’s plugin ecosystem still lags behind other IDEs, largely due to Apple’s conservative APIs. Let’s hope for more openness in Xcode 17.

Apple Developer Relations

Everyone has a WWDC wish list. For troz, improving developer relations may be more urgent than flashy new features. In this post, he proposes three constructive ideas: open up iOS like macOS, make Feedback Assistant more transparent, and fix the long-criticized App Review process.

Once lost, trust is harder to regain than to build. Developers care more about Apple’s everyday attitude than the enthusiastic WWDC keynotes.

Mesh Gradients in SwiftUI

SwiftUI in iOS 18 and macOS 15 introduces MeshGradient, a powerful new way to define complex, multi-directional gradients via control points. Unlike linear or radial gradients, mesh gradients enable nuanced and non-linear color transitions. Natalia Panferova walks through its basic usage (defining mesh size and color grid), advanced control via BezierPoint, and dynamic animation using TimelineView.

As iOS 19 nears, this “new” feature might finally find its way into more real-world products.

Reading Piped Input in Swift Executables

Swift isn’t just for iOS. It shines in CLI development too. In this article, Natan Rolnik demonstrates how to handle piped input using Swift—a common requirement for command-line tools. Through building a JSON beautifier, he shows how to check for piped input, read from standard input asynchronously, and process data efficiently.

Understanding LLDB Print Commands for iOS Debugging with Xcode

LLDB provides several print commands for inspecting variables at breakpoints. Natascha Fadeeva explains three of the most useful ones: v, p, and po. She recommends using p or po for general-purpose debugging due to their flexibility, and v when dealing with time-sensitive code, such as concurrency issues, where evaluating expressions may cause side effects.

Tools

ImmutableData

Co-Created by Rick Van Voorden and Bill Fisher, ImmutableData is a SwiftUI state management architecture inspired by Flux and Redux. Tailored for modern Apple platforms, it emphasizes:

  • ✅ Unidirectional data flow
  • ✅ Immutable values
  • ✅ Functional programming principles
  • ✅ Strict separation of concerns and modular design

At its core, the framework encourages declarative UI with immutable state. All state transitions are triggered via Actions and processed in a centralized State layer, with the View layer reacting to state changes via subscriptions—strictly following the Action → State → View flow.

Want to see how this can be adopted incrementally? Check out the official migration tutorial: ImmutableData-FoodTruck

ObservableDefaults - Elegant Persistence in SwiftUI

ObservableDefaults is a Swift library I created to provide two practical macros that seamlessly integrate UserDefaults and NSUbiquitousKeyValueStore (iCloud KVS) into SwiftUI’s Observation system. By simply declaring properties, you can automatically bind them to local or cloud-based storage. SwiftUI views will automatically react to value changes—whether triggered from within the app, via iCloud sync, or from external sources. It enables persistent data to flow naturally within SwiftUI’s reactive architecture.

Weekly Swift & SwiftUI highlights!