Harshil Shah
About
Blog
Work
Blog
2025
Less Janky Placeholders in SwiftUI
When performance improvements create new problems
The Year of Lifting
On prioritising progress over perfection
2024
A Thousand Days Wearing an Apple Watch
Becoming your own Tamagotchi kinda works
Introducing Peak for Apple Watch
Your personal fitness dashboard, now on your wrist
2023
Building Peak
A look behind the scenes
Introducing Peak
Your personal fitness dashboard
2022
Solving Advent of Code 2022 in Swift
Subjecting myself to Leetcode, for fun
Adventures in Orienting Views in SwiftUI
rotationEffect considered harmful
Adventures in Orienting Images on iOS
No, I meant your other left
2021
Solving Advent of Code 2021 in Swift
Lessons from 25 days of problem-solving
Recreating the macOS Genie Effect
A love letter to an iconic Mac animation
Introducing Pause
A macOS app that reminds you to rest
Wrangling Time
A brief explainer/rant about date math
2020
Swiftʼs Collection Types
Sequence, Collection, Array, and everything in between
How the SwiftUI DSL Works
Result builders, explained
2019
Dynamic Wallpapers in macOS Catalina
How they work, and how to make your own
2017
Updating UI for iPhone X
A practical guide to adopting iOS 11’s safe area API