Back
iOS/8 June 2026/Abhishek Dhall/5 min read

SwiftUI Product Thinking

Building in SwiftUI changed how I think about state, feedback loops, and whether an interaction deserves to exist at all.

iPhone mockup beside lines of SwiftUI code

SwiftUI made me less interested in screens as static compositions and more interested in flows as systems. When state is visible in your code, weak product decisions also become visible faster. You notice where users can get stuck, where copy is compensating for confusion, and where the app is doing too much to feel simple.

That changed the way I plan features. I now ask whether a state deserves to exist before I ask how to style it. Empty states, loading states, partial completion states, retry states, all of them tell you something about the actual product quality.

A small checklist I use

  • What is the default state?
  • What happens if the network is slow?
  • What does the screen say when there is no useful data yet?
  • Is the action reversible without stress?

The nicest part is that SwiftUI rewards clarity. If the logic is messy, the view code usually starts feeling messy too. That feedback loop has made me more careful about product scope, not just UI code.