SwiftLee Weekly - Issue 266


This week's SwiftLee Weekly covers:

  • Structured spacing in SwiftUI
  • Test scoping traits
  • A great app that nobody knows about

Enjoy this week's SwiftLee Weekly!

THIS WEEK'S BLOG POST

SwiftUI Alert Guide + Code Examples

A SwiftUI alert can be presented in several ways. In this article, we explore these common view modifiers, changing the default action of an alert, and a convenient error-presenting extension I prefer to use in my projects.

SPONSORED

Transform Your Career with the iOS Lead Essentials — Limited Offer

Unlock over 40 hours of expert training, mentorship, and community support to secure your place among the best devs. Click now for early access to this limited offer and a FREE crash course!

THE GOING INDIE PODCAST

Building a Business on Swift on the Server, Vapor & Open Source - Tim Condon

In this episode of the Going Indie Podcast, I chat with Tim Condon, an influential figure in the Swift on the server community and creator of Broken Hands. Besides always wearing shorts and having the perfect podcast voice, Tim's journey is also inspiring.

We explore Tim's journey to becoming an independent developer, managing multiple projects like Vapor, and organizing the Server Side Swift Conference. Tim shares valuable insights on hiring employees, creating a sustainable business, and maintaining a healthy work-life balance.

The conversation also covers Tim's experience speaking at conferences, building a personal brand, and navigating the initial challenges of going indie. This episode offers plenty of practical advice and inspiration for aspiring indie developers.

This episode is sponsored by The Swift Concurrency Course: The Essential Swift Concurrency Course for a Seamless Swift 6 Migration

CURATED FROM THE COMMUNITY

The Great App That Nobody Knows About

This is such a great reminder: “A great app that nobody knows about, is still a great app that nobody knows about.”—if you recognize this, there are tips on making people aware your app exists.
swiftjectivec.com

Structuring Spacing for Scalable Mobile UIs

Did you ever use constants for spacing? It can be an effective way for a consistent design.
mobilesystemdesign.com

Say Goodbye to dismiss - A State-Driven Path to More Maintainable SwiftUI

I love how this article builds up, resulting in a reusable way to present views without using SwiftUI’s built-in dismiss anymore.
fatbobman.com

New in Swift 6.1: Test Scoping Traits

Swift Testing is getting quite some attention in the latest Swift release, and this article dives deeper into one of the new features: Test Scoping Traits.
pointfree.co

Text concatenation vs Text interpolation in SwiftUI

Combining multiple text views into a single view in SwiftUI can be done in several ways. However, for localization purposes, one is better than the other!
nilcoalescing.com

SWIFT EVOLUTION

An overview of last week's Swift Proposal state changes. Check them out when they're in review, as it's your opportunity to influence the direction of Swift's future.

CODE SNIPPET OF THE WEEK

Where usage in Swift

You can find this post on Twitter/X, LinkedIn, or Bluesky.

QUESTION OF THE WEEK

How did you do in Q1 2025?

This week, I'd like to reflect on the first quarter of 2025. I want to show you how I've been doing and give you an idea of how I approach planning and goals.

At each start of the quarter, I sit down and reflect. Did I reach what I hoped to achieve? What were the actual results? What could I have done better? And finally—did something go differently than expected?

The answers to these questions are super powerful and ensure I'm constantly working on the things that matter most. I have a specific goal for the year, which I use to populate smaller goals per quarter (I explain a lot of this in my Going Indie course)

For Q1, I focused on growing RocketSim MRR, RocketSim for Teams ARR, SwiftLee Weekly subscribers growth, SwiftLee articles quality, and Course income. A few conclusions:

  • RocketSim MRR growth faster than expected (reached 113% of my goal)
  • SwiftLee Weekly & SwiftLee blog visitor count reached 80% of the goal. The ideal outcome for stretchy goals
  • RocketSim for Teams (378%) & Courses (370%), however, performed way better than expected

I'm satisfied with the results, but I should've been way better at setting goals for the latter. I didn't expect to release my concurrency course, so that's explained easily. RocketSim for Teams, however, performed way better than we could've hoped for!

The results influence the overall yearly goal. I like to revisit goals and optimize per quarter, even though some prefer not to touch an annual goal. I push myself to reach even higher results by stretching a goal with a higher target.

Most important of all, though, is reflection. Reflecting on a quarter is the fundamental part of this story. If you're unable to reflect, it becomes harder to indicate performance and potential improvements. Q2 just started, so I encourage you to sit down and put yourself up for success by aiming for specific targets. Good luck!

Want to have your question answered next week? Ask your question via this form (anonymously) or reply to this email with your question.

EARN ROCKETSIM LIFETIME

Share and Earn RocketSim Lifetime & a 1-on-1 coaching session

Apple has recognized RocketSim as an Essential Developer Tool in the Mac App Store, and now you can get lifetime Pro access by sharing your unique referral link!

How to get started:

[RH_REFLINK GOES HERE]

Rewards:

  • Earn your first reward after just 3 sign-ups!
  • Check your progress anytime using your referral dashboard.
  • The grand prize? A personalized 1-on-1 career coaching session!

Several subscribers have already claimed their rewards—will you be next?

Thank you so much for your support, and until next Tuesday,

Antoine

SwiftLee Weekly by Antoine van der Lee

A new SwiftLee article, code snippet, Swift Evolution updates, 5 top community articles, and a weekly answer to a question from the community to level up your Swift skills.

Read more from SwiftLee Weekly by Antoine van der Lee

This week's SwiftLee Weekly covers: 3 Indie Marketing Tips Using Task Local values for dependencies Will WWDC have a big impact? Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST Testing push notifications on the iOS simulator Many apps support push notifications, but Xcode doesn't provide an easy way to test them in the Simulator. Your options are limited, and many developers reach out to their physical device combined with some kind of testing server. Luckily, there's a native Mac...

This week's SwiftLee Weekly covers: On-Device AI Models A single line that bricks your iPhone What happens if you don't know the answer? Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST SwiftUI ForEach Explained with Code Examples ForEach in SwiftUI is an essential element that we all use, but it can sometimes be confusing. The use of the Identifiable protocol is key, and an enumerated approach can help you make index-based adjustments for the presented content. SPONSORED What's the...

This week's SwiftLee Weekly covers: A first look at Swift 6.2 A code deprecation coming in iOS 19 Create MCP Servers in Swift Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST Swift 6.2: A first look at how it’s changing Concurrency I'm currently preparing my Deep Dish Swift conference talk and diving deep into what's next for Swift Concurrency. Since Swift is open-source, we have the opportunity to look at the latest changes that are coming up next. A few of those relate to a new...