Give your simulator superpowers

RocketSim: An Essential Developer Tool
as recommended by Apple

Using Traits to annotate and customize test behavior

Traits allow you to customize or annotate tests using the Swift Testing framework announced at WWDC 2024. They also allow you to configure common behaviors, like runtime evaluated conditions, to skip certain tests. Before exploring this specific feature of Swift Testing, I encourage you to read my introduction to Swift Testing article. Let’s dive in! … 

 

Swift Testing: Writing a Modern Unit Test

Apple announced the Swift Testing framework during WWDC 2024. It transforms the way we write tests in Swift. A new clear, expressive API makes writing tests more straightforward, while the Xcode user interface communicates with improved feedback when a test fails or succeeds. The testing framework embraces Swift Macros, reducing the boilerplate code you must … 

 

App onboarding funnel optimization to increase conversions

An app onboarding can be seen as a funnel full of steps toward the key action of your application. A user installs your app, enters an explanatory onboarding, and starts using the app with the knowledge gained. Each step in the funnel is vital for ensuring the user knows how to use the app, but … 

 

Designing Apps: 5 Methods to improve your workflow

Designing apps can be challenging if you don’t have a design background. Many of you who read my blog are great at writing code, but making that perfect design is a different challenge. For my From Side Project to Going Indie Course, I invited my good friend Hidde van der Ploeg to give a guest … 

 

JSON Parsing in Swift explained with code examples

JSON parsing in Swift is a common thing to do. Almost every app decodes JSON to show data in a visualized way. Parsing JSON is definitely one of the basics you should learn as an iOS developer. Decoding JSON in Swift is quite easy and does not require any external dependencies. The basic APIs that … 

 

@Entry macro: Creating custom environment values in SwiftUI

The @Entry macro in SwiftUI allows you to define custom environment values without writing boilerplate code. While introduced in Xcode 16, you can use it from iOS 13 and up since it’s a Swift Macro that generates backward-compatible code. The new macro can be used for environment values, as well as for transaction, container, and … 

 

App design: 5 benefits of using system components

Building custom elements and ignoring the sometimes boring system components during app design can be appealing. However, these boring elements have many benefits you might not be aware of. If you’ve read many of my technical articles, you might be surprised to hear that I’ve actually done a bachelor’s degree in Communication and Multimedia Design … 

 

Going Indie: From Side Project to Going Independent

Switching careers from having a full-time job to going fully independent after transforming multiple side projects into six-figure revenue. In March 2024, I decided to leave WeTransfer after 7,5 years, fully focusing on SwiftLee, RocketSim, and courses. The journey starts by introducing my first course, From Side Project to Going Indie, which is now available … 

 

Memory consumption when loading UIImage from disk

Memory consumption can quickly increase if you load many images from the disk using UIImage. You’ll generally load images from a remote address or via an asset catalog. However, you have bundled images in some cases, and you need to load them directly from a bundle path. In those cases, you’ll need to use UIImage … 

 

Why macOS Development is Perfect for Indie Developers

Building apps for macOS offers developers a fantastic opportunity to expand their skills, create useful utilities to solve their problems, and begin their journey as indie developers. I’ve invited Jordi Bruin to write a guest article on this topic as he launched several useful Mac applications, such as MacWhisper and MacGPT. Here’s his story: Over …