All posts
-
Expanding my new app experiment
Expanding my trivia app
28 Jul 2024 -
Experimenting with a new app
I've built a trivia app as an experiment
31 Mar 2024 -
My wishlist for Apple's developer tools
Some quality-of-life improvements that I'd love
18 Mar 2024 -
Introducing SalaryPig
I've made an app for tracking your salary
26 Feb 2024 -
The third-party libraries I use in every project
I avoid third-party code as much as possible, but I make an exception for these
12 Jan 2024 -
2023 in review
How 2023 went (spoiler: well)
31 Dec 2023 -
Finding a new job as a software engineer in 2023
My advice for candidates and employers
20 Nov 2023 -
Building a custom date formatter for Swift
How to make your own date formatter using Swift's Formatter API
13 Oct 2023 -
Hockeysticking
Personal Best has grown a lot in 2023.
10 Sep 2023 -
Going full-time indie (for now)
I'm going to work on my apps full time for a while
17 Jun 2023 -
Resources for indie iOS developers
Some resources I've found helpful on my indie iOS developer journey
08 Feb 2023 -
2022 in review
How 2022 went for my apps
18 Dec 2022 -
Keeping a widget up to date efficiently on iOS
Three improvements to make your widgets more reliable
20 Aug 2022 -
Introducing Taylor's Version
I've made a new app to help you upgrade Taylor Swift songs in your playlists
13 Feb 2022 -
A better way to create images from SwiftUI views
A much easier way to turn SwiftUI views into images
24 Jan 2022 -
2021 in review
How 2021 went for Personal Best, and me too I guess
19 Dec 2021 -
Selectively show and hide parts of your webpage based on dark mode
How to have parts of your webpage display or hide based on dark mode
23 Jul 2021 -
Sharing to Instagram Stories in SwiftUI
How to share images directly to Instagram Stories in SwiftUI
06 Jul 2021 -
Adding privacy-first analytics to Personal Best
How I added analytics to Personal Best while preserving privacy.
05 Jun 2021 -
Adding polylines to maps in SwiftUI
Using UIKit to display lines on maps in SwiftUI
03 Mar 2021 -
Adding haptic feedback to buttons in SwiftUI
How to add haptic feedback to buttons (and other views) very simply.
20 Jan 2021 -
Accessing the photo library in SwiftUI
How to access the photo library in SwiftUI using PHPicker
02 Jan 2021 -
Using DispatchGroup in Swift for asynchronous loops
How to wait for an asynchronous loop to complete before calling a completion handler
31 Dec 2020 -
Making your own errors in Swift
How to create your own instances of Error
31 Dec 2020 -
Going indie: 2020 in review
Facts and figures from my foray into independent app development
29 Dec 2020 -
Creating images from SwiftUI views
How to turn any SwiftUI view into a UIImage
23 Dec 2020 -
Static maps in SwiftUI with MKMapSnapshotter
How to use MKMapSnapshotter in SwiftUI views to create static maps
22 Dec 2020 -
Optional view arguments in SwiftUI
How to make SwiftUI views with optional view arguments
16 Oct 2020 -
Declaring unnamed arguments in SwiftUI
How to make SwiftUI views with unnamed arguments
10 Oct 2020 -
Adventures in SwiftUI 2's MapKit support
Finding and working around the limitations of MapKit in SwiftUI 2.
22 Aug 2020 -
iOS 14's bizarre text casing behaviour in List headings
iOS 14 changes your section titles to uppercase, which...yeah?
05 Aug 2020 -
Multiline text in SwiftUI
When SwiftUI text truncates when you don't want it to
02 Jul 2020 -
Building a more generic page control in SwiftUI
How to make a page control component in SwiftUI that works with any view
19 Jun 2020 -
SwiftUI view modifers and dark mode
How to adapt your SwiftUI view modifiers to behave differently if dark mode is enabled.
14 Jun 2020 -
Personal Best 3
What time is it? Time to check your workouts on your Apple Watch!
05 Jun 2020 -
Earliest sample dates in HealthKit
On watchOS, you can only access seven days of HealthKit data
03 Jun 2020 -
Running HealthKit queries in the background
TL;DR Turn on background app refresh
01 Jun 2020 -
Personal Best 2
Custom filters are here!
28 May 2020 -
Making SwiftUI navigation bar buttons bigger
SwiftUI navigation bar buttons are too small. Here's a workaround.
28 May 2020 -
SwiftUI sheets and environment objects
Sheets in SwiftUI don't have access to @EnvironmentObject without a workaround.
28 May 2020