Blog

Launch Screens and the SwiftUI App Life Cycle on iOS 14

I have decided to rewrite Bouncer from scratch using the latest SwiftUI version available in iOS 14. This includes using the new SwiftUI App Lifecycle, which allows you to skip UIKit entirely, alongside the AppDelegate and Storyboards.

As I got closer to finishing the app, I decided to replace the default (white) Splash Screen with something better, but since there was no Storyboard anymore, I had no idea how.

Read full post “Launch Screens and the SwiftUI App Life Cycle on iOS 14”

Protocols and Combine: Using @Published in your Protocol declaration

The @ObservableObject and @Published property wrappers are the sauce of Combine powered apps. With Combine and SwiftUI, it’s easy to use the @Published wrapper in our ViewModel properties and have the Views automatically update as changes to these happen.

Everything works great until you want to use Protocols to facilitate dependency injection and testing in your Models and ViewModel classes, as we’ve been doing in our regular MVVM apps for the past few years.

Read full post “Protocols and Combine: Using @Published in your Protocol declaration”

Do your best work

It’s nice to see everyone trying to help and do something about this virus, but I honestly don’t think we can change much by posting more stuff on social networks.

Now is the time when we need our governments, doctors, and scientists doing their best work ever, so let’s cut the shit, the noise, and the narcissism and let them focus on the job. Read full post “Do your best work”

Life with the iPad Pro

Some time ago, as an experiment, I decided to use an iPad Pro as my primary computing device. Expectations were low, so I kept my laptop in a drawer and gave it a chance for a couple of weeks.

Working on an iPad seemed ingenious and weird, and several people asked about how I was supposed to write code or do actual work on “that thing,” to which I replied, “I have no idea.”

Four months later, I have not missed my laptop at all

Read full post “Life with the iPad Pro”