Give your simulator superpowers

RocketSim: An Essential Developer Tool
as recommended by Apple

Win a iOSKonf '24 conference ticket with thisfree giveaway

Issue 97
Jan 11, 2022

A team of seniors can still be a team of juniors.

I wrote my first line of code for an iOS app in 2009 (yes, Objective-C back in the days). I've worked at an agency where we did many releases every month. Some of them were automated, but most of them we released manually.

You'll not be surprised to hear that I've got many examples of releases that went wrong:
- Using the wrong commit for the release
- Releasing with a debug scheme
- Targetting staging instead of production

And so on! 

What you might expect is that these failures no longer happen in a team of primarily experienced engineers. Though, for those just getting started with iOS development: we still make mistakes!

We did a release manually this time since our CI didn't work. Suddenly, our local configuration was used for delivering a new App Store build. In this case, we forgot to update our local private keys file, which resulted in us releasing an outdated tracking identifier.

The mistake is not the critical part here; it can happen. It's much more important how you deal with these events. For us, this meant writing down a manual for performing releases manually. The first thing this manual states is to make sure our local keys are up to date before performing the release.

Enjoy this week's SwiftLee Weekly!


You might already be familiar with guard statements, but there's still an interesting point to discuss! When should you use a guard statement over an if let statement? In my opinion, this is one of the most opinionated parts of Swift since it has often been a discussion in pull request reviews I did. New to guard statements? I got you covered.


Increase your application's performance with rich context about errors and slowdowns in your iOS applications. Get started with 2 free months of Sentry’s Business Plan (the best one) with code: SWIFTLEE



Looking for a single place to answer what a specific keyword does? Jordan Morgan got you covered and updated his article this week, making his list even more complete.
If you’re looking for a color system in SwiftUI, this article by Rudrank Riyam might be a great read. The solution uses an asset catalog as a backing store for defined colors and describes how you can write a simple test to ensure colors exist. To make it complete, use some useful SwiftUI extensions to access your defined colors easily. Oh, and if you need the same for fonts, Rudrank got you covered as well!
Chris Wu learned something new, and it might be that you're new to using tuples as computed properties too! If you're new to tuples at all, Chris got you covered as well.
I guess it depends on what you’ll be doing, but Ben Sandofsky at least shows us a real-world example of using Computer Science to speed up a blur. I loved the explanation, learned how blurs work and enjoyed watching a great developer explain.
The syntax described by Alejandro Martinez always fascinated me. I’ve never used a framework like Then, simply because I like to stay close to default Swift APIs, but the syntactic sugar it brings is indeed inspiring!
I stumbled upon this page by accident, but I was thrilled to find it! Being able to filter on proposals that got accepted can be an excellent way to look forward to what’s coming up in the next version of Swift.
If you’ve been asking this question to yourself, you might be happy to bookmark this website by James Dempsey. It’s straightforward and shows the latest available version of Xcode, including the Swift version. Yet, I genuinely believe some of you might be happy to have such a website at hand when needed.
Have you ever thought about the carbon footprint of the apps you create? How many emissions in kg CO2/month your app increases when you increase the size of your app by 1MB? I certainly did not! This article by Emerge Tools explains the impact of the size of the apps that we write today.


Are you considering developing an app on the iPad? Matt Waller did so successfully and shared his learnings from developing and releasing an app entirely on the iPad.


Post your company's job positions for free

Make sure to post your company's open job positions for free at SwiftLee Jobs and reach thousands of developers.
For our Chat SDK team we are seeking an iOS SDK Developer to work on our native iOS SDK libraries. This role is open in our Boulder office and is...
Paper® is the immersive sketching app for capturing ideas anywhere. Over 30 million people have found their personal creative space in Paper—handwriting notes, drafting, diagramming, sketching, and giving form to...