Hacker News new | ask | show | jobs
by vincentbarr 3999 days ago
> "Too much text/instructions"

I disagree that too many characters or too much instruction is a sign of a bad interface.

For users trying to complete their desired task, an interface lacking instruction/explanation will often cause lower task completion rates and longer average task completion times than an interface with verbose instructions. This is especially true for new users.

Don't get me wrong: I dislike wordiness and consider myself an advocate for simplicity, minimalism, and concision – and that might be the author's sentiment. However, while bloated instruction may hinder task completion and user engagement, incomplete instruction will prevent it.

I believe more useful measures of good instruction are when it is presented, where it is presented, and how well it is understood by users.

For example, a well-designed mobile app avoids a text-heavy interface by disclosing the appropriate amount of instruction at the appropriate time. Limited screen real estate happens to be a handy constraint in this case, and transfers more instruction responsibility onto a well-designed onboarding wizard. That wizard will really only get one shot to educate users, usher them to their 'aha' moment as quickly as possible, and hold their hand through the few actions that strongly influence successful user engagement and retention.

1 comments

You are absolutely correct with your description of the user interface principles you espouse. Provide the right help information at the right time but otherwise stay out of the way.

However, I believe the author's sentiment was more focused on situations where programmers use instructions to avoid more complex display or validation logic. IE, less work to add some text than to properly display/hide form sections based on skip patterns.

"If you are an X, then you have to fill in Y and Z. If you are not an X, please only fill in Z, unless Z=1, then you should fill Y too." This is typical of programmers being ‘smart’ by avoiding some extra steps/code...