Victoria Wang on the ‘software design philosophy’ she formulated while making her Twitter app, Hibari:
Almost all animations are clutter. Animations provide realism and sometimes entertainment, but for a minimalist app, they serve almost no purpose other than to force your attention to them and momentarily make your eye twitch. Readability suffers greatly when there are little bouncing animations during basic navigation of tweets, as your eye can’t stay fixed on one area; instead, it’s forced to move up and down to re-anchor at each navigational action.
Buttons on every tweet are clutter. I also consider buttons that appear—or worse, fade in—on hover to be a type of clutter, as it’s too easy to accidentally hover over them and cause flashing on the screen where it’s not expected. Unfortunately, a lot of people like the one-click nature of buttons. I try to encourage them to use keyboard shortcuts instead.
Timestamps on every tweet are clutter. Timestamps are usually irrelevant to the tweet, so Hibari hides them by default. I’m also against relative time stamps, despite nearly every social site and client using them. Either a tweet happened recently and I don’t need to know the time, or the tweet happened a while ago, and I want to know what time of day it happened, not how many hours ago. I never wonder how old a tweet is, I just want to know at which point in the events of the day it happened.
Read status is burdensome mental clutter. My emails (and to a lesser degree, my feeds) already feel like loads of mental baggage. For me to maintain any semblance of sanity, Twitter must feel like a continuous flowing stream where it’s okay if I miss some of it occasionally. To have an app keep track of whether every last tweet has been read would turn Twitter into a chore. I’d be wasting time every day compulsively marking all my tweets as read.
Too much 3D is clutter. Aside from its standard OS X chrome, Hibari’s interface is purposefully very flat. Shadows and gradients can make a design look interesting at first, but over time it becomes tiring to look at needlessly over-emphasized shading and separation.
I love this. My only quibble is with the minimal app/non-minimal app distinction, which strikes me as redundant—if software is to function as a streamlined tool (to what other role can it aspire?) then a considered approach like this is vital.
That is to say, it’s wasteful to look to ‘minimalist’ applications to provide a thought-out experience whilst continuing to expend energy developing and supporting ‘non-minimalist’ applications. Rather than defining a modish category of software, unobtrusively focused user experience is an inherent property of a useful tool and a standard to be expected (demanded).