Exploring UX Tradeoffs

A bug fix this week opened up bigger conversations about UX tradeoffs, first principles, and system design.

What started as a fix turned into 3 key milestones — each one clarifying what matters most in the product.

The bug was around state being lost in our front-end app. The fix was straightforward – re-fetch the data from the API.

1. Data may not be available anymore.
The API is returning JSON blobs from a model, being produced every minute. Refetching might mean that the data is gone.

– If we cache it, the data may be stale.
– One first principle: data must be real-time and useful.

We considered redirecting the user back to the landing page to restart the flow.

2. Not great UX?
– Redirecting users without explanation isn’t ideal.
UX and I talked about adding more copy about what happened and giving context.
– We settled on clear, simple copy to keep the UI clear.

3. Could users miss out on data?
UX was front-of-mind at this point, I wondered if a user was missing out on data?

– We debated changing the model or storing the data differently.
– We could flatten the data and store it sequentially.
– But that would impact internal calculations and they were vital.

We decided to keep the existing data architecture.

Lessons learned:
– Tradeoffs deserve time. Rushing decisions often means missing hidden costs.
– Technical choices ripple into UX and product – talk early, not under pressure.
– First principles matter. They keep decisions honest.

If you’re designing flows like this, I’d love to hear what worked for you.

Verified by ExactMetrics