SwiftLee Weekly - Issue 256


This week's SwiftLee Weekly covers:

  • Debugging the undebuggable
  • Color mixing in SwiftUI
  • Indie app launch learnings

Enjoy this week's SwiftLee Weekly!

THIS WEEK'S BLOG POST

Network Link Conditioner: Simulating Slow Networking

The Network Link Conditioner is part of Apple's additional Xcode tools and allows you to test your app under slow networking conditions. If you're testing your iOS apps for slow networking, there's a better alternative.

SPONSORED

Paywalls Made Easy – Superwall

Huge apps like PhotoRoom, Mojo & Citizen use Superwall to build paywalls without shipping app updates. Learn how.

CURATED FROM THE COMMUNITY

Things that did (and didn't) contribute to Burnout Buddy's success

The journey of releasing apps on your own can be challenging. Bruno Rocha shares what worked (and what not!). If you’re ready to make your side projects successful, don’t miss out on this course.
swiftrocks.com

Color mixing in SwiftUI

I love the new features SwiftUI added regarding colors. This color modifier, explained by Majid Jabrayilov, focuses on color mixing. Ready to become creative?
swiftwithmajid.com

Reducing Motion of Animations

Respecting accessibility settings is essential. Reducing the motion of animations is one of them, and you can quite easily disable SwiftUI animations by following Keith Harrison’s instructions.
useyourloaf.com

Creating a reusable action menu component in SwiftUI

Reusable components make your app more consistent and allow you to build interfaces faster. Peter Friese explains how you can create your own components with an action menu example. Oh, and, if you’re curious how he generated those nice simulator recordings, make sure to check out this app.
peterfriese.dev

Debugging An Undebuggable App

What if your app blocks debuggers, exits if code gets injected, or crashes your whole phone if it detects a jailbreak? Bryce Bostwick figured it out.
bryce.co

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

Using defer in Swift

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

twitter profile avatar
Antoine v.d. SwiftLee 
Twitter Logo
@twannl
12:54 PM • Jan 27, 2025
15
Retweets
240
Likes

QUESTION OF THE WEEK

How can we make user privacy a core habit in iOS development rather than an afterthought?
Anonymous

User privacy is super important, but as the question states often an afterthought. This is bad for the end-user, but also for you as a developer.

You might have stored data in a certain way already, making it harder to switch to a more privacy-focused solution.

For example, protecting a user's email. Say you didn't think about it in the first place and you've stored it as plain text inside the User Defaults. It's 1) not secure and 2) you should've stored it in the keychain.

It's hard to change this mindset other than that we should educate developers early on about the importance of user privacy. You'll probably learn the hard way, or via today's newsletter ;-).

Just like you'll thank yourself from writing tests right away, you'll also thank yourself for taking extra time to store data securely. It will pay of in the long term and if you don't believe me now, you will in a few months.

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

CONFERENCE TICKET GIVEAWAY

Win a ticket for the ARCtic Conference

The World’s Northernmost Apple Developers’ Conference takes place March 11th - 13th, 2025, in Oulu, Finland. With over 20 speakers and two days of tech talks, this is a conference you don't want to miss.

The best part?

Sauna, ice swimming, northern lights, and drinks—perfect for unwinding and connecting with like-minded developers.

Share with 3 friends today

Share your unique referral link with at least 3 friends and you'll automatically join the giveaway. The more referrals you make, the higher your chance of winning.


How to get started:

[RH_REFLINK GOES HERE]

The northern lights await—will you be the winner?

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

Antoine

SwiftLee Weekly by Antoine van der Lee

Swift Evolution updates, 5 top community articles covering Swift development topics.

Read more from SwiftLee Weekly by Antoine van der Lee

This week's SwiftLee Weekly covers: Black Friday discounts Using @Observable with UIKit A SwiftData change you might not have noticed Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST Black Friday: SwiftLee Courses & RocketSim It's that time of year where many products provide Black Friday discounts! Call it cyber week, cyber-something, but I've joined the trend and share the discounts for RocketSim and my courses. SPONSORED iOS auth eating your time? Clerk’s SwiftUI SDK drops sign-in,...

This week's SwiftLee Weekly covers: Approachable Concurrency Xcode Instruments & suspension points Two defeated conference challenges Enjoy this week's SwiftLee Weekly! Next week, I'm dropping my Black Friday sales. Click here if you want to receive the deals this monday in your inbox. THIS WEEK'S BLOG POST Approachable Concurrency in Swift 6.2: A Clear Guide After giving my talk at Do iOS and Pragma Conf, it's time to give you the same learnings in both an article and video. Approachable...

This week's SwiftLee Weekly covers: From App Idea to 10K MRR From Swift to Mojo One Swift mistake... Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST MainActorMessage & AsyncMessage: Concurrency-safe notifications A few warnings were hard to get rid off when migrating to strict concurrency. One of those were notifications, which are tightly connected to GCD dispatch queues. With the new API discussed in this article, you'll be able to post and observe notifications on specific...