Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site abnjh.UUCP Path: utzoo!linus!philabs!seismo!harpo!floyd!whuxle!pyuxll!abnjh!usenet From: usenet@abnjh.UUCP (usenet) Newsgroups: net.lang Subject: Superstition in Programmers Message-ID: <348@abnjh.UUCP> Date: Thu, 29-Dec-83 11:50:43 EST Article-I.D.: abnjh.348 Posted: Thu Dec 29 11:50:43 1983 Date-Received: Sat, 31-Dec-83 00:46:09 EST References: <2656@yale-com.UUCP> Organization: ATTIS, NJ Lines: 43 <<>> >>While this is a glaring example, I've seen others. In only 30 years, this >>field has created more than its share of taboos, unjustified beliefs, and >>religious sentiments. My own feeling is: Any rule or rule of thumb that >>you can't provide good reasons for is probably at least partly wrong.\ >> >> -- Jerry >> decvax!yale-comix!leichter leichter@yale I had a friend once, who always said he was going to write a paper called "Superstition in Programmers" for publication in the psychology journals. The story goes that one of BF Skinner's grad students got bored with using rewards to teach increasingly complex behavior patterns to pigeons, and wondered what would happen if the pigeons were rewarded at random, instead of systematicly. What he found out was that pigeons are very inclined to generalize from very little evidence, and that such generalizations are hard to get rid of. Specifically, if a pigeon got 'rewarded' (by chance) for standing on one leg in the corner of its cage, it would spend a lot of time thereafter standing on one leg in the corner of its cage. The grad student dubbed these behaviors "superstitions", and published a paper titled "Superstition in Pigeons". My friend's thesis was that programmers are not alot smarter than pigeons, and if the computer rewards them once (by 'correctly' running their program) for some bizarre behavior (like using a case statement to add one to a number between ten and fifteen) then they will spend a lot of time repeating that behavior, against all protestations of their co-workers who are afflicted with a different set of superstitions. My friend pointed out that two rich sources of such behaviors are compiler and operating system bugs. Programmers find out about a bug, and devise a "workaround" for it, then continue to use the (complex and inefficient) workaround long after the original bug has been fixed. I wonder if this discussion has any relation to the discussion going on in another newsgroup about people's tendency to find patterns in sequences of random numbers. Rick Thomas ihnp4!abnji!rbt or ihnp4!abnjh!usenet