hn-classics/_stories/2008/11825827.md

3.1 KiB

created_at title url author points story_text comment_text num_comments story_id story_title story_url parent_id created_at_i _tags objectID year
2016-06-02T20:38:07.000Z What If I Don't Actually Like My Users? (2008) http://ozlabs.org/~rusty/index.cgi/tech/2008-04-01.html JoshTriplett 117 51 1464899887
story
author_JoshTriplett
story_11825827
11825827 2008

Source

Rusty's Bleeding Edge Page

| ----- | |

Free Software programmer
rusty@rustcorp.com.au

Subscribe
Subscribe to a syndicated feed of my weblog, brought to you by the wonders of RSS.

This blog existed before my current employment, and obviously reflects my own opinions and not theirs.

Creative Commons License
This work is licensed under a Creative Commons Attribution 2.1 Australia License.

Categories of this blog:
IP issues
Technical issues
Personal issues
Restaurants

Older issues:
All 2008 posts
All 2007 posts
All 2006 posts
All 2005 posts
All 2004 posts
Older posts

|

Rusty's Bleeding Edge Page

Rusty's Bleeding Edge Page

Tue, 01 Apr 2008

What If I Don't Actually Like My Users?

Here begins our descent into hell; if an interface manages to achieve negative scores on the Hard To Misuse List, your users may detect the dull red glow of malignancy rather than incompetence.

-1. Read the mailing list thread and you'll get it wrong.

If the first hit on Google when searching for the symptoms or how to use your interface leads to a convincing but incorrect answer, that puts your interface here.

**-2. Read the implementation and you'll get it wrong. **

This happens most often when the implementation being read is not the one you which ends up being used. Or maybe the implementation comes with test cases which all exercise the unnatural corners of the interface, which mislead instead of enlightening.

**-3. Read the documentation and you'll get it wrong. **

Here's my favorite (now fixed) example, from the glibc snprintf man page:

RETURN VALUE
       snprintf and vsnprintf do not write more than size bytes
       (including the trailing '