fiddlemath comments on SotW: Be Specific - Less Wrong

37 Post author: Eliezer_Yudkowsky 03 April 2012 06:11AM

You are viewing a comment permalink. View the original post to see all comments and the full post content.

Comments (306)

You are viewing a single comment's thread. Show more comments above.

Comment author: Vaniver 03 April 2012 05:02:41AM *  47 points [-]

An example of this that will be familiar to any programmer, and was taught to me in grade school, is "give orders to a malicious idiot." The teacher has the students write down the algorithm for a simple task, like "sharpen a pencil," with a wooden pencil and an old crank-operated sharpener as the props.

Typically, people begin with something like "stick the pencil into the sharpener, then turn the crank," which the teacher will do by ineffectually pushing the side of the pencil against the sharpener while turning the crank. The students revise to "stick the end of the pencil into the hole in the sharpener, then turn the crank," which the teacher will do by sticking the eraser into sharpener. (There are, if I remember correctly, four or five different features you can require the pencil-sharpening algorithm have, like which end of the pencil to stick into what part of the sharpener, which way to turn the crank, to hold the pencil still so it doesn't just spin with the crank or fall out if the sharpener is oriented poorly.)

(This will be familiar to programmers because going from the basic algorithm to code requires a level of detail that can't be faked.)

Comment author: fiddlemath 03 April 2012 12:58:49PM 12 points [-]

Once a year, an acquaintance of mine gets his first-year programming class to tell him how to make a peanut butter and jelly sandwich. Even more knobs. :)

Comment author: handoflixue 04 April 2012 08:10:26PM 2 points [-]

The best question I ever encountered during an interview for a Technical Support position was to describe either that or tying your shoes. It's a great test of whether a prospective employee will be able to actually communicate troubleshooting concepts to the caller on the other end of the line, since obviously they can't use anything but words to do so :)