Slashdot Mirror


What is the Best Bug-as-a-Feature?

Bat Country wonders: "The workflow system, at the department I develop for, was hand-coded by my predecessor in a rather short amount of time, resulting in somewhat unreadable code with a number of interesting 'features.' When I took over maintenance of the code base, I started patching bugs and cleaning up the code in preparation for a new set of features. After I was done, I got a pile of complaints about features that had disappeared, which turned out to be caused by the bugs in the code. So, that leads me to ask: what is your favorite bug that you either can't live without or makes your life easier?"

861 comments

  1. The best by Anonymous Coward · · Score: 5, Funny

    Windows Genuine Advantage

    1. Re:The best by Anonymous Coward · · Score: 1, Insightful

      Apparently your "bugs" were the features and your "cleaning it up" broke a bunch of shit. Congratulations and good luck finding a new job!

    2. Re:The best by BSAtHome · · Score: 1

      Ehm, nobody would notice if it was gone. Probably everybody would be instantly happy.

    3. Re:The best by TerranFury · · Score: 5, Funny

      >Windows Genuine Advantage

      No, that's a feature that acts like a bug. ;-)

    4. Re:The best by jacobsm · · Score: 1

      We have an entire system that produces documents and letters that we send to to our customers. This system has to use a 1990's version of the software package. These hundreds or thousands of machine generated forms and letters were composed using this level of software that contain known software bugs and will not format correctly if they execute using a later copy of the package.

      Thankfully this system is in the process of being phased out.

      Mark Jacobs

    5. Re:The best by bckrispi · · Score: 1

      Agreed. If you have "piles of complaints" from users, you may well be causing more harm to the system by fixing the undocumented features than by documenting them and making them official.

      --
      Xenon, where's my money? -Borno
    6. Re:The best by jhfry · · Score: 3, Funny

      This system has to use a 1990's version of the software package. These hundreds or thousands of machine generated forms and letters were composed using this level of software that contain known software bugs and will not format correctly if they execute using a later copy of the package. Your not using MS Word are you?
      --
      Sometimes the best solution is to stop wasting time looking for an easy solution.
    7. Re:The best by Yoooder · · Score: 1

      Who's the advantage for? Not the consumer. *yes, I did rip that off some recent webcomic--don't burn me for it :P

    8. Re:The best by Anonymous Coward · · Score: 1, Funny

      Your not using MS Word are you?

      Either way, we know you aren't.

      (I'm sorry. I'm sorry. I couldn't resist. I'm sorry.)

    9. Re:The best by mandelbr0t · · Score: 2, Funny

      I really miss nimda.dll. Talk about a distributed backup network. Not to mention the depths of personal information I had access to.

      --
      "Please describe the scientific nature of the 'whammy'" - Agent Scully
    10. Re:The best by Gyppo · · Score: 4, Insightful

      Interesting that you're fixing a workflow system but you don't seem to have any of your own. What a developer considers bugs may not be considered bugs by the end users - and even if they are considered bugs, end users usually have work-arounds for them. If the bugs disappear, you've broken their work process. You may want to investigate collecting requirements and getting user buy-in before deciding to change their system. I've worked on systems where I've done something that I consider insignificant like changing the navigation, but the users didn't know that it was changing and started logging bugs, assuming something was broken.

    11. Re:The best by RollingThunder · · Score: 3, Insightful

      Yes and no...

      what if one of the bugs was that authentication wasn't checked when it should be? Users hate entering passwords, and fixing that bug would REALLY annoy them.

      Some UAT would have helped on that, though. The OP wasn't clear if the complaints happened after release, or during pre-release user acceptance testing.

    12. Re:The best by Anonymous Coward · · Score: 0

      As mathematically oriented programming engineer, it all seems too simple:

      5/2 = 2
      5.0/2.0 = 2.5

    13. Re:The best by arth1 · · Score: 4, Interesting

      To be on topic here, one of the bugs I really have taken advantage of is the bug that allows Windows networking to have a default gateway outside its own subnet, and with no route to it either.
      This has made it very convenient when running Windows under an emulator and yet be able to talk over TCP/IP to the host OS. VMWare and other advanced emulators solve this problem by setting up extra local networks and patching directly into the networking stack, but with Windows that's not strictly necessary, as you can bounce packets of a gateway that the emulated OS really shouldn't be able to reach.

    14. Re:The best by Bat+Country · · Score: 3, Interesting

      Please remember that "working to the satisfaction of your users" and "working properly in a way which doesn't cost the company money" are not always in perfect harmony.

      In this particular instance, the features were related to ad-reps exploiting holes in the original deadlines and scheduling code and as a result short-changing the company and giving clients hundreds of dollars in free advertising (without realizing it) because circumventing the deadlines helped them meet quota.

      When the complaints started rolling in, I immediately brought the matter to the attention of my superiors (the ad managers) and the discovery that people had been relying on certain border effects (not directly related to the exploits, but related to other scheduling malfunctions) resulted in a change of policies.

      This made both the ad-reps and the management happy, and at the end of the day, that's not a bad position to be in.

      --
      The land shall stone them with the bread of his son.
    15. Re:The best by Antique+Geekmeister · · Score: 1

      Oh, yes. Even with licensed software, managing the licenses is amazingly painful with all the different approaches to licenses.

      Other such bugs are amazingly painful internal trouble ticket or purchasing systems: they're so painful they force employees to waste their own money on small purchases and leave purchasing departments either unbothered by requests, or able to steer requests to their "preferred" vendors.

      And systems where security is so poor that people simply leave all files accessible to each other do make it easy to sniff other people's email for relevant documents when they're not in the office.

    16. Re:The best by Xiaran · · Score: 2, Interesting

      Some years ago I was working on a windows app I had developed in something of a rush(it was for a particularly valued customer and they needed it yesterday). Once I got a pretty stable version going and installed on site I went back to do a bit of cleanup and search for all the bugs I knew were probably lurking in there :) One very minor thing(I thought at least) was that the main form of this app had a bunch of edit boxes and some of the tab ordering was wrong... that is hitting the tab key sent focus to odd edit boxes... I fixed it to be sane and went on to fix a few more things. About 3 weeks after Id got it into the clients site I told them I had a fixed version(to fix a few of the bugs *theyd* discovered as well) and did a patch. I got a panicked phone call after about 2 mins from a poor woman pleading to fix the tab ordering. Turns out she had been doing data entry for the three weeks and her brain had adapted to my random tab ordering :)

      As these people were our only clients for that subsystem I changed the tab order back to what it was with big comments as to why it was done this way. Ive often wondered if it ever got changed back... or were there other users of this software somewhere in the world wondering wat kinda crack the programmer was on when s/he chose the tab ordering...

    17. Re:The best by roady · · Score: 1

      I don't call this a bug. I use this to prevent one of my computers to reach the network when I forgot to connect the VPN. (yeah I could use a firewall).

    18. Re:The best by bckrispi · · Score: 1

      In this particular instance, the features were related to ad-reps exploiting holes in the original deadlines and scheduling code and as a result short-changing the company and giving clients hundreds of dollars in free advertising (without realizing it) because circumventing the deadlines helped them meet quota.
      So, effectively, the user complaints you received were not valid ones, since they were only complaining about no longer being able to rip off their company.
      --
      Xenon, where's my money? -Borno
  2. 404 by Jordan+Catalano · · Score: 5, Funny

    My favorite:

    "404 File Not Found
    The requested URL (askslashdot/07/03/30/0116246.shtml) was not found."


    That little error saved me from having to read a bunch of replies.

    1. Re:404 by Anonymous Coward · · Score: 5, Funny

      From DOS:

      Keyboard not found.
      Press to continue.

    2. Re:404 by LarsG · · Score: 2, Insightful

      That message is produced by the IBM BIOS, and not MS-DOS. While I love to point fingers at BillG, IBM is to blame for this one.

      --
      If J.K.R wrote Windows: Puteulanus fenestra mortalis!
    3. Re:404 by rrkap · · Score: 2, Interesting

      Keyboard not found.

      Press to continue.

      That's actually a BIOS error, but the funny thing is that it isn't entirely useless. For years I had a malfunctioning keyboard that would generate a no keyboard found error on boot-up but when you pressed a key, the computer would finish its boot-up and would work just fine.

      --
      I like my beverages with warning labels!
    4. Re:404 by Anonymous Coward · · Score: 0

      You can actually safely attach a PS/2 keyboard during this time and then press F1.

    5. Re:404 by Anonymous Coward · · Score: 0

      My favorite "bug as a feature" is when I programmed an HP/UX, at a former job, but logged on via a Windows (NT?) machine. The local "OS", to use the term lightly, would often crash, giving me an extra long break while the Windows support group worked on it!

    6. Re:404 by Anonymous Coward · · Score: 1, Informative

      This depends on the motherboard, and possibly other things. We had a line of computers from Dell (via CDW) that froze if you plugged in a PS/2 keyboard while on.

    7. Re:404 by Anonymous Coward · · Score: 0

      Yep, that was a useful feature. It basically says "hey, looks like the keyboard has gotten unplugged - that might be a problem. Why not be a good boy and plug it in?" Of course it could usually be turned off in bios if you really wanted to.

  3. Whenever I boot my windows machine by antifoidulus · · Score: 5, Funny

    it pops up all sorts of porn pages I never even asked for!

    1. Re:Whenever I boot my windows machine by nick_davison · · Score: 5, Funny

      Not sure it's my favorite... but props to Microsoft for having the balls to market Windows ME as one giant bug-as-a-feature.

  4. Comment removed by account_deleted · · Score: 2, Funny

    Comment removed based on user account deletion

  5. Windows? by cmeans · · Score: 4, Funny

    Microsoft keeps trying to clean up their code, and as a result, sometimes, features that SPAMmers etc. are relying on stop working.

    1. Re:Windows? by UNIX_Meister · · Score: 2, Funny

      Thought you said... features that SPAMmers etc. are relaying on stop working.

    2. Re:Windows? by mousse-man · · Score: 1

      That's called a 'security patch', I'm told.

    3. Re:Windows? by eealex · · Score: 1

      I am quite surprise seems no one has mentioned BSOD! You can show this to your boss and say your works gone and request for deadline extension, but just a second before BSOD you are reading /. or p0rn site. Ooop, sorry is this a feature instead of a bug?

  6. rm by KillerCow · · Score: 5, Funny

    rm * .old

    1. Re:rm by sheph · · Score: 1

      that would be a lot more interesting with a -R from /

      --
      I don't believe in karma, I just call it like I see it.
    2. Re:rm by Anonymous Coward · · Score: 0

      You realize, of course, that that is actually a shell glob-expansion feature, not an rm bug? rm will only see a list of filenames (all the filenames that match *) followed by the file .old, and will (as designed) operate on all files in the list. So, really, it doesn't qualify as a bug-as-feature since there is no bug, just a user error :-)

    3. Re:rm by EvanED · · Score: 1

      So, really, it doesn't qualify as a bug-as-feature since there is no bug, just a user error :-)

      Just because it's user error doesn't mean it's not a bug.

      In some cases, an interface that makes it easy to bad things by mistake is a bug. I don't know if this case qualifies, but the lack of any way to undo the action means that it's at least close to the line..

    4. Re:rm by alta · · Score: 3, Funny

      I'm guilty of this one once, missplaced space, and I typed 'rm -rf /etc /*.tmp'

      Yes, this was done on my first slackware box. Not sure what version it was exactly, but it was somewhere between 96-98, and i installed by downloading about 15 or so floppies...

      The first command I typed on that box was 'help.' It wasn't.

      --
      Do not meddle in the affairs of sysadmins, for they are subtle, and quick to anger.
    5. Re:rm by Anonymous Coward · · Score: 0

      One way to lessen the chance of mistakes when using "rm" is to always use "ls" in place of "rm" first, then when the list of files looks right, replace the "ls" with "rm". You'd definitely notice something was up if "ls * .old" listed files with more than just ".old" at the end of their filename.

    6. Re:rm by LihTox · · Score: 5, Informative

      One way to lessen the chance of mistakes when using "rm" is to always use "ls" in place of "rm" first, then when the list of files looks right, replace the "ls" with "rm".
      I have a script "lrm" which does this: ls the files, ask for confirmation, and then delete (if confirmed).

    7. Re:rm by Bandman · · Score: 3, Funny

      I did the same thing to a web directory. *poof*

      The worst part is the ice cold blood running through your veins as you stare at the screen, desperately hoping that you are misreading the command line.

    8. Re:rm by pr0fess · · Score: 2, Informative

      alias rm to rm -i, it asks for confirmation.

    9. Re:rm by Anonymous Coward · · Score: 0

      [Allow]

      (It's the same thing as Vista's user confirmation, no? Ask too many confirmations and you just allow everything.)

    10. Re:rm by Deadplant · · Score: 1

      I did that a couple of months ago on a dir full of video files on a server.
      (live, hosted video files for paying customers)
      thankfully deleting files that are hundreds of megs is relatively slow and I was able to ctrl-c before it had deleted very much stuff.
      It is a heck of a way to get an adrenaline rush

    11. Re:rm by hal-j · · Score: 5, Informative

      ug. You should always make a file named "-i" in important directories to prevent this. That way when you do something dumb, like "rm * .old" the "-i" gets seen as a command line switch to "rm" and you get asked for confirmation.

      --

      -Hal
    12. Re:rm by alta · · Score: 1

      Luckily I did this on my first linux box, and it was just set up for 'play.'

      Now I have REAL linux servers that doing such a thing on could create a lot of work, and an excercize in restore from backup...

      --
      Do not meddle in the affairs of sysadmins, for they are subtle, and quick to anger.
    13. Re:rm by cswiger · · Score: 5, Insightful

      Nice. Perhaps having rm look at a filename called "-i" and interpret that as a command-line flag is probably the best "bug as feature" offered so far. :-)

      --
      "The human race's favorite method for being in control of the facts is to ignore them." -Celia Green
    14. Re:rm by metlin · · Score: 1

      And have rm aliased in your shell config as 'rm -i' -- that would ensure that even if you did type in something wrong by mistake, you will be asked about it first.

      Usually, having both rm and mv requiring sudo while interacting with anything other than the home directory and aliasing both with -i has been extremely useful to me in the past.

    15. Re:rm by LihTox · · Score: 4, Informative

      alias rm to rm -i, it asks for confirmation.

      I do that as well, but there is a danger if you start working in someone else's account, where rm is not aliased as expected. It may be better to alias del='rm -i' (for example) and train yourself to type del.

      Also, "rm -i" is a pain when you're deleting a large number of files at once.

    16. Re:rm by gstoddart · · Score: 1

      Yes, this was done on my first slackware box. Not sure what version it was exactly, but it was somewhere between 96-98, and i installed by downloading about 15 or so floppies...

      Pfffffttt, you must not have installed X or any of the apps.

      About three weeks ago (literally) I threw out about 60 floppies from my first install of Slackware back in about 92/93. I couldn't bear to part with them at first -- a nice big stack of brightly coloured 3.5" floppies I've been moving about with me for over a decade. Then I realized I don't even own a machine with a floppy drive in it.

      Of course, I had a 'monster' machine (486DX-33, 8MB of RAM, and a 320MB HD) to run it on, so you might not have had room for X and TeX and all of that yummy stuff. ;-)

      Ah, such nostalgia. I can still remember my joy at spending $600 to upgrade the machine to 20MB of RAM -- man, what a beast that thing was. =) [ For those of you who don't remember back that far -- in 94/95, that was a really good price on RAM!! ]

      Cheers
      --
      Lost at C:>. Found at C.
    17. Re:rm by LihTox · · Score: 1
      Geez, that's the easiest 5 points I've ever gotten! :) Here's the bash script for lrm in case anyone's interested. It's hardly sophisticated and it isn't perfect; it doesn't handle directories well for instance. Improvements are welcome.

      ls $*
      if [ `ls $* | wc -l` -gt 0 ] ; then
        echo "Are you sure you want to delete these files?"
        read yesno
        if [ $yesno = 'y' ] ; then \rm -f $*; fi
      fi
    18. Re:rm by kalirion · · Score: 3, Interesting

      touch "*"

      ... now the waiting game

    19. Re:rm by Wabbit+Wabbit · · Score: 1

      Ah cool, I thought I was the only person who did this. Better safe than sorry, even when you know how to use rm.

      --
      Nothing is inexplicable; only unexplained -Tom Baker, Doctor Who
    20. Re:rm by holomorph · · Score: 1

      I (try to) always put the -rf at the end of the line, and have a habit of using tab completion, so before I add the -rf to anything I'm about to delete I have a much better chance of having selected the files I really do wish to delete. Mostly I have to do this because I often accidentally hit the enter key halfway through entering a command (my enter key is actually in the split area between what would be 'h' and 'g' on a qwerty keyboard, which makes it easier to hit, but then it's also easier to hit [accidentally]).

    21. Re:rm by cloudmaster · · Score: 4, Informative
      I'm partial to ls -- "$@" && rm -i -- "$@"

      In any event, you should be using "$@" (with the double-quotes)instead of $*, so you can properly preserve arguments with spaces. If you try to remove a file with a space in it with your script, it will not work as expected.

      I'd also suggest adding a typeset -l yesno before the read, so you force the input string to lowercase before comparing it. Heck, let's see if it starts with a y, too. That way, y, yes, YES, and even YePaRoonIe will work...

      I like ls -dF, so it doesn't show the contents of directories (-F appends a slash to the end of the filename, though, so you could add a "grep '/'" and fail if directories are present - hint: put the ls -1dF output in a variable using var=$(ls -1dF "$@"), test $?, then test inside the if block to see if the variable contains any lines that end with a slash).

      Finally, you could use the ls command as your conditional statement instead of having to run ls twice.

      if ls -d -- "$@"
      then
        typeset -l yesno
        read yesno discard
        [[ -z "${yesno##y*}" ]] && /bin/rm -fr -- "$@"
      fi
      PS - the two hyphens protect you from arguments which start with a hyphen...

      Email cloudmaster@cloudmaster.com with questions - I don't check replies on the dot very often. :)
    22. Re:rm by dotgain · · Score: 2

      Mod parent VERY informative
      I can't stand distros that alias rm to 'rm -i', nor can I stand those that are 'surprised' by the noninteractive default on important servers.

    23. Re:rm by dotgain · · Score: 1

      You'll regret this if you ever use another unix box. /bin/rm is fucking dangerous and the only thing you can do to mitigate that is be careful using it, not by taming it on your box only to get bitten when using a default environment. Please, don't alias 'rm'.

    24. Re:rm by jimicus · · Score: 3, Informative

      That's because rm doesn't get passed a *, it gets passed a list of filenames which has been expanded from the * by the shell.

      Convention states that the way a program knows that no further arguments should be interpreted as command switches is by means of the -- switch. If no -- has been found, then anything which looks like a switch is generally interpreted as one.

      The alternative would be to look to see if there is a -i file and if there is assume that you meant "delete file called -i" rather than "delete interactively", which runs completely contrary to another common Unix convention - specifically, that the program shouldn't try to second-guess the user.

    25. Re:rm by soleblaze · · Score: 1
      I find rm -i really annoying, as you have to say yes to each file. I found this alias for rm somewhere on the net and I currently use it. When you rm something it'll list everything that it plans to rm and asks you if you want to remove them (it lists a directory contents, but not the contents of a directory in that directory)

      alias rm 'ls \!* && echo -n "Remove (y/n)? " && if(y == $<) /bin/rm -rf \!*'
    26. Re:rm by mandelbr0t · · Score: 1

      Now that's a BOFH trick if I ever heard one. Too bad that feature disappeared.

      --
      "Please describe the scientific nature of the 'whammy'" - Agent Scully
    27. Re:rm by jsebrech · · Score: 1

      Ah, the fun of wiping away a week's worth of code of an entire team just by a misguided "rm * .bkp" right before the day's end. They were surprisingly placid about it.

      Ever since I take daily backups of anything I'm working on. Good habits are learned through pain.

    28. Re:rm by wirelessbuzzers · · Score: 4, Funny

      Just don't create a file called -rf. -- Larry Wall
      --
      I hereby place the above post in the public domain.
    29. Re:rm by techno-vampire · · Score: 1

      I'm a great believer in caution too, but have a different way of making sure the filespec for delete is Just Right. First, I run this:
      ls $FILESPEC
      then, if $FILESPEC shows me exactly what I want I use the up arrow to bring back the previous command and change the ls to rm.

      --
      Good, inexpensive web hosting
    30. Re:rm by k8to · · Score: 1

      I prefer 'echo'.

      --
      -josh
    31. Re:rm by Anonymous Coward · · Score: 0

      creating a file named -rf seems like a rather bad idea though :)

    32. Re:rm by Sentry21 · · Score: 1

      I personally prefer "alias rm='rm -iv'" in root's .bashrc (or equivalent for your shell). Suddenly you get that benefit everywhere, and can override with -f if you so choose.

    33. Re:rm by Anonymous Coward · · Score: 0

      I *HATE* rm typeo's. I hate when I mean to type something like "rm ./*.tmp" and then type something like "dd if=/dev/urandom of=/dev/md0". It's just so easy to do.

    34. Re:rm by apathy+maybe · · Score: 1

      I was reading the Unix Haters Handbook the other day. Funny how something (about computers) written at the start of the 90s is still relevant today. This is one of the stupid things they were commenting on.

      http://research.microsoft.com/~daniel/unix-haters. html

      --
      I wank in the shower.
    35. Re:rm by LearnToSpell · · Score: 1

      Also, "rm -i" is a pain when you're deleting a large number of files at once.

      So type "rm --" the second time, after you know you want to delete them all.

    36. Re:rm by dubl-u · · Score: 1

      For a long time my sig was

      touch -- -rf\ \*

      Then I stopped being a sysadmin, and no longer hate everyone.

    37. Re:rm by SharpFang · · Score: 1

      Autocompletion bit me more than once.

      I want to delete all READ*. So I press rm R[TAB]* and see: rm README *

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    38. Re:rm by jomama717 · · Score: 1
      How about:

      function rm {

      for option in $*; do
      if [ ! -z `echo ${option} | grep -` ]; then
      shift 1;
      fi
      done

      mv $* /tmp/purgatory/
      }
      in your profile of choice, backed up by a cron job to wipe out the purgatory. Eh?
      --
      while [ 1 ]; do echo -n -e "\xe2\x95\xb$((($RANDOM&1)+1))"; done
    39. Re:rm by ari_j · · Score: 1
      One time, I was going to install Windows for dual booting on a box that had FreeBSD, so I thought I'd be smart and back up my partition table and boot sector:

      dd of=/dev/hd0 if=bootblock.bak bs=512 count=1

      Oops. Should have had some coffee so I would have noticed my zombie-esque typo. I didn't realize what I had done until I had already typed "reboot." Granted, I could probably have recovered my data, but that was before I learned how to do that.
    40. Re:rm by hal-j · · Score: 1

      works on all my systems (OSX, linux)

      --

      -Hal
    41. Re:rm by marcosdumay · · Score: 1

      Take a look at libtrash. I installed it since I lost some works a few years ago... And it already saved me some times :)

    42. Re:rm by pr0fess · · Score: 3, Informative

      Indeed, but if we are working someone else's account, we should think twice before deleting files ;)

      The -f argument overrides -i at least in the Solaris and Ubuntu boxes I frequent, so not so much of a pain.

      A personal preference in the end.

    43. Re:rm by hal-j · · Score: 1

      Ideally, anyone with enough access to do any real damage, would know how to properly deal with that :)

      Realistically, that's probably not the case.

      --

      -Hal
    44. Re:rm by Anonymous Coward · · Score: 0

      Autocompletion bit me more than once.

      I want to delete all READ*. So I press rm R[TAB]* and see: rm README * Should use R*[TAB] instead.
    45. Re:rm by adrianmonk · · Score: 1

      You should always make a file named "-i" in important directories to prevent this.

      First of all, that litters directories with silly files. Second, it wouldn't even help in the original poster's case: rm -rf /etc /*.tmp will never cause the shell to expand any pattern that puts -i on the command line.

      I prefer a different solution: you use bash (or other shells that support this feature), you do set -o vi and then when you have typed rm foo*, you hit ESC *. This causes bash to expand your glob directly on the command line before you hit return, and you can review the list of files to be deleted before you commit. (I'm positive there's a set -o emacs equivalent, but I don't use emacs mode in the shell, so I don't know what it is.)

      Alternatively, if you don't like using that feature, always start your rm commands with echo rm instead. Then run the echo command and see its output, and if that's really what you want to happen, use command line editing to recall the command and delete the echo. This works in every shell that has interactive command-line editing. For example:

      $ echo rm foo*
      rm foo1 foo2 foo3

      (hit up-arrow delete delete delete delete delete enter, or ESC-k d w enter, or C-p C-d C-d C-d C-d C-d enter, or whatever, yielding...)
      $ rm foo*
      (foo1, foo2, and foo3 are removed)
      $

    46. Re:rm by bziman · · Score: 1

      Nice. Perhaps having rm look at a filename called "-i" and interpret that as a command-line flag is probably the best "bug as feature" offered so far. :-)

      While I'm sure you're just saying this with tongue-in-cheek, I'd like to point out for the less savvy that when you say:

      $ rm *

      The star isn't an argument to the rm command, but rather it is an instruction to the command interpreter (such as bash) to replace the star symbol with the list of files that match your pattern (i.e. all of the files that don't start with a dot). That's why if you have too many files in a directory and you try this, you end up getting an error about the command line being too long -- it's trying to build a command line that has all of the file names listed out as though you'd typed them there yourself.

      So the -i isn't a bug-as-feature, but a clever hack within a very well designed and documented framework.

      --brian

    47. Re:rm by Anonymous Coward · · Score: 0

      Let me save you a second of personal embarassment
      That would be: #touch ./-i

    48. Re:rm by Anonymous Coward · · Score: 0

      alias rm="rm -f"

      When I figured out I could alias rm to rm -f I was hooked. I never went back to windows.

    49. Re:rm by LihTox · · Score: 1

      Indeed, but if we are working someone else's account, we should think twice before deleting files ;)

      Or on the other hand, one might be more inclined to tidy up after oneself on a foreign account, deleting those temporary files which one might normally leave lying around in one's own account. "rm * ~" anyone? :)

    50. Re:rm by LihTox · · Score: 1

      As mentioned earlier in the thread, the only thing I'd change is to call it something other than "rm", so that you don't go looking for purgatory the next time you use someone else's machine.

      (If you want to be especially clever, you might want to deal with the scenario where you "delete" a file whose name matches a file already in purgatory. Of course, the standard mv behavior, silently replacing the old version with the new one, is a not-so-bad solution.)

    51. Re:rm by mrchaotica · · Score: 1

      (hit up-arrow delete delete delete delete delete enter, or ESC-k d w enter, or C-p C-d C-d C-d C-d C-d enter, or whatever, yielding...)

      Or just hit up-arrow C-a M-d, which are EMACS-style keybindings that work by default.

      (C-a moves to the beginning of the line and M-d deletes the word to the right of the cursor.)

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    52. Re:rm by mrchaotica · · Score: 1

      Lih-tox's "ls then rm" script is a better idea than rm -i anyway, because rm -i asks for confirmation for each file separately while his script (apparently) asks about all the files at once.

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    53. Re:rm by Asic+Eng · · Score: 1

      When I was studying in Manchester the sysadmins had added a feature to protect users from accidentially using rm. So when you were typing "rm" it was really executing "rm -i". Of course, sometimes it's necessary to use rm without the "-i" - the sysadmins realized that, too. So typing "rm -i" would really get you "rm". One of my colleagues, being intimately familiar with Unix, but not being aware of that setup.... Well, I'll spare you the rest.

    54. Re:rm by Antique+Geekmeister · · Score: 1

      This is the default in most RedHat systems. Many users learn to automatically type "rm -rf", and the protection evaporates pretty quickly.

    55. Re:rm by Anonymous Coward · · Score: 0

      Of course it works as designed, but that doesn't mean that the whole issue isn't a bug in the design. "-i" is a valid filename, but it might as well not be, considering that about 99 % of unix shell scripts don't deal with that kind of filenames well. Any time you see "*" used in a shell command, the functionality is probably different from what is intended, just because of this one design bug.

    56. Re:rm by cyberkreiger · · Score: 1

      Anyone not using version control deserves what they get.

      Seriously, you have a whole team working on one copy of the code, and your solution is daily backups?

      Just install Subversion or some other nice version control system, and do daily backups of the repository instead.

      --
      Stumbling in the dark
      I hear slavering of jaws
      Eaten by a grue.
    57. Re:rm by hal-j · · Score: 1

      First, despite which "reply" I clicked, I was addressing the "rm * .old" comment, whoops.

      Second, they're only "silly little files" until they save your rear. Mistakes happen, and having a few safety nets around can't hurt, especially in a case like this, where it's not in your way until it's doing its job.

      --

      -Hal
    58. Re:rm by mangobrain · · Score: 1

      I once typed 'rm -rf /etc' on my box at work instead of 'rm -rf etc'. I was attempting to clean out part of either a virtual machine or chroot environment (I forget which), but unfortunately ended up running the command on the host itself.

      Working for a company whose product is at its core a specialised Linux distro leads to all sorts of confusing moments - it's not uncommon for me to have my machine running two or three instances of QEMU running our products (with at least one more running Windows on the same virtual network), two or three terminals open on the host (which may or may not be running an SSH session to one of the virtual machines), an SSHFS mount point or two on the host to the guest's file systems, and a copy of our build environment, a fully-fledged chroot environment with its own toolchain (which is also a Subversion working copy, but can only be usefully used as such whilst not chrooted).

      The best part is that I was able to stop the command half-way through and actually recover the system without a reinstall - in fact, I'm still using the same install of the same OS to this day (this was about a year ago now). This was/is Gentoo (as developers we get free reign over our own machines, the only requirement being that our choice of OS can build - or be persuaded to build without too much hassle - a local copy of our build environment); I had to recreate a few important things such as /etc/make.conf and /etc/profile, but since I basically still had a working build environment and was logged in as root when having run The Command, I was able to get the rest back eventually (as long as I didn't log out, and as long as I didn't mind losing the rest of that working day compiling stuff).

    59. Re:rm by mangobrain · · Score: 1

      Disclaimer: I haven't actually tried this, and so may be talking utter BS. However...

      Surely the shell will expand 'rm *' such that the listing will include anything in the current directory, regardless of name? That should, in this case, get a literal '*' inserted into the arguments that get passed to 'rm'. Since it's reasonable to assume that the shell won't try to expand arguments recursively, and that 'rm' neither has its own expansion routines (duplicating functionality from the shell) nor is itself a shell script, the file '*' will be deleted just fine.

      Alternatively, couldn't you just run 'rm \*'?

      Not quite sure what's so "interesting" about this one.

    60. Re:rm by pgillan · · Score: 1

      ... now the waiting game Awww, the waiting game sucks! Let's play Hungry Hungry Hippos!
    61. Re:rm by jsebrech · · Score: 1

      Subversion also counts as a daily backup, but at work we have a policy that you only check in working code (with reason), so daily checkins aren't realistic in some cases. I could work on a branch of course, but I don't see enough benefit in using a branch versus simply making local backups of my dev folder at the end of the day.

      Anyway, at the time of the events I was a poor student, subversion didn't exist, and we couldn't install cvs on the server in question, nor did we have any spare server to install it on. The only backups we could make were to floppy, and we kind of got lazy with those.

    62. Re:rm by pionzypher · · Score: 1

      For those looking to try this, neither touch nor vi allows creation of a filename of -i. Though an "echo hi | cat > -i" works fine.

      Also note that it only worked for me if I was in the directory with the -i file. so if you were to say be in / and did a rm -rf /etc /*.old ; etc would still get blown away.

      Great trick though, thanks for sharing! We should have another linux/unix tricks/shortcuts story. Some of the shortcuts posted on the last one were incredibly helpful

      --
      I'll believe in corporations having personhood when Texas executes one... - advocate_one
    63. Re:rm by Scoth · · Score: 1

      I tried a 'touch -- -i' and it worked fine. Fun hack.

    64. Re:rm by Cruise_WD · · Score: 1

      Yup, did that at work a few weeks ago, after an all weekender playing CoH. I'd been working with SQL all day, so at the end, when I went to remove a temporary directory I typed:

      rm -rf * replication/

      instead of

      rm -rf replication/*

      'cos my head was still thinking in DELETE * FROM ... syntax :/

      I was there until 10pm trying to restore the directory from backup.

      --
      [ cruise / casual-tempest.net / xenogamous.com / transference.org / quantam sufficit ]
  7. Gotta be the BSOD by LenE · · Score: 1

    Everytime it happens, I just smack myself in the forhead for not rebooting sooner. Usually I can just reboot with a better memory state than before the BSOD.

  8. Every single BSOD I get.... by Reverend99 · · Score: 0

    ... 15 minutes of coffee break time!! 15 more minutes of paid time!!!

  9. The money lender bug in Taipan by Anonymous Coward · · Score: 5, Interesting
    Great game! Here.

    The guy who wrote the Windows version actually allows you to turn it on! Overpay the money lender and your money grows at 10% a month! The bug was in the original Apple 2 version and then subsequent ports, like the one to Palm, removed it.

    1. Re:The money lender bug in Taipan by Rei · · Score: 2, Interesting

      My favorite was from Final Fantasy Tactics -- the level up/level down as a different class bug for boosting your stats. The neat thing about it was that while you could do it, and it had very real benefits, it took a lot of effort. As a consequence, it was more like a non-required miniquest, sort of like Chocobo breeding in VII or card collecting in VIII, that people who wanted a "perfect save" could choose to embark on.

      In general, I actually liked Tactics' bugs.

      --
      How come things that happen to stupid people keep happening to me?
    2. Re:The money lender bug in Taipan by fustanella · · Score: 1

      Similar bugs were in the original Level 1 TRS-80 Blackjack cassette - bet negative, lose, profit. :)

      And in Santa Paravia en Fumaccio, you could buy a metric buttload of grain, go bankrupt, and still have the grain. Sell!

    3. Re:The money lender bug in Taipan by EmperorKagato · · Score: 1

      That's not a bug. That's a feature.

      Don't forget other members of that class generate points to everyone.

      --
      ----- You know you have ego issues when you register a domain in your name.
    4. Re:The money lender bug in Taipan by cyclop · · Score: 1

      I remember a nice bug in Civilization I for DOS. If you had a settler modifying a terrain, you could have every terrain improvement in one turn by:

      while not improved {

      make the settler improve (e.g. pressing "i" for irrigation)
      re-activate the settler by clicking on it
      }

      The number of cycles is equal to the number of turns it would have required to build the improvement. Too bad in FreeCiv they fixed that...

      --
      -- Patent no.123456: A way to personalize /. comments with a sig attached to the end.
    5. Re:The money lender bug in Taipan by macwhiz · · Score: 1

      There's a similar bug in SimCity 2000, at least for Mac.

      Type "FUND", which gave you $20K in the original SimCity, and SC2K offers to give you a bond at 25% interest instead, which would be insane. Take it anyway. Then do the same thing again. Then go to your financial advisor and take out a bond the normal way. You'll be offered a bond at ".%" interest. Thanks to the miracle of integer wraparound, you will now have a bond with a huge negative interest rate that will throw over a million dollars a year into your city's coffers. Just don't pay back that third bond...

    6. Re:The money lender bug in Taipan by Anonymous Coward · · Score: 0

      Wow - I remember playing this on an apple IIe, waaayyy back in the day! Ahh nostalgia!

      Except, the page to download from:

      "New in version 1.11: Installer now registers support file COMCTL32.OCX and Taipan now unloads all forms on exit."

      Uhhh, is that a bug or a feature?

  10. GPOW by SinGunner · · Score: 4, Funny

    I remember getting Godly Plate of the Whale in Diablo at the sacrifice of a single potion with the duping bug. I can't think of anything better than that.

    1. Re:GPOW by Clever7Devil · · Score: 1

      You sir, are old school. I like it.

      --
      "By the time they had diminished from 50 to 8, the other dwarves began to suspect 'Hungry.'" -Gary Larson
    2. Re:GPOW by crow · · Score: 1

      I'm not familiar with that bug, but if you include games, there is a whole wide range of bugs that make the games easier. You can probably find examples in almost any large game.

    3. Re:GPOW by Moridineas · · Score: 1

      It's more complicated than you think even--and I'm laughing that I remember this from what, 10 years ago?--Godly Plate of the Whale didn't exist in the game--you could never find it. Somebody hacked the game to create that item, and then thanks to the duping bug, everyone got one! The duping bug was big!

      Ahh, good times...

    4. Re:GPOW by StarvingSE · · Score: 3, Interesting

      He's not that old school.

      How about that great bug in many 8-bit ninendo games where you could "scroll" and enemy off the screen instead of killing it. I think SMB had this bug, bug-turned-feature, but many other games had it as well.

      --
      I got nothin'
    5. Re:GPOW by Binestar · · Score: 2, Informative

      Godly Plate of the Whale certainly existed in the game. Single player you would find it all the time, battle.net you would find it extremely RARELY, but all you needed was -1-, and you're set.

      I personally found a Staff of the Apocolypse with 3 charges. Once you have that, you can dupe it up and pretty much just clear every level by casting 3 times, then portaling and repairing it.

      Once people got item editors which allowed you to change the amount of charges to 99, it was even more useful.

      --
      Do you Gentoo!?
    6. Re:GPOW by osu-neko · · Score: 1

      I personally found a Staff of the Apocolypse with 3 charges. Once you have that, you can dupe it up and pretty much just clear every level by casting 3 times, then portaling and repairing it.

      Once people got item editors which allowed you to change the amount of charges to 99, it was even more useful.

      Pfft! Archangel's Staff of Apocalypse, 255 charges. Much better. And why repair when you can just dupe a fully charged copy? :D

      --
      "Convictions are more dangerous enemies of truth than lies."
    7. Re:GPOW by Loundry · · Score: 2, Interesting

      You're not that old school.

      Did you ever identify item #9 in Wizardry with your Bishop? Or item "number" M?

      I don't know if that qualifies as a bug or an easter egg, but it sure made Wizardry very interesting for the next 5 minutes, after which it became suddenly very boring forever. (I guess that qualifies as a rotten easter egg.)

      --
      I don't make the rules. I just make fun of them.
    8. Re:GPOW by llefler · · Score: 1

      In the first Wizardry game you had an option that allowed you to move characters to a save disk. (you were only allowed to have 6 active and in your party. When you 'moved' them from a write protected save disk, you got a character that was in your party and still on the disk. Rename the active one, you can move another copy. Simple character cloning.

      --
      It is amazing what you can accomplish if you do not care who gets the credit. -- Harry Truman
    9. Re:GPOW by pyrbrand · · Score: 1

      The best part of the Diablo duping bug was when they released a patch to fix it and got so many complaints they had to release a second patch to put it back in. I probably spent as time duping gold and arranging bag space in that game as I did actually playing it :).

    10. Re:GPOW by adrianmonk · · Score: 2, Funny

      How about that great bug in many 8-bit ninendo games where you could "scroll" and enemy off the screen instead of killing it. I think SMB had this bug [ ... ]

      Why not -- I mean, I don't see how a file-sharing protocol like SMB really has characters that can scroll or be killed, but SMB has so many bugs, it probably has this one (as well as most others you can think of).

    11. Re:GPOW by deathlord1003 · · Score: 1

      I loved that bug too. Was great way to duplicate attribute potions and spell books too :)

    12. Re:GPOW by Moridineas · · Score: 1

      Are you sure? It has been a long time, but wikipedia (http://en.wikipedia.org/wiki/Diablo_%28video_game %29) seems to backup my memory about godly plate of the whale.

    13. Re:GPOW by Binestar · · Score: 1

      Yes, I found a set in single player.

      --
      Do you Gentoo!?
    14. Re:GPOW by Anonymous Coward · · Score: 0

      Rygar and several other side scrollers had a bug where you could duplicate enemies. Just wait until one appears on a side and run away until the enemy is almost totally off screen. Then move back and often you'll have two. Repeat this to add one each time. Kill them all at once for the payoff.

  11. buffer overflow by virtualXTC · · Score: 5, Insightful

    buffer overflows are great - they allow you to get root on all sorts of devices that some bastard tried to lock you out of.

    1. Re:buffer overflow by Raul654 · · Score: 1

      If I could mod you to +10 funny I would...

      --


      To make laws that man cannot, and will not obey, serves to bring all law into contempt.
      --E.C. Stanton
    2. Re:buffer overflow by Anonymous Coward · · Score: 2, Funny

      Yeah, but that's only so you could exploit the buffer overflow and get root on slashdot.

    3. Re:buffer overflow by YodaYid · · Score: 1

      It scares me a little that that was modded Insightful, not Funny...

    4. Re:buffer overflow by Crizp · · Score: 4, Funny

      If I could mod you +65537 Funny I would.

    5. Re:buffer overflow by megaditto · · Score: 2, Interesting

      It is insightful.

      Reminds me of a buffer overflow in a cheap consumer router http://en.wikipedia.org/wiki/WRT54G

      You could then use this bug to get rid of the crappy pre-installed firmware and load your own copy of linux (which gave you an industry-grade router for under $40).

      This same bug was later used to force Lynksys to comply with GNU GPL.

      --
      Obama likes poor people so much, he wants to make more of them.
    6. Re:buffer overflow by zobier · · Score: 1

      If I could mod you +65537 Funny I would. Don't you mean +65536?
      --
      Me lost me cookie at the disco.
    7. Re:buffer overflow by Crizp · · Score: 1

      Of course, if you start at 0 (why didn't I? brainfart, I guess.)

  12. Not sure if this is a bug... but by SirStanley · · Score: 4, Interesting

    ncpmount on linux... at least in our configuration... allows us to overwrite files that have "locks" on them by users. It appears to be happy to ignore the locks. I'm guessing this is a bug... because I can't do it with the same user from Windows.

    This allows us to deploy our java Jar's to our Folders on our network where the users launch the app from.

    Yay.

    --
    --------========+++Dont Feed The Lab Techs+++========--------
    1. Re:Not sure if this is a bug... but by smallfries · · Score: 4, Informative

      That probably isn't a bug. Most file-systems don't lock files that you are executing, so they can be overwritten whilst mapped into memory. This can abused in lots of amusing ways.

      --
      Slashdot: where don knuth is an idiot because he cant grasp the awesome power of php
    2. Re:Not sure if this is a bug... but by badfish99 · · Score: 5, Informative

      I think you're describing the Unix feature that you can replace an executable file while it is in use; the program that is using it will continue to see the deleted version of the file, and new programs will see the new version.

      That's not a bug, it's a feature. It's the reason why you don't have to reboot Unix machines after a software update, as you do for Windows.

    3. Re:Not sure if this is a bug... but by Thuktun · · Score: 1

      Most file-systems don't lock files that you are executing, so they can be overwritten whilst mapped into memory. This can abused in lots of amusing ways. Some subset of Windows versions lock executables for processes that are currently running. Because some critical system executables can't really be shut down during normal operations, this means some files will always be locked while the system is running. This means installs and updates to the system have to use a "move on reboot" hook in the OS and insist you reboot for the changes to take effect.

      Personally, I prefer overwriting the file and restarting any relevant processes to cold-starting the OS, but maybe that's just me.
    4. Re:Not sure if this is a bug... but by JohnnyLocust · · Score: 1

      Most file-systems don't lock files that you are executing, so they can be overwritten whilst mapped into memory. This can abused in lots of amusing ways.

      Amusing "haha", or amusing "uh-oh" ?

    5. Re:Not sure if this is a bug... but by cgreuter · · Score: 1

      Actually, this is a Unix thing. Unix locks are advisory, not mandatory. That is, while Windows locks prevent you from removing the file, Unix locks require programs to explicitly check for the presence of locks and honour them. Programs that don't can trample all over locked files if they want.

      (BTW, Linux also has mandatory locks, but you have to enable them with a mount option (IIRC). You usually don't want this, however.)

    6. Re:Not sure if this is a bug... but by Starteck81 · · Score: 0

      On windows 2k I logged into the C$ admin share on a college's PC and discovered that I could change the name on the WINNT directory. This has the interesting effect of making the explorer.exe crash, with no error message, but the kernel kept running with out a problem. When you changed the name back everything would restore to the way it was. If memory serves even the programs that were running before were still there.

      So ever so often I would go in and change the name of the WINNT dir back and fourth a few times to screw my coworkers. They never did figure out what caused their PCs to do that. I'd just smile and suggest gremlins.

      --
      "There are four boxes to be used in defense of liberty: soap, ballot, jury, and ammo. Please use in that order." -Ed H
    7. Re:Not sure if this is a bug... but by Fulcrum+of+Evil · · Score: 2, Interesting

      No, that's not how it works. You can nuke a binary for an executing unix binary, but it doesn't get deallocated until all the open file handles are closed. Because of this, you don't need to lock running binaries. NFS locks can be gotten around if the lockd is screwed up.

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
    8. Re:Not sure if this is a bug... but by jimicus · · Score: 1

      Particularly in batch files which are not only executed one line at a time, they're also read into memory one line at a time. So you really don't want to overwrite a batch file that's currently running.

    9. Re:Not sure if this is a bug... but by cgreuter · · Score: 1

      First of all, this is completely irrelevant to what I said.

      Secondly, it actually would make sense to lock a running executable.

      Most advanced operating systems read code pages from the executable. That is, when they need to make room in RAM, rather than swapping out parts of the executable, they just toss them. When they need that part of it back, they just reload it from the executable.

      So, if you do something like this while myprog is running:

      vi myprog.c

      gcc myprog.c -o myprog

      there's a good chance that myprog will crash as a result. This is because gcc overwrites the file "myprog" in place.

      If, instead, you do this:

      vi myprog.c

      rm myprog

      gcc myprog.c -o myprog

      then you're fine, for the reason the parent described:

      Basically, *nix filesystems keep a list of links to a file. The filesystem doesn't erase the file until there are no more links to it. Most of the time, a link is a directory name but if there's an open filehandle to that file or if it is a running executable, that also links to the file.

      The "rm" file unlinks the file from the current directory but because the program is still running, the file continues to exist, albeit without a name so the program can keep running.

      Of course, if you don't unlink the file before recompiling, gcc opens the same file for writing and overwrites a new executable into it. The OS, the next time it needs to page, reads the file from that but since it's now a different executable, the program crashes. This used to happen to me all the time before I wised up and put an "rm" command before the final link in my Makefiles.

      But what does this have to do with locking? Not much.

      It'd be nice if Linux locked running executables in a manditory way, but not enough to really be a bother.

      And anyway, as I said in the grandparent, *nix locks are (usually) advisory, not mandatory. Really. It's in the Fine Manual.

    10. Re:Not sure if this is a bug... but by TheUnFounded · · Score: 1

      Easy sol'n on windows is to rename the old exe first. I've used it in self-updating code I've written. Rename the existing exe, place the new exe in its place, tell the app to restart itself, and voila, a self-updating executable, no reboot required.

    11. Re:Not sure if this is a bug... but by caluml · · Score: 1

      Yep. I was impressed while I uninstalled X while using it, and emerged xorg. I couldn't open new things, but I guessed that, and opened all the stuff I'd need while it worked.
      My Window colleagues didn't see what was impressive. "But I've uninstalled the thing I'm using right now"...

    12. Re:Not sure if this is a bug... but by Doctor+Faustus · · Score: 1

      the program that is using it will continue to see the deleted version of the file, and new programs will see the new version.
      That's kinda like Oracle's locking scheme, but the other way around. A connection with uncommitted transactions will see the changes it made, while the other connections will see the data as it was before the changes were made. It's much more friendly than SQL Server, which just blocks everything else until the transaction is committed or rolled back (unless you use NoLock, which is slightly dangerous).

      I hear SQL Server 2005 has a new option to work the Oracle way, but I've never tried it.

    13. Re:Not sure if this is a bug... but by Fulcrum+of+Evil · · Score: 1

      It'd be nice if Linux locked running executables in a manditory way, but not enough to really be a bother.

      why? So gcc works better? That's an edge case compared to being able to install on top of an existing file and restart the program at the end - that's really simple the way things stand. Not so much with exclusive locked files.

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
    14. Re:Not sure if this is a bug... but by lahvak · · Score: 1

      I remember back in the old DOS days, I had a menu software that heavily relied on this behavior. You would start a batch file, which would invoke the menu program. You would select something from the menu, it would get written into the batch file on the next line after the menu, followed by another line that would restart the batch file again. Then the menu program would exit, passing control back to the batch file.

      --
      AccountKiller
    15. Re:Not sure if this is a bug... but by adrianmonk · · Score: 1

      I think you're describing the Unix feature that you can replace an executable file while it is in use; the program that is using it will continue to see the deleted version of the file, and new programs will see the new version.

      I think he's describing the way that ncpmount doesn't enforce the locks that the remote Netware filesystem (presumably) says it's required to support, thus allowing you to modify the filesystem in ways that the regular Windows clients can't.

    16. Re:Not sure if this is a bug... but by Anonymous Coward · · Score: 0

      Yes, it seems like a great "feature". Until you're running a program from an NFS mount. Then you do something in your program that causes it to page in some code and either pages in the wrong code or the inode is gone completely. At that point, you'll wish that the file had been locked so you could have saved your work before somebody decided to upgrade without having to reboot because of those pesky locks.

      dom

    17. Re:Not sure if this is a bug... but by cgreuter · · Score: 1

      why? So gcc works better?

      No.

      That's an edge case compared to being able to install on top of an existing file and restart the program at the end - that's really simple the way things stand. Not so much with exclusive locked files.

      If you'd actually read the post you're replying to, you'd know exactly why this is wrong.

      Overwriting a running executable will corrupt the running process. Recompiling your database server and doing a "make install" while the server is still running will crash the running server if you're lucky. If not, you're gonna have to restore the database from backup.

      Proper write-locking would prevent writing to running executables but it wouldn't keep them from being unlinked. If you delete the existing executable before installing the new one, everything would still work, and since you're supposed to do that anyway, you don't lose anything but gain a certain amount of oops-proofing.

  13. IE6 is packed with 'features' by Allicorn · · Score: 4, Interesting

    And although, ultimately, its a pain in the arse that they're there at all, when you get get down to the practical day-to-day business of writing/maintaining websites, some of those bugs turn out to be very handy in concocting freaky work-arounds for inconsistencies in the ways that browsers support (or don't support) the standards.

    I'll leave the provision of an exhausitive list to somebody else, but suffice to say if you're looking for a sizeable seam of bugs-which-simultaneously-screw-you-over-and-help- you-out, then there can hardly be a better place to look than Internet Explorer 6.

    --
    OMG!!! Ponies!!!
    1. Re:IE6 is packed with 'features' by Anonymous Coward · · Score: 0

      ...pain in the arse...

      The correct spelling is "ass", not "arse", you ass.

      Hugs & kisses,

      Mr. Arse

    2. Re:IE6 is packed with 'features' by seandiggity · · Score: 1

      Not sure what you mean...I've been working on websites for years and bugs in IE (or just plain lack of support for standards) have never helped me out. Perhaps they would in the hypothetical case that all my visitors used IE, and then they would probably have to be using the same version of IE. IE6's atrocious PNG support is a real hassle, to name one case. How could a workaround for this (there's a Joomla component, for example) possibly help me out?

      --
      Geeks like to think that they can ignore politics, you can leave politics alone, but politics won't leave you alone.-rms
    3. Re:IE6 is packed with 'features' by seandiggity · · Score: 1

      For anyone interested, that Joomla workaround for PNGs is actually a mambot (not a component): http://extensions.joomla.org/component/option,com_ mtree/task,viewlink/link_id,859/Itemid,35/ ...although I assume mambots will be called something else (joombots?) in version 1.5 or 2.

      --
      Geeks like to think that they can ignore politics, you can leave politics alone, but politics won't leave you alone.-rms
    4. Re:IE6 is packed with 'features' by pasamio · · Score: 1

      They're called plugins.

      --
      I always wondered where this setting was...
    5. Re:IE6 is packed with 'features' by seandiggity · · Score: 1

      That'd too bad, I woulda liked "Joombots". They could have waged war with the Decepticons.

      --
      Geeks like to think that they can ignore politics, you can leave politics alone, but politics won't leave you alone.-rms
  14. QW strafejumping by dybvandal · · Score: 3, Insightful

    Easily the best bug ever. Its been paramount in enabling continous "innovation" as people speed jump through maps.

    1. Re:QW strafejumping by Vireo · · Score: 3, Interesting

      Game are full of such feature-bugs. The strafejumping bug was finally added as a feature in subsequent versions of Quake, but other "bugs" (or limitations) in the physics model of Quake (and presumably other games) are used by skilled players.

      For example, in Quake 3, the sampling of the position of the player in 3 dimensions is tied to the frame rate. When the player jumps, in the physics model, the player appears in successive, discrete position along a pre-computed parabolic trajectory. Only at key frame rates, a position sample appears at the peak of the parabola. Players running at these key frame rates are thus able to jump higher. Some custom maps feature areas that are accessible only to players knowing this trick.

      There is also a Quake 3 mod (Defrag) which was created to facilitate finding map bugs (e.g. rebounds, which happen when you can fall with absolutely no x or y speed component on some surfaces, happens when the z velocity gets reversed). This leads to impressive "trick jumps" which do not violate the rules of the game (since they are done without modifying the game engine). A quick look in Google and you can find many trick-jumping videos based both on synchronisation and on physics model bugs.

    2. Re:QW strafejumping by Ant+P. · · Score: 3, Interesting

      The wallrunning bug on Doom is better IMO. Especially when you can do it from one end of the map to another (pretty common on most doom2 DM maps).

    3. Re:QW strafejumping by imbaczek · · Score: 1

      mod parent up.

      but don't forget q2 and q2dm1 megahealth area. best bug since sliced bread!

    4. Re:QW strafejumping by shoolz · · Score: 2, Informative

      Yes! The strafe jumping bug/feature was so cherished by the Quake 3 community that when iD patched Quake 3 to fix it, the community went ape-shit forcing iD to patch the game again to reintroduce the bug!

      This is the only related link that I could find.

    5. Re:QW strafejumping by mobby_6kl · · Score: 3, Interesting

      UT ('99, the first and only true version) kicked ass in this department. Most (that I'm aware of) have to do with launching players (or objects) and are especially fun in team games, like CTF and Assault.

      A player could be launched all the way across an outdoor map by a teammate with a fully loaded rocket launcher shot to the legs or ground immediately next to the player. Combined with some sloping surfaces, such launches could be easily performed while being very accurate. On AS-Mason such rocket launch could get a player all the way over all defenses and just an elevator ride to the final goal. That is, unless the other team is aware of the launch and has people waiting there.

      It's also possible to launch players with the impact hammer, but from experience it's a little harder to perform with people who aren't familiar with the technique. While looking for some illustrations, I noticed that the wikipedia has a few paragraphs about launching, so I won't go into more details here.

      What the wikipedia article doesn't seem to mention is that it's also possible to launch your translocator pretty far with the impact hammer, for example from the top of one of the towers on CTF-Face to one of the balconies on the opposite one. Another one, which I never actually mastered, was book launch/jump. It involves standing on a book object, like those lying around on the floor in libraries, and then either hitting it with the hammer, or having someone else shoot it (I think). This, of course, also resulted in a huge jump, and is probably more of a bug than the other methods.

      Most of these methods seem to be just exaggerations of standard physics, since both the impact hammer and rocket launcher are supposed to throw stuff around. At first, I found these tricks frustrating, but IMO they add a lot to the game. Especially Assault, which otherwise becomes a spam-fest with everyone camping the choke points like it's some kind of counterstrike. Epic probably recognized this, so they never changed this in UT99, but all of this is sadly gone in UT03/04.

    6. Re:QW strafejumping by benicillin · · Score: 1

      these all sound a lot like superbouncing in halo 2. no game mods required. just some kind of bad programming that lets you bounce out of the level if you jump in certain spots after running into a wall for a while.

      --
      "i stand on the edge of destruction" -shai hulud
    7. Re:QW strafejumping by Lt.Hawkins · · Score: 1

      When the Action Quake 2 community started working on Reaction Quake 3, one of the key requirements was to reimpliment strafe jumping. Lots of people hated it, but it opened up new worlds, new strategies, new areas, and added "realism" in that not everyone could perform exactly the same - some people can run faster than others in real life.

      Plus, its damn funny to watch someone miss a stunt jump and fall, wily e. coyote style.

      --
      -- My Sig is a P228.
    8. Re:QW strafejumping by CastrTroy · · Score: 1

      There's a "bug" in the original Descent where if you build your own level, you can put rooms within rooms, and make some really messed up levels. I still work on descent 1 levels because it's really easy to design levels, and the simplified 3D engine lets you do things that would be impossible with more advanced games. Also, I'm a big geek. So, one trick is where there's a floating cube in the middle of the room, and upon entering the floating cube, you enter a room that's larger than the floating cube. A hypercube of sorts.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    9. Re:QW strafejumping by Carnivore · · Score: 1

      Mine isn't quite a bug, but an interesting way that they handled the weapons in descent 1. All of the weapons were a "laser" level. If you hex-edit the savegame file, you can increase your laser level beyond 4. I liked to set my laser to the meganukes. It was fun to see a stream of huge homing missiles streaking towards a target.

      You did have to be careful to avoid the laser powerups, though. It must have been programmed thusly:

      got-laser-upgrade
      if laserlevel > 3 then laserlevel = 4
      else laserlevel ++

    10. Re:QW strafejumping by Anonymous Coward · · Score: 0

      No way....

      Marathon series games. Running along a diagonal let you run root2 times your normal speed... that's right... the vectors are additive!!!

    11. Re:QW strafejumping by mikael · · Score: 1

      'bzflag' had/has a bug where someone could save a screenshot while driving a tank towards a wall. Due to the time delay, that person's tank would end up walking through the wall (known as wallwalking). Particularly useful for entering another team's compound and stealing their flag. But anyone seen doing that would usually end up being banned.

      --
      Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
    12. Re:QW strafejumping by v1 · · Score: 1

      I was going to spend some mod pts on this thread but owell.

      My favorite UT bug is the lift/hammer bug. I believe the map was phobos, it's got three very tall spires outside that have bright lights at the top. Their tops are totally unreachable, maybe 300 ft from the highest surface. But on the map there is a fast lift that stops at the top of the structure it's on. Nearest I can tell, when you get on a lift and the lift goes up, it changes your velocity to the velocity of the lift so you stay on it. When the lift gets to the top, anyone on the lift gets their vertical velocity reset to 0. This is a very fast lift so it is setting your Z really high when you are taking the lift up.

      So, take the lift. When it is juuust about to the top, hit the impact hammer down. They thought about the possibility that you jumped near the top and that's prevented from working, but the hammer they must have overlooked. So when you reach the top, the hit from the hammer has pushed you just a hair up off the lift and then the lift stops. Since you're not ON the lift, you don't get your Z reset, and you go flying up to the top of the map like you were shot out of a canon. It's a low gravity map, so you won't die when you land. The trick now is to land on a spire. It's a single point and is probably only about 1'x1' in game physics for purposes of landing on it so it takes a few tries. It's a long fall, the entire map is less than 2" wide on your screen when you apex.

      Now sit up top with the sniper rifle and stump your friends for a long long time. You will get headshots on anyone that steps foot outside, no matter what they are hiding behind. The arc light that is at the top of the spire makes you EXTREMELY hard to see, even when fully zoomed on on with the sniper rifle. If you want to add to the confusion, jump up, shoot the translocator straight down, and straff off to the side and fall down. This leaves your translocator up there, and you are free to go grab more sniper ammo and return immediately to your perch.

      This is not a frequent bug to use, as very few maps have lifts that top out at the top of a structure. I suspect most lifts stop and require you to walk forward out of a doorway to prevent this bug from being exploitable.

      --
      I work for the Department of Redundancy Department.
    13. Re:QW strafejumping by Antique+Geekmeister · · Score: 1

      Ahh yes. Then there's the Marathon 2 rocket-launch trick: firing a rocket propels the player backwards. Badly handled, this could push you right off into the poison or lava. But there was at least one point in the game where you had to walk over a high wall into a valley where dozens, even hundreds of aliens would appear and waste all your ammo with you, leaving you beaten and bleeding to enter the next level, and the last save point was at least 5 minutes of play before that point.

      It was extremely painful to deal with until I worked out how to walk off the edge, trigger the aliens to show up, blow myself backward onto the edge with the rocket, then wait while the aliens started shooting at each other. Then I could hop down and mop up the mess with a much, much smaller bucket, sometimes even just a dishrag instead of the Zamboni previously required.

      There's also an amazingly funny video trailer for Team Fortress 2, that involves soldiers bouncing and spinning across the sky by rocket launching themselves, with a water ballet soundtrack. Watching them land gracefully in a neat row and the last one breaking his leg with an audible "snap" is amazingly funny to watch.

  15. Easy! by carn1fex · · Score: 4, Funny

    They screwed up alot of our web-based financial software. If i set the number of items purchased to zero, the whole thing reboots and i get to go home for th

    --

    ---------

    No matter how thin you slice it, its still baloney.

    1. Re:Easy! by wisconjon · · Score: 1

      Where can I get a bug like that? It's kind of like the old "Boss Key" from Liesure Suit Larry...serves a great purpose, creating simultaneously lower productivity with job satisfaction

    2. Re:Easy! by Anonymous Coward · · Score: 0

      *woosh*

  16. Personally, I like... by ZiZ · · Score: 4, Funny

    Error

    Nothing for you to see here. Please move along.

    Nothing beats a good dose of pot-kettle interaction.

    --
    This flies in the face of science.
  17. ModeX graphics? Buffer overflows? by Kufat · · Score: 5, Insightful

    The famous undocmented 320x240 VGA video mode, pre-VESA, and other tweaked VGA modes.

    I've heard the 6502 (or, more specifically, RP2A03) had some useful undocumented opcodes. I think they weren't intentional, so they might count.

    On the software side...how about exploitable buffer overflows on the Xbox and PSP to enable execution of arbitrary code?

  18. Ping of Death by thomasdn · · Score: 4, Funny

    Ping of Death (http://insecure.org/sploits/ping-o-death.html) entertained me quite a while :)

    1. Re:Ping of Death by Howserx · · Score: 1

      Hey, Vista has a new TCP/IP stack doesn't it? Someone should give it a test...

      --
      I support the troops. I pay f'ing taxes.
    2. Re:Ping of Death by Anonymous Coward · · Score: 0

      Many years ago I was the admin of a lab full of Win95 machines, and had a script to ping-of-death them all at times when policy dictated that the lab be closed.

  19. Re:Personally, I like... Actually... by Hollinger · · Score: 1

    I've seen trace before that said something like: "FunctionName: line 434 : Error: (Not an error)"

  20. Not a software bug but a design flaw by jimicus · · Score: 5, Funny

    Not a software bug but a design flaw in a car I used to own.

    The Vauxhall Astra Mk.2 (Opel Kadett E) had a design flaw in the steering column. Specifically, the steering column was rather weaker than the steering lock.

    The upshot of it was when some little scrote decided to try and steal my car (this was way before cars were fitted with immobilisers), when he tried to break the steering lock the steering column snapped and the steering wheel came straight off in his hand.

    1. Re:Not a software bug but a design flaw by Anonymous Coward · · Score: 0

      My car also have an interesting bug: when I lock it, it always closes the windows. So in hot day, there is now way to leave the car opened. Well, there wasn`t: if I look the car and before it completes closing the windows I unlock it, the window is kept open and after one minute it locks back again, this time without closing the windows. :)

    2. Re:Not a software bug but a design flaw by HaeMaker · · Score: 1

      Scrote?

      BOLLOCKS!

    3. Re:Not a software bug but a design flaw by Anonymous Coward · · Score: 0

      Scrote, huh? Yes, I like Joseph Wambaugh, too.

    4. Re:Not a software bug but a design flaw by Anonymous Coward · · Score: 0

      What use is it to lock the car with the windows open? You can grab the handle inside and pull it, it will probably unlock when doing that.

    5. Re:Not a software bug but a design flaw by jimicus · · Score: 1

      Thanks, mods. Would have been a lot funnier if I could have seen the look on his face when it happened.

      Having said that, you should have seen the look on my face when I came back to my car.

    6. Re:Not a software bug but a design flaw by tsajeff · · Score: 1

      I use that feature so I can leave the windows cracked with my dogs in the car for a short bit while I run into a store. That way the dogs don't overheat. If you want to reach in to unlock a door, go ahead.

    7. Re:Not a software bug but a design flaw by adrianmonk · · Score: 1

      The Vauxhall Astra Mk.2 (Opel Kadett E) had a design flaw in the steering column. Specifically, the steering column was rather weaker than the steering lock. The upshot of it was when some little scrote decided to try and steal my car (this was way before cars were fitted with immobilisers), when he tried to break the steering lock the steering column snapped and the steering wheel came straight off in his hand.

      Reminds me of a funny story a pastor once told: he used to drive a VW bug, and like all VWs (then -- in the 60's -- and now), it was prone to electrical quirks. Specifically, the horn came on whenever you tried to start the car. He kept meaning to fix it since it was embarrassing, but didn't get around to it, and was thankful he didn't when, sure enough, he was awoken in the middle of the night when some jerk tried to steal it.

    8. Re:Not a software bug but a design flaw by Anonymous Coward · · Score: 0

      I (the original poster) do this, to leave the car less warm when I get back. Since it is in a private parking in my company, this is not a problem.

  21. Linux by stratjakt · · Score: 5, Funny

    It was supposed to be a unix clone, but actually came out useful in the end.

    --
    I don't need no instructions to know how to rock!!!!
    1. Re:Linux by Anonymous Coward · · Score: 0

      Was? Zing.

    2. Re:Linux by Mr.+Underbridge · · Score: 2, Funny

      It was supposed to be a unix clone, but actually came out useful in the end.

      Well, I know Linux isn't particularly useful NOW, so I can only assume that you are from the future. Is your name Marty? Would you care to tell me who wins the Super Bowl in 2035?

    3. Re:Linux by Anonymous Coward · · Score: 0

      You'll probably be modded troll, but this made me laugh out loud.

    4. Re:Linux by Stanistani · · Score: 1

      The Las Vegas Chargers - 47-32.

    5. Re:Linux by Mr.+Underbridge · · Score: 1

      You'll probably be modded troll, but this made me laugh out loud.

      Yeah, these bastards have no sense of humor. Naturally, I'm using Linux RIGHT NOW.

    6. Re:Linux by Anonymous Coward · · Score: 0, Troll

      it's still a unix rip off and no, it's not as useful as you think.

      the only thing funny about your jackass comment is that you actually think it's useful.

      tard

    7. Re:Linux by Anonymous Coward · · Score: 0

      your still a homo sapiens rip off and no, you're not as useful as you think.

      the only thing funny about your jackass comment is that you actually think you deserve the oxygen your breathing.

      subspecies.

    8. Re:Linux by stratjakt · · Score: 1

      lol /. mods hate me enough to mod you insightful for that

      bravo! a new way to karma troll. I salute you, fine sir!

      dissing linux and getting +1 insightful, and being a dickhole at the same time.. u rox my xbox

      --
      I don't need no instructions to know how to rock!!!!
  22. "Subscribe to view" pages visible to Googlebot. by Behrooz · · Score: 5, Interesting

    "Subscribe to view" webpages that are still visible to users browsing as GoogleBot.
     
      User agent switcher extension + Browse pretending to be GoogleBot = Annoying "register/pay to see me!" pages go away. I have no idea how many sites it works on now, but I think it still gets into a lot of archived newspaper articles and suchlike.

    --
    "We have to go forth and crush every world view that doesn't believe in tolerance and free speech." - David Brin
    1. Re:"Subscribe to view" pages visible to Googlebot. by apathy+maybe · · Score: 5, Interesting

      Personally I use the modify headers extension to do the same thing. But I have "I am not a Googlebot/2.1", rather then the full Googlebot string. But I sometimes come across pages that say something along the lines of "You appear to be pretending to be a major search engine when you are not", for those pages I change the header to "I DIDN'T CLAIM TO BE A MAJOR FUCKING SEARCH ENGINE".

      Of course, both are examples of why you shouldn't use "User-Agent" to try and detect what browser or bot is using your webpage. The first allows "illegitimate" users access, and the second blocks legitimate users.

      In fact, you shouldn't trust headers for anything unless you have a secure session. To control access to your webpage to robots, use ROBOTS.TXT or a meta tag, and to control access to other users, password protect. But the trouble is that sites are trying to eat their cake (be crawled and indexed) and have it too (control access to ordinary users).

      --
      I wank in the shower.
    2. Re:"Subscribe to view" pages visible to Googlebot. by WarwickRyan · · Score: 1

      Sweet, thanks :-)

    3. Re:"Subscribe to view" pages visible to Googlebot. by Anonymous Coward · · Score: 0

      But the trouble is that sites are trying to eat their cake (be crawled and indexed) and have it too (control access to ordinary users). I wonder why google doesn't do anything to such abuse, like zeroing their pagerank.
    4. Re:"Subscribe to view" pages visible to Googlebot. by zobier · · Score: 1

      Personally I use the modify headers extension to do the same thing. But I have "I am not a Googlebot/2.1", rather then the full Googlebot string. But I sometimes come across pages that say something along the lines of "You appear to be pretending to be a major search engine when you are not", for those pages I change the header to "I DIDN'T CLAIM TO BE A MAJOR FUCKING SEARCH ENGINE". Yeah, cause everyone logs teh headers.
      --
      Me lost me cookie at the disco.
    5. Re:"Subscribe to view" pages visible to Googlebot. by zobier · · Score: 1

      Doh! What am I thinking, of course they log the user-agent one.

      --
      Me lost me cookie at the disco.
  23. Skiing in Starsiege: Tribes by Manatra · · Score: 5, Interesting

    For me, the physics bug that enabled "skiing" in Starsiege: Tribes was the best bug as a feature. It's a bug that became a key defining point of the series.

    A description of skiing is here.

    1. Re:Skiing in Starsiege: Tribes by zippthorne · · Score: 1

      Skiing is the only thing that made that map with all the dunes and ruins at night playable. Without it you had to hike-jet across a half-kilometer and engage the enemy with no jetpack. Or stay on the ground and be an easy target for my spinfusor's splash damage.

      --
      Can you be Even More Awesome?!
    2. Re:Skiing in Starsiege: Tribes by Darlantan · · Score: 1

      It's a pity Tribes 2 sucked as hard as it did. Tribes was awesome...

      Any idea if there are any plain-old Renegades servers out there? It was by far the best mod IMO. Kinda like Team Fortress for Tribes.

      --
      Fill in your four or five-letter word of wisdom here _ _ _ _ _.
    3. Re:Skiing in Starsiege: Tribes by teh_chrizzle · · Score: 1

      darn, i didn't see this until i had posted my reply. skiing was teh awesome. i even had a keybinder mod that let you ski by holding down the jump key. ahh, memories.

      --
      sarcasm:
      -noun
      1. harsh or bitter derision or irony.
    4. Re:Skiing in Starsiege: Tribes by teh_chrizzle · · Score: 2, Informative

      i'll be there still are. i wanted to play around for old time's sake a couple of years ago (popping the heads off some spoonbots) and a few people dropped into my server.

      renwerx, the guys who made the renegades mod, is making it's own game called ascension. it's going to be free to the community and since it was made by the renegades, i figure they will be true to the original spirit of gameplay.

      --
      sarcasm:
      -noun
      1. harsh or bitter derision or irony.
    5. Re:Skiing in Starsiege: Tribes by Rimbo · · Score: 2, Insightful

      Rocket-jumping in Quake, for that matter. Totally unintentional, but became a key part of the game.

    6. Re:Skiing in Starsiege: Tribes by neildiamond · · Score: 1

      I'm surprised Legends wasn't mentioned as sort of open source attempt to recreated Tribes2. Runs on Win, Lin and MacOS.

    7. Re:Skiing in Starsiege: Tribes by woolio · · Score: 1

      Indeed.. I used to really enjoy skiing to chase down those green triangles running away from me...

    8. Re:Skiing in Starsiege: Tribes by apankrat · · Score: 1

      .. as well as grenade jumping. Though the closest one being a bug is strafe jump as it's actually a flaw in a strafing code.

      --
      3.243F6A8885A308D313
    9. Re:Skiing in Starsiege: Tribes by pjp6259 · · Score: 1

      WooHoo! Ah best game ever. I still have dreams of skiing/jetting over a hill and planting a spinfuser in some unsuspecting enemy face.

      --
      Computers don't make mistakes. What they do, they do on purpose.
    10. Re:Skiing in Starsiege: Tribes by Anonymous Coward · · Score: 0

      I'll never forget the day I was introduced to this.

      I was on a server for a match between one clan and my rag-tag team of college friends and other folks from online. Like clockwork we set to our tasks, settling into our various roles upon starting the match. Some called "D" others "O", and we started to get vehicles mobilized. Things were looking good.

      Then, they came. All of them. The entire opposing team came straight into our base wearing heavy armor, armed with mortars, moving at speeds comparable to the in-game aircraft: really, really fast. The mortars began to fall with uncanny accuracy, sending vehicle and solider alike, careening across my viewport. As I saw the green smoke trail that was meant for me, I quickly clicked off three keystrokes, and let go of the keyboard and mouse entirely.

      "Shazbot." It was all over as soon as it started.

    11. Re:Skiing in Starsiege: Tribes by Anonymous Coward · · Score: 0

      I must admit, I think this feature destoryed the game for me. You would get the punks who did nothing but practice this, and could ski in a heavy across the map, snag your flag and then ski back all before you could say "Son of a B@#$#@", and there was almost no way to stop it

      I liked the fact that you could turn this on or off in Tribes 2, but it had enough other problems to keep people from playing it.

    12. Re:Skiing in Starsiege: Tribes by Gnight · · Score: 1

      Tribes 1 is now available free of charge. You can download the full game and play it to your heart's content. There is still a following, and last time I played it (about 3-4 months ago) there were still active servers.

    13. Re:Skiing in Starsiege: Tribes by Suddenly_Dead · · Score: 1

      The first thing I did when I opened this article was Ctrl+F, and searched for Skiing. I salute you.

    14. Re:Skiing in Starsiege: Tribes by Dasher42 · · Score: 1

      I would almost like skiing except that it definitely took away parts of the gameplay that you could tell that the developers intended. It took mods to bring some of it back.

      I for one liked a mod that didn't throw a dozen armors at you, that had a few well-thought-out weapons and vehicles added, and had things in careful balance, as opposed to megaweapons and sheer speed. The turrets were more powerful, and this enforced a heads-down Rainbow Six style of gameplay which emphasised teamwork. I'm talking about the Combat mod, and I liked it so well that when the original developer had clearly gone on to other things, I extended it myself. It's still here.

      And yes, you can ski, and in a Light Armor you even get a huge jump pack "beacon". You use that *after* you've broken your enemy's will to fight, plundered their base, and run off with their women.

    15. Re:Skiing in Starsiege: Tribes by TGTilde · · Score: 1

      Same here, searched for Tribes instead though.

      Easily one of the most popular, useful bugs ever. So popular, in fact, it was programmed in specifically to it's two sequels.

      --
      --- Bah, who needs a sig?
    16. Re:Skiing in Starsiege: Tribes by Darlantan · · Score: 1

      Last time I looked (a few years back) there weren't any T1 Renegades servers up. There were the lame Ultra Renegades servers, or whatever, but no regular ones. Sucked.

      I also didn't much care for the mod the Renegades team made for T2, so I'm pretty cool on the idea of them making a game. Might work well, might not. Thanks for pointing it out though.

      --
      Fill in your four or five-letter word of wisdom here _ _ _ _ _.
    17. Re:Skiing in Starsiege: Tribes by Short+Circuit · · Score: 1

      In Quake (and many engines derived from Quake, including Half-Life), if you jump while holding the rotate keys, your trajectory changes in mid-air.

      Very useful in low-grav multiplayer environments, of which there was only one. (Ziggurat Vertigo)

  24. My favorite bug? by QuietLagoon · · Score: 0, Redundant

    Why, Microsoft Windows, of course.

  25. My Karma isn't low enough... by EWIPlayer · · Score: 5, Funny

    Sendmail

    --
    This sig used to be really funny...
  26. Re:Personally, I like... Actually... by Spudtrooper · · Score: 4, Funny

    PC LOAD LETTER? What the f*ck does that mean?

  27. Perl versus Python by goombah99 · · Score: 5, Interesting

    Perl is perhaps one large bug that works so well that it's a great feature. For example in perl when you compare two things you get an answer that is stable no matter what the items are. In python you can't and even when you can the answer is not stable. The order of a sorted list can depend on it's orginal ordering! You cant compare floats to Complex numbers but you can compare strings to complex numbers. Sets are grouped by equality not identity so 4.0 and 4 are the same thing for a set. Which one stays and which one get added to the set depends on the ordering of the lists that were put in the set.
    it's nuts. And the origin of the nutty ness is an obsessive desire not to have default behaviours. Whereas perl is all default behaviours. In the end perl does what you really meant, and python does what you told it.

    in case you think I'm python bashing google what python evangelist david mertz says about python warts.

    --
    Some drink at the fountain of knowledge. Others just gargle.
    1. Re:Perl versus Python by badfish99 · · Score: 5, Funny

      As a mathematician, I'm always surprised by people who think that 4 and 4.0 should not be equal.

    2. Re:Perl versus Python by zappepcs · · Score: 5, Funny

      As a mathematician, I'm always surprised by people who think that 4 and 4.0 should not be equal. Well, one is just a number, the other is the SP version identifier that tells you when its safe to upgrade to a new version of windows.
    3. Re:Perl versus Python by rootofevil · · Score: 5, Funny

      As a programmer, I'm always surprised by mathematicians who think that 4 and 4.0 should be equal.

      --
      turn up the jukebox and tell me a lie
    4. Re:Perl versus Python by goombah99 · · Score: 0, Flamebait

      should 4.0+0.0j and 4.0 be equal? Python does not think so. should 4L and 4.0 be equal? python does not always think so

      --
      Some drink at the fountain of knowledge. Others just gargle.
    5. Re:Perl versus Python by IMarvinTPA · · Score: 5, Informative

      As a programmer, I'm amused by both.
      4 and 4.0 are equal by value but not in precision. 4 has one significant digit, while 4.0 has two. This is important because multiplying it by 1200 (which has two significant digits), yields two scientifically different answers. 4*1200 yields 5000 (5 x 10^3) while 4.0*1200 yields 4800 (4.8 x 10^3).

      So, in the end, it depends, just like everything else.

      IMarv

    6. Re:Perl versus Python by blincoln · · Score: 1

      Well, the real question in this case isn't "is 4 equal to 4.0?" it's "is 100 equal to 1000000100000000000000000000000?"* and I think that both programmers and mathematicians can agree on the answer to that.

      * assuming IEEE-754 single-precision.

      --
      "...always new atoms but always doing the same dance, remembering what the dance was yesterday." -Richard Feynman
    7. Re:Perl versus Python by Anonymous Coward · · Score: 1, Informative

      as a non-mathematician, I'm surprised that a mathematician would think that 4 and 4.0 are equal. 4 is a member of the set of integers. 4.0 is a member of the set of real numbers.

    8. Re:Perl versus Python by heretic108 · · Score: 4, Informative

      should 4.0+0.0j and 4.0 be equal? Python does not think so. should 4L and 4.0 be equal? python does not always think so


      WTF?!? Which particular python version are you talking about?
      Python2.4 and later:

      >>> x0 = int(4)
      >>> x1 = long(4)
      >>> x2 = float(4)
      >>> x3 = complex(4, 0)
      >>> x0 == x1 and x0 == x2 and x0 == x3 and x1 == x2 and x1 == x3 and x2 == x3
      True
      >>>

      Or, are you talking about inequalities (<, <=, > >=) which are required for list sorting?
      In this case, it's not a python issue but a mathematical issue. You shouldn't be trying to use inequality operators on complex numers. Inequalities with scalars such as floats, ints, longs etc are a mapping (S1,S2)=>(Bool), where S1 and S2 each can be one of float, long, int, bool, string, but such mapping is not defined if S1 and/or S2 is the field 'complex'.

      Your question is interesting though - a matter of whether a sort of a list of containing complex numbers should work if all the complex numbers have a zero imaginary part. I wouldn't think so. But if you're desperate, you could try something like:

      x0 = int(4)
      x1 = long(4)
      x2 = float(4)
      x3 = complex(4, 0)
      list1 = [x0, x1, x2, x3]
      list2 = [x3, x1, x2, x0]
      def compare(x, y):
                    if isinstance(x, complex) and x.imag == 0:
                            x = x.real
                    if isinstance(y, complex) and y.imag == 0:
                            y = y.real
                    return cmp(x, y)
      list1.sort(compare)
      list2.sort(compare)

      As for the 'problem' of list sort results depending on order of the original list, this only happens where there is computational equality between members of the original list, so what's the problem really?
      --
      -- In the beginning was the WORD, and the WORD was UNSIGNED, and the main(){} was without form and void...
    9. Re:Perl versus Python by zippthorne · · Score: 5, Insightful

      As an engineer, I'm also amused.

      4.0 is definitely a 2 sig dig number, but 4 could be 1 sig dig or it could be "exact." You wouldn't say the 2 in 2*pi*r is only one significant digit, would you? Of course not, it would render any precision in pi or r meaningless.

      Also, 1200 could have 2, 4, or be exact depending on the context. It's best to always use a notation that includes the fraction mark for non-exact quantities.

      --
      Can you be Even More Awesome?!
    10. Re:Perl versus Python by sk8king · · Score: 1

      Are you saying that the set of integers is not a subset of the reals?

    11. Re:Perl versus Python by Anonymous Coward · · Score: 0

      No way. NT 4 SP4 was a horrible, horrible Service Pack. It wasn't until SP6 that I moved off of SP3.

    12. Re:Perl versus Python by Krakhan · · Score: 1

      The integers are a subset of the reals though. Thus 4 is also a real number.

      Mathematically, 4 and 4.0, 3.999... represent the same element of the real numbers. On a computer that only has a finite amount of space to represent the number, those numbers usually turn out not to be the same due to the finite floating point representation. Then there's all these other issues where stuff like addition and multiplication for the real numbers being associative, but not for floating point numbers in general.

      That's where the difference lies, since using finite precision to represent real numbers turns into questions of numerical stability, which is covered in a numerical methods course.

    13. Re:Perl versus Python by Anonymous Coward · · Score: 0

      4*1200 yields 5000

      If that isn't a bug, I don't know what is.

    14. Re:Perl versus Python by Anonymous Coward · · Score: 0, Informative

      Hmm, Java seems to think int(4 * 1200) and double(4.0 * 1200) and double(4 * 1200) are all 4800. Now if you do 4 * 1.2 and round to the nearest integer, then multiply by 10^3, I could see getting 5000, but that is what you wanted, not what the language is forcing on you. Nor does scientific notation force you maintain 1 significant digit.

    15. Re:Perl versus Python by xero314 · · Score: 4, Insightful

      4*1200 yields 5000

      If that isn't a bug, I don't know what is. That is because the IEEE standards for floating point values is the biggest and most prolific bug in software today.
    16. Re:Perl versus Python by glwtta · · Score: 1

      As a Java programmer, I realize that they are sometimes equal. Depends on whether you have a HashMap or a TreeMap, for example.

      --
      sic transit gloria mundi
    17. Re:Perl versus Python by Anonymous Coward · · Score: 0

      They are the same, for large values of 4.

    18. Re:Perl versus Python by Zontar_Thing_From_Ve · · Score: 1, Offtopic

      As a programmer, I'm amused by both.
      4 and 4.0 are equal by value but not in precision. 4 has one significant digit, while 4.0 has two. This is important because multiplying it by 1200 (which has two significant digits), yields two scientifically different answers. 4*1200 yields 5000 (5 x 10^3) while 4.0*1200 yields 4800 (4.8 x 10^3).


      I'm curious as to what broke piece of crap you are using that thinks that 4*1200 is 5000. Dude, that's just wrong and it has nothing to do with precision at all. I guess in your world 2 + 2 does equal 5 for sufficiently large values of 2, as the old joke goes.

    19. Re:Perl versus Python by Intron · · Score: 1

      4 is a number. 4.0 is an approximation which is not guaranteed to be equal to anything. Why would a mathematician expect them to be equal? No engineer does. Lisp has rationals if you want to do exact arithmetic on non-integers. Floating point arithmetic is only exact by accident.

      --
      Intron: the portion of DNA which expresses nothing useful.
    20. Re:Perl versus Python by Anonymous Coward · · Score: 3, Insightful

      I personally choose the symbol 4 to represent the value that is one greater than the value represented by the symbol 6. I further choose composite symbol 4.0 to represent the value that is one greater than the value represented by the symbol 9. I assert that the values represented by symbols 6 and 9 are not equal in their position on a number line.

      Therefore: 4.0 is definitely not equal to 4.

      It's all in the interpretation of the representation.

    21. Re:Perl versus Python by Anonymous Coward · · Score: 1, Insightful

      If you assume 4 is an integer and 4.0 is a real number, then 4 and 4.0 are mathematically equal.

      If you assume 4 is an exact number and 4.0 is an inexact number, then 4 and 4.0 are mathematically inequal.

      The problem has nothing to do with integers and real numbers, or the internal binary representation of integers and floats. The problem is that there is no universally accepted map from the ascii representation "4.0" to an object.

    22. Re:Perl versus Python by Anonymous Coward · · Score: 0

      Come now, "As a mathematician", you should realize the distinction between real numbers and integers, or at least be able to acknowledge that there are occasions where it might matter.

    23. Re:Perl versus Python by cgreuter · · Score: 1

      Actually, it depends on what you mean by "equal".

      If you mean "has the same value" (where "value" may be vague in some contexts), 4 equals 4.0.

      If, on the other hand, you mean "is the same object in memory", then 4 does not equal 4.0.

      As it happens, there are times when you need to know one or the other so most reasonable languages let you do both.

    24. Re:Perl versus Python by Gospodin · · Score: 1

      Mathematically, 4 and 4.0, 3.999... represent the same element of the real numbers.

      Change "element" to "equivalence class" and you're spot on.

      --
      ...following the principles of Heisenburger's Uncertain Cat...
    25. Re:Perl versus Python by Anonymous Coward · · Score: 2, Insightful

      Why would a mathematician expect them to be equal?
      Because real numbers, floating point numbers, inexact numbers, and scientific precision numbers are four different sets. And which set you think "4.0" belongs to depends on whether you're a mathematician, computer scientist, engineer, or physicist.
    26. Re:Perl versus Python by EsbenMoseHansen · · Score: 1

      Are you saying that the set of integers is not a subset of the reals?

      Whether you define them to be or not the integers are homeomorphic to a subset of the reals, which is basically the same thing.

      --
      Religion is regarded by the common people as true, by the wise as false, and by rulers as useful.
    27. Re:Perl versus Python by Anonymous Coward · · Score: 0

      He didn't say 4 and 4.0 aren't equal, he just said that they aren't the same thing.

    28. Re:Perl versus Python by Deadplant · · Score: 0, Redundant

      4*1200 yields 5000 gah?!?? in what brain-dammaged programming environment does that occur?
      my perl and python certainly don't do that.
    29. Re:Perl versus Python by Bjarke+Roune · · Score: 1

      > > Mathematically, 4 and 4.0, 3.999... represent the same element of the real numbers.
      >
      > Change "element" to "equivalence class" and you're spot on.
      >
      It seems to me to me that if you want to define the reals using a sequence of decimal digits, that you should define the real numbers as a set of equivalence classes of such decimal sequences. Certainly most people would not expect the real numbers to contain several non-equal elements that represent the same value. So the original poster was already spot on.

    30. Re:Perl versus Python by Eicosane · · Score: 5, Interesting

      The broke broke piece of crap he is using is found here: http://en.wikipedia.org/wiki/Significant_figures

      The rule in his example is:

      4(1 sig fig) * 1200 (2 sig figs) = 5000 (1 sig fig & rounded up since 4800 is closer to 5000 than 4000)

      4.0(2 sig figs) * 1200 (2 sig figs) = 4800 (2 sig figs)

      As far as software using sig figs, well...if you are using real world measurements, you should be using sig figs. You can not tell from a general ruler if you are at 0.526876". You can tell that you are between 0.5" and 0.6", so you say 0.56" Past two sig figs, you would really be pulling that out of your bum. Therefore in all the calulations that use the 0.56", you can only have a max of two sig figs in the result. Anything more would rely on you knowing up to say 3+ sig figs in all the numbers used to get the result.

      Point: The number of sig figs you have makes a difference in your result. Sig figs are generally used with real world measurement systems. Computer calculations may not fall into this category, but it would depend.

    31. Re:Perl versus Python by BobPaul · · Score: 1

      I always use 4 for exact numbers, and 4. for numbers with only one significant figure.

    32. Re:Perl versus Python by Red+Flayer · · Score: 1

      Which once again brings us back to the fact that 2 + 2 = 5 (for extremely large values of 2).

      Seriously, though, it was never in question that 4 x 1200 != 4.0 x 1200.

      4.0 x 1200 is the GPAs of graduates of certain programs at U-Dub (Univ of Washington), as evidenced by this site.

      4 x 1200 is a relay race.

      --
      "Trolls they were, but filled with the evil will of their master: a fell race..." -- J.R.R. Tolkien on Olog-hai
    33. Re:Perl versus Python by Chirs · · Score: 4, Insightful

      Not in programming, but in engineering.

      Quite often calculations are performed where the various values are known to have a certain amount of uncertainty. If I take a reading of "4", what is really meant is that the value is between 3 and 5. If I specify "4.0", then the value is between 3.9 and 4.1. The amount of precision is given by the number of significant figures. Thus, a value of 4.0000 implies a fairly high degree of certainty.

      Given that "4" has only a single significant figure, multiplying it by an exact 1200 yields 4800. However, if you round that off to a single significant figure, then the result is 5000.

      As has been discussed already, however, the "4" may be exact, in which case you need to know the uncertainty in the "1200" before the uncertainty in the result of the calculation can be determined.

    34. Re:Perl versus Python by twistedsymphony · · Score: 5, Informative

      Heh, thank you. As an engineer I was also going to make this point, I'm glad I'm not the only one who realizes that the number of 0s after a decimal carries with it some hefty implications in the manufacturing and engineering realm. Working for a bearing manufacturer I can tell you that the difference between a part with a diameter of 4.00cm and a part with a diameter of 4.00000cm is a few hundred dollars.

    35. Re:Perl versus Python by mazarin5 · · Score: 1

      Which is precisely why I've learned to write problems like that as
      4.0x10^0 x 1.2x10^3 = 4 x 1.2x10^3 = 4.8x10^3
      whereas 4x10^0 x 1.2x10^3 = 5x10^3

      --
      Fnord.
    36. Re:Perl versus Python by UserGoogol · · Score: 3, Insightful

      Those filthy engineer types think that numbers are merely an approximation of reality, and thus to them precision is relevant. Whereas mathematicians don't give a shit about reality and just want to work with the numbers, and a number describes itself perfectly. And when they're forced to go into the land of finite precision for whatever reason, they generally don't feel compelled to sully their numbers with that junk, so they represent precision in different ways.

      --
      "Never attribute to malice that which can be adequately explained by stupidity." -- Hanlon's Razor
    37. Re:Perl versus Python by goombah99 · · Score: 2

      As for the 'problem' of list sort results depending on order of the original list, this only happens where there is computational equality between members of the original list, so what's the problem really? try sorting:

      u'a', 'b', '\xf0'

      and then the same list in a different order.

      '\xf0', u'a', 'b'
        --> exceptions.UnicodeDecodeError

      Look at the set
      ( 4,4.0, 4.0+0j)
      and the same set in a different order.

      --
      Some drink at the fountain of knowledge. Others just gargle.
    38. Re:Perl versus Python by Red+Flayer · · Score: 4, Informative

      Dude, that's just wrong and it has nothing to do with precision at all.
      No. It's not wrong:
      4 * 1200 = 4800 +/- 600, since 4 could represent 3.500000000000001 or 4.4999999999999.

      For that matter, 1200 could represent 1249.9999 or 1150, so
      4 * 1200 = 4800 +/- 625.

      We just don't know how accurate the initial measurement was, so it is completely inaccurate to say that 4 * 1200 is equal to exactly 4800.
      --
      "Trolls they were, but filled with the evil will of their master: a fell race..." -- J.R.R. Tolkien on Olog-hai
    39. Re:Perl versus Python by porpnorber · · Score: 4, Insightful

      As a mathematician (or at least, an ex-mathematician) I am always amazed by mathematicians who forget that 'equality' between distinct domains is introduced (in standard developments) as a mere abuse of notation. Just because there is a canonical injection of Z into (say) Q does not mean that any element of Z is equal to any element of Q in any normal sense.

      Moreover, since 4.0 is a floating point number, it's not even a very helpful abuse of notation to allow 4 and 4.0 to be 'mathematically' equal, since you can demonstrate that mathematically all floats are equal to each other: there's some nonzero epsilon small enough that epsilon + x is 'equal' to x. It is not helpful to then apply normal mathematical reasoning and conclude that all integers are equal - that is, it's nice to maintain some part of a programming language that is actually consistent, and if we're going to use the symbol '=' for both types, it's helpful at least to maintain that these are distinct overloads!

      Really, any programming language for the mathematically savvy would issue a warning whenever you used a floating point type for anything; floating point support is a somewhat lame compromise for hardware compatibility. If on the other hand we had the habit of using constructive real numbers (which, unlike classical real numbers, are implementable), we would, quite rightly, be forced to reconsider the notion of equality globally.

    40. Re:Perl versus Python by Anonymous Coward · · Score: 0

      Actually you are wrong. In math 4 is an ideal value that has an infinite number of significant figures. 4. only has 1 sig. fig. while 4.0 has 2. So actually 4 is more precise than 4.0 not the other way around.

    41. Re:Perl versus Python by teslatug · · Score: 1

      You should really love this in python: >>> 3+4.755 7.7549999999999999

    42. Re:Perl versus Python by GreyyGuy · · Score: 1

      It has been a while since my math classes, but I believe his point is that, mathematically, a product of two numbers should be expressed to the precision of lower number of significant digits of the values multiplied. 4 has 1 significant digit and 1200 has 2. The right most zeros are not counted. If the number had been expressed as 1200. then it would be 4 significant digits. 4 x 1200 is 4800, but since the product can only have one significant digit, it is rounded to 5000.

      Mathematically, significant digits are really used mainly for scientific and engineering measurement and to make sure that a non-precise number does not introduce problems with very specific numbers.

    43. Re:Perl versus Python by Anonymous Coward · · Score: 0

      Joining in on the fray: significant digits is very much worse than an estimate of mean & standard deviation. Sig digits presume that the instrumentation is precise to at least 1 digit, which is not necessarily the case.

    44. Re:Perl versus Python by Gospodin · · Score: 1

      Philosophical argument, I suppose, but "equality" doesn't mean the same thing as "sameness." For example, in Z_5, 2 and 7 are "equal" (in the same equivalence class), but it would be hard to argue that 2 is the "same" as 7. Similarly, the digit string "3.999999...." and "4.0000000" are clearly not "the same", although they are in the same equivalence class.

      If OP had said "represent equal elements of the real number", he would also have been spot on.

      Sorry, as a mathematician I can't help being pedantic about this sort of thing.

      --
      ...following the principles of Heisenburger's Uncertain Cat...
    45. Re:Perl versus Python by Anonymous Coward · · Score: 0

      significant digits are for people who can't do proper error analysis.

    46. Re:Perl versus Python by um...+Lucas · · Score: 1

      You have to explain this math to me... how did the 4 turn into a 5

    47. Re:Perl versus Python by Dare+nMc · · Score: 1

      Therefore in all the calulations that use the 0.56", you can only have a max of two sig figs in the result.

      s/result/final output.
      if you drop significant digit in everyoutput from subroutines,etc then 4 * 1200 might be 4000 just as easy as 5000, and be wrong BTW.
    48. Re:Perl versus Python by Dare+nMc · · Score: 1

      * unless otherwise noted, all dimensions are +- .01 cm.

    49. Re:Perl versus Python by Anonymous Coward · · Score: 0

      And the best thing is when both the 4.00cm and 4.00000cm parts come from the same production line and the 4.00cm parts are guaranteed not to be 4.00000cm.

    50. Re:Perl versus Python by not-admin · · Score: 1

      Actually, if you're using the "..." to mean repeating, then 3.999... == 4

      Remember this proof from your high school math class?

      x = .999...
      10x = 9.999...
      10x - x = 9.999... - .999...
      9x = 9
      x = 1

      So, using that...
      3 + .999... = 3 + 1 = 4

      Of course, maybe I don't understand the difference between being "the same" and "in an equivalence class".
      In which case, ignore me.

    51. Re:Perl versus Python by Zabu · · Score: 5, Funny

      As a hooker, I can tell you that anything with a diameter of 4.00cm or 4.00000cm is always a few hundred dollars

      --
      It's all good.
    52. Re:Perl versus Python by Talchas · · Score: 1

      In science class with significant figures, 4 may be 1 sig fig and therefore your answer also has to be 1 sig fig.

      --
      As the Americans learned so painfully in Earth's final century,free flow of information is the only safeguard against...
    53. Re:Perl versus Python by Anonymous Coward · · Score: 0

      As a 4.0, I demand to be considered equal to 4.

    54. Re:Perl versus Python by Eicosane · · Score: 1

      If your code correctly follows the rules for using sig figs, you can not get 4000 just as easy as 5000. You would do something like: Determine sig figs: 4 = 1, 1200 = 2 sig figs in result = 1 Multiply '4' and '1200' = 4800 To output the correct sig fig, round so you only have one sig fig If you are stating a series of steps would yield 4000 just as easy as 5000, meaning you are saying something like add a couple & adjust for sig figs then add a couple more & adjust for sig figs & ect. then come to a final answer that could just as easily come to 4K as 5K, well, that wouldn't really be what was stated. What was stated included one step & one sig fig adjustment. Also, depending on if you are following sig fig rules or not, your answer would be right or wrong. Engineering answer: It depends. However in my example, 5000 is the answer. 4000 is not & can not be the answer because 4800 does not round to 4000 UNLESS you use some 'round to the lowest' type function. Which is not standard sig fig procedure.

    55. Re:Perl versus Python by be-fan · · Score: 1

      Since "4.0" in a computer often means something like 3.99999, as computers cannot in general represent real number precisely, they definitely should not be equal.

      --
      A deep unwavering belief is a sure sign you're missing something...
    56. Re:Perl versus Python by jvkjvk · · Score: 1

      Hmm. What kind of mathematician are you? They are certainly Orders different! One is an Integer, the other a Real. How much different (and thus not equivalent) can you get??? :)

    57. Re:Perl versus Python by rlbond86 · · Score: 1

      As others have stated this is rediculous without context. There's no radix point, so one can assume that 4 and 1200 are exact figures rather than measurements. There are no units either, so this supports this further (though they could be ratios).

      Moreover, even if they were measurements, (4 +/- .5) * (1200 +/- 50) = (4800 +/- 632.4555), not your result of (5000 +/- 500). Significant figures have always been stupid compared to propagation of error anyway.

    58. Re:Perl versus Python by Anonymous Coward · · Score: 0

      As a mathematician I cannot believe that you don't understand the concept of precision. 4, 4.0, and 4.0000000 all mean different things.

    59. Re:Perl versus Python by Anonymous Coward · · Score: 0

      Yet you assume that your instrumentation can discriminate between 3.500000000000001 and 3.499999999999999?

    60. Re:Perl versus Python by rlbond86 · · Score: 1

      If you've taken numerical methods, you should know this is a limitation of MARC 32, since floating point numbers are represented by (in single precision), a sign bit, an 8-bit exponent of 2, and a 24-bit mantissa (the first bit of the mantissa is an implied 1, thus only 23 bits of storage are necessary). So the precision of a single-precision number is +/- (2^(24 + exponent)).

    61. Re:Perl versus Python by Eicosane · · Score: 1

      Regardless of your opinion on sig figs, '4' is one sig fig & '1200' is two. Its comparision to propagation of error is an entirely different discussion. It is clear in this discussion the numbers are not exact (infinite sig figs). The reason it is clear the number has one or two sig figs and is not an exact number is it is stated as such. That said, yup. If they were exact (like 2*r*pi), it's a different discussion. Just as this is a derail on the parent discussion.

    62. Re:Perl versus Python by Rob+the+Bold · · Score: 2, Interesting

      That is because the IEEE standards for floating point values is the biggest and most prolific bug in software today.

      Don't like it? The best thing about standards is that there are so many to choose from.

      I've worked at a place where someone way-back-when decided that the widely-used IEEE floating point standards weren't good enough, and rolled his own. Mostly like the usual floating point, but with the number of bits assigned to exponent and mantissa "tweaked" to his liking. Unfortunately, one of the most useful things you can do in an embedded data logger is to share your data with the rest of the world -- requiring a conversion to a more "standard" standard.

      I don't know what your beef with IEEE floating point is, but there's something to say for a standard form of expression. I'm guessing that you would want some info stored regarding the precision and accuracy of the value recorded. That would be nice. It would also be nice if everyone using floating point values understood those concepts in the first place. And if I had a million dollars.

      --
      I am not a crackpot.
    63. Re:Perl versus Python by Anonymous Coward · · Score: 0

      How is it that 4 * 1200 = 5000?

    64. Re:Perl versus Python by VGPowerlord · · Score: 1

      As a programmer, I'm amused by you using floating point to store whole numbers.

      The oddities of floating point math is also why many languages now have a decimal data type or library, emulating decimals using integer math.

      IBM has one for C and C++.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    65. Re:Perl versus Python by jtshaw · · Score: 1

      This is totally incorrect. The IEEE standards are just fine... using them when you shouldn't be is when bugs happen.

    66. Re:Perl versus Python by Anonymous Coward · · Score: 0

      As an analyst, I'm always amused by mathematicians and programmers who think that 4 and 4.0 should be equal. Clearly, there is only a single element in "4" while there are three elements in "4.0" which are "4"; "."; and "0". So, you see, there is a qualitative v. quantitative difference.

    67. Re:Perl versus Python by suggsjc · · Score: 1

      Ok, Mr. smarty pants. But what about this?

      Is 4 = 4.000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000?

      I didn't think so, one has wayyy more numbers, so it can't be equal, not even if they are all zeros. Because zeros don't matter that much by themselves, but if you get a whole pack of them together then they can really do some damage. Don't believe me, just ask Google about Intel

      FTW, I got hit by /.'s "Lameness filter"!!!
      Here is what it told me: "Your comment violated the "postercomment" compression filter. Try less whitespace and/or less repetition. Comment aborted."

      Otherwise there would have been a lot more zeros.

      --
      When I have a kid, I want to put him in one of those strollers for twins and then run around the mall looking frantic.
    68. Re:Perl versus Python by Anonymous Coward · · Score: 0

      When I first read this, I thought you meant "Single Precision" floating point rather than Service Pack. I guess that's what I get for not using Windows regularly.

    69. Re:Perl versus Python by Anonymous Coward · · Score: 0

      Ah, You must use Ruby.

    70. Re:Perl versus Python by PhrackCreak · · Score: 2

      Complex numbers are multidimensional, and multidimensional numbers are sorted by the magnitude.

      eg,

      (4,0),(2,8)(1,0)

      would have magnitudes of:

      (4^2+0^2),(2^2+8^2),(1^2+0^2) = 16,68,1

      and therefore sort (ascending) to:

      1,16,68

      which means our original list sorts to:

      (1,0),(4,0),(2,8)

      --
      - You don't know how to maintain a station wagon either!
    71. Re:Perl versus Python by Coryoth · · Score: 2, Interesting

      As a mathematician, I'm always surprised by people who think that 4 and 4.0 should not be equal. Really? As a mathematician I can see a valid reason to find a difference. It is reasonable to assume that 4 represents the natural number 4, while 4.0 is referring to the real number 4.0000..., which are clearly, mathematically, quite separate objects. Sure, there exists a canonical injection of N into R that allows for identification of the objects in question if you choose to apply it, but strictly R and N are quite distinct: for instance there exists a complete and consistent axiomitization of R, while Goedel demonstrated that no such axiomitization of N exists. There is, actually, a natural quality to type theory in mathematics, particularly when working in terms of Category (and specifically Topos) theory. While type theory might have been something Russell was initially forced into to escape paradoxes when writing Principia Mathematica (that's right, type theory was originally developed for mathematics, and had nothing to do with programming), mathematicians have increasingly come to view it as a natural approach that allows one to tease apart the more subtle philosphical quandries at the heart of mathematics.
    72. Re:Perl versus Python by ncohafmuta · · Score: 2, Funny

      You're all mad.

      4*1200 = 42 2+2 = 42

      anything +-/* anything = 42

      the answer is always 42 (*)

      (*) to 2 sig. digits

      -Tony

    73. Re:Perl versus Python by zippthorne · · Score: 3, Interesting

      Um.. yeah. of course that's how it is. Measurement is always more precise and less costly than machining. If you've got a process that produces 4.00 cm parts, and you put more effort into measuring, you might be able to sift some 4.00000 parts from the mix. But those parts are much rarer than the 4.00s, and so command better pricing. (it also means that the remaining parts are definitely not 4.00000)

      If you need more 4.00000 parts, you could use tighter machining tolerances, but each part will be much more expensive. The choice of which method depends on a variety of factors, not the least of which is whether you can use the "rejects" as "low quality parts" or "scrap."

      --
      Can you be Even More Awesome?!
    74. Re:Perl versus Python by droopycom · · Score: 1

      I call BS:

      If the reading "4" means a value between 3 and 5, then what does the reading (or writing) "5000" means ?
      Some could argue it means a value between 4000 and 6000. But I would argue it means a value between 4999 and 5001.
      A value between 4000 and 6000 should be noted "5K" or "5*10^3", or even to be more correct "0.5*10^4"

      Lets go further: "4"*1200 (exact 1200) is a value between "3"*1200 and "5"*1200, that is between 3600 and 6000.

      This is neither "5000" or "5K".

      If you read or write 4, or 4.0 or 4.00000 this doesnt say anything about precision, unless you already have described your notations, or referenced a spec that does.

    75. Re:Perl versus Python by hurfy · · Score: 1

      Now, if only one of you hadn't programmed half of our accounting system while the other one did the other half........

    76. Re:Perl versus Python by Anonymous Coward · · Score: 0

      As a physicist, I'm just going to say that they are both on the order of unity and be done with it.

    77. Re:Perl versus Python by jazir1979 · · Score: 1

      However if you use the BigDecimal class, scale and precision are very important and do determine equality (unless you use the compareTo()) method.

      --
      What's your GCNSEQNO?
    78. Re:Perl versus Python by incripshin · · Score: 1

      Sorted lists should depend on their original ordering in order to be stable. So a stable sort on this data according to the first column: [[3, 5], [1, 2], [3, 1]] should produce [[1, 2], [3, 5], [3, 1]] and not [[1, 2], [3, 1], [3, 5]] The quicksort isn't stable, but most others are.

    79. Re:Perl versus Python by cgibbard · · Score: 2, Interesting

      Indeed, as a mathematician, I would never write 0.5 when I meant 1/2. While they're the same number, the former hints at an approximation, while the latter is certainly exact. I tend to use the convention that finite decimal expansions are treated as approximations unless otherwise noted. Of course, they almost never come up anyway, so it's a bit of a moot point. If I really wanted to write down 1/2 as an exact decimal expansion for some reason, I'd write either 0.5000... or 0.4999...

    80. Re:Perl versus Python by dascandy · · Score: 1

      I'm even surprised when people assume that 4.0, 4 and 4.0f are equal. Not to mention long doubles.

    81. Re:Perl versus Python by DarkManaX · · Score: 4, Funny

      As a graphic designer and long-time computer hobbyist, I find it to be simultaneously amusing and ridiculous. Time to go draw cats having sex.

    82. Re:Perl versus Python by Coryoth · · Score: 2, Insightful

      As a mathematician (or at least, an ex-mathematician) I am always amazed by mathematicians who forget that 'equality' between distinct domains is introduced (in standard developments) as a mere abuse of notation. Just because there is a canonical injection of Z into (say) Q does not mean that any element of Z is equal to any element of Q in any normal sense. Kudos! Someone who actually understands mathematics. There exists natural injective maps from N -> Z -> Q-> R -> C, but they are actually different domains, and not strictly, subsets (as people like to presume for convenience). To see this clearly (and simply), consider the formal defintions for a natural number 4, and the rational number 4, in set theoretic foundations: the first is finite set, the second is an infinite equivalence class. Clearly they are different objects.
    83. Re:Perl versus Python by zsau · · Score: 2, Insightful

      Funny. Back in the day,[*] the story was version 4.0 of a Microsoft product was to be avoided. Think, in particular, MS-DOS.

      [*]: I was too young back in the day to know this first hand.

      --
      Look out!
    84. Re:Perl versus Python by Adambomb · · Score: 2, Funny

      tolerance versus significance versus discretion in a no holds bar battle royale, SUNDAY SUNDAY SUNDAY!

      --
      Ice Cream has no bones.
    85. Re:Perl versus Python by cheesee · · Score: 1

      Decimals? In MY imperial measurements?

      --
      Got Shadowrun? Awakened Worlds
    86. Re:Perl versus Python by 75th+Trombone · · Score: 2, Funny

      Oh, you would not write "4.999...", you only put that there to trick some poor Slashdot bystander who doesn't know any better into arguing with you. Tsk tsk.

      --
      The United States of America: We do what we must because we can.
    87. Re:Perl versus Python by Saint+Stephen · · Score: 1

      This makes no sense to me and even though you're using the same syntax as mathematics, you've got some different assumptions. This is a different algebra. Statements in different algebras aren't comprable.

    88. Re:Perl versus Python by Tablizer · · Score: 2, Funny

      As a hooker, I can tell you that anything with a diameter of 4.00cm or 4.00000cm is always a few hundred dollars

      Damn, this is one time I'll get a big discount without being proud of it.

    89. Re:Perl versus Python by adrianmonk · · Score: 1

      As a Perl programmer, I'm always surprised by programmers and mathematicians who think 4 and 4.0 are numbers. Clearly, they are strings.

      Unless you try to use them as a number, of course, in which case this conversation didn't happen and they've always been numbers, as far as you can tell.

    90. Re:Perl versus Python by Seraphim_72 · · Score: 1
      4.00 to 4.00000 cm is a few Hundred? Wow ... I got to move to where you are at.

      Sera

      --
      Slashdot, where armchair scientists get shouted down and armchair theologians get modded up.
    91. Re:Perl versus Python by slawekk · · Score: 2, Insightful

      As a former mathematician I am always surprised by mathematicians who think that the natural number 4 (that is the set {0,{0},{0,{0}},{0,{0},{0,{0}}}} ) should be equal to any real number (which are usually some sets of Cauchy sequences or Dedekind sections of rational numbers).

    92. Re:Perl versus Python by Verte · · Score: 0

      IAAM, IAAE, IAAP:

      arguments concerning specific digits are irrelevant. Once you've decided what floating-point precision to use, the precision is fixed. weather 4 is equal to 4. or not depends on the rounding scheme. And honestly, I think Python gets it right. If the numbers are the same to the 53rd binary place, which they are certain to be in Python, they may as well be treated as the same number. If you've got to carry around accuracy values, they need to be in metadata anyway, because they [errors] combine differently under different operations.

      Also, who was talking about comparing complex with float? Much as I hate saying this, TMTOWTDI. In Python and on paper. If you need to compare floats and complex numbers, use .abs(), .re() or .im().

      --
      We at slashdot are scientists, specialists and kernel hackers. Your FUD will be found out.
    93. Re:Perl versus Python by kelnos · · Score: 1

      Says who? The OP never specified what the 4 and 1200 referred to. He could have been counting columns and rows of some object. Saying I have 1200 rows with 4 foobars each is 5000 foobars because of significant figures is retarded. Context! It matters!

      --
      Xfce: Lighter than some, heavier than others. Just right.
    94. Re:Perl versus Python by Anonymous Coward · · Score: 0

      I call BS Because 6 had broken encryption and would have hosed up the password file. Try 6a.

    95. Re:Perl versus Python by Gooba42 · · Score: 2, Insightful

      Ugh, precision vs. accuracy again...

      I had a geometry teacher in high school who asked for the most precise possible answer...

      When I gave her 3*pi, she told me that was wrong, I should have given her 9.42 and my arguments that 3*pi was precise to infinite digits while 9.42 was only an approximation fell on deaf ears.

      Just another instance where the correct answer and the right answer are different.

      --
      I just found out there's no such thing as the real world. It's just a lie you've got to rise above. - John Mayer
    96. Re:Perl versus Python by Anonymous Coward · · Score: 0

      If your instrument is not accurate to 1 digit, it really doesn't qualify to be called an instrument.

    97. Re:Perl versus Python by swilly · · Score: 1

      He is explicitly indicating the number of significant digits. 4.0x10^0 has two significant digits, but 4x10^0 has only one. Writing 4 would mean that the value was precise, and is useful for constants or values that are by nature integers instead of real numbers. The number is significant digits in a result is the lowest number of significant digits of any of the values used in the calculation. This is quite common in Engineering where you need to know how accurate a value really is. There are actually better ways to deal with the problem, but this is the easiest.

    98. Re:Perl versus Python by MrNaz · · Score: 1

      FWIW, in PostgreSQL database return, returning any data set without explicitly stating return order will yield an unstable result. This is not a bad thing IMHO, any request for data where the order was not stated should return the data in the quickest way possible, not the most stable. If the user didn't specify order, chances are they aren't interested in it, and just want the data ASAP. Implying sort orders means there is no way for the user to say "I don't need the data ordered, I just need to make this operation as quick as possible". As a long time PG user, I have gotten used to using unspecified order to mean "as fast as possible". Any time order matters, I tell it what the order should be. Relying on implied ordering rules in your programming language, database or other data source is just *asking* for bugs.

      --
      I hate printers.
    99. Re:Perl versus Python by Saint+Stephen · · Score: 1

      Bah! What's the point of carrying around all that imprecision with you?

      Just do it perfectly, and round off at the end, dumb-ass.

    100. Re:Perl versus Python by mgiuca · · Score: 1

      There are lots and lots of people leaving serious/joke/semi-joke responses to this from the perspective of various disciplines.

      All the jokes aside, can I just say that as a programmer (in particular, someone who uses strongly-typed languages), 4 is an int and 4.0 is a float. Programmers know that these are two entirely different beasts - 4 means 4, the number 4. 4.0 could mean "the literal float 4.0", "the integer 4, having been coerced to a float", "4.000683731 displayed to one decimal place", "4.000000000000000000000000000000058 rounded to 32 bits", or any combination of factors.

      Therefore, saying that 4.0 equals 4 is entirely folly. In fact, saying 4.0 equals 4.0 is folly as well - in general it isn't really safe to do equality comparisons on floats - only greater or less than comparisons.

    101. Re:Perl versus Python by Tony-A · · Score: 1

      Sorry, I've seen that once too often.

      The amount of precision is given by the number of significant figures

      and always comes in nice increments like
      +- .1
      +- .01
      +- .001

      and never comes in nasty increments like
      +- .2
      +- .035
      +- .075

      Actually, to avoid compounding errors, with conversion factors and such, numbers should be stated so that the last stated digit is in error.

      Take two sets of measurements, one set in inches and another in centimeters.
      Add the raw numbers and compare the results (one conversion)
      Convert each set to the opposite units, add 'em and compare the results.

    102. Re:Perl versus Python by Anonymous Coward · · Score: 0

      As a mathematician, wouldn't you appreciate that 4.0 defines standard units? And is therefore a more precise version of 4? As in, accurate to one decimal place?

    103. Re:Perl versus Python by Hennell · · Score: 1

      but.... 4.999... isn't 5. there's always a 0.0000...001 difference...

      (someone had to ask)

    104. Re:Perl versus Python by JonathanR · · Score: 1

      As an engineer, I"m surprised you'd be selling any items measured in centimetres. Real engineers use millimetres or metres.

    105. Re:Perl versus Python by martinussen · · Score: 1

      Actually, 4.999... == 5. It's easier to explain with 0.999 = 1, though, so that's what I'll do.
      1 = 1/3.
      1/3 = 0.333...
      0.333... * 3 = 0.999...
      1/3 * 3 = 3/3 = 1

    106. Re:Perl versus Python by Anonymous Coward · · Score: 0

      In python you can't and even when you can the answer is not stable. The order of a sorted list can depend on it's orginal ordering!


      Uh, isn't Python's way the very definition of stable sorting? If the order of a sorted list *didn't* depend on its original order, any computer scientist (who passed CS 101) would call that an "unstable sort".

      In the end perl does what you really meant, and python does what you told it.


      I've heard "X does what you really meant, Y does only what you told it" about many (X,Y) tuples where X was the author's favorite language and Y was the language he was being asked to use. There is never any actual justification: every (deterministic) language does exactly what you told it, and whether this is what you meant or not is simply a question of whether you know the language or not.
    107. Re:Perl versus Python by Anonymous Coward · · Score: 0

      As an auto enthusiast, I contend a supercharged 3.1 equals a 4.0...

    108. Re:Perl versus Python by Marlow+the+Irelander · · Score: 1

      1 = 1/3.

      I think you'll find 1 = 3/3.
    109. Re:Perl versus Python by martinussen · · Score: 1

      Yes, that sounds quite likely. Please disregard the first line in my former post.

    110. Re:Perl versus Python by runexe · · Score: 1

      Or you could take some of the 4.00cm parts and run them through a finishing pass (or grind/polish/etc.) to get the 4.00000 cm part. The additional operation obviously makes it a little more expensive to make, but sales tells me I can pass that additional expense along to the customer at a premium and make up for the captial investment in the higher precision grinder pretty quick.

    111. Re:Perl versus Python by zippthorne · · Score: 1

      True, though you can't polish a microprocessor. You have to evaluate the demand for the higher precision vs. the cost of implementing it. Sometimes, you can have a very precise process that happens to not be particularly accurate.

      Resistors for instance are done in batches that are extremely consistent, but not necessarily exactly on the desired resistance. And they're sold by how well they are expected to match. Quite a few applications are order-of-magnitude, so a 10% accurate resistor isn't that bad: it's less than about half a dB of change. If all you need is a current-limiting or pull-up resistor, you don't even need to be within 50% of the value, as long as it's above the threshold.

      If you're already producing enough parts of the higher quality parts to satisfy the demand, why would you add a polishing step or improved machining process?

      --
      Can you be Even More Awesome?!
    112. Re:Perl versus Python by zippthorne · · Score: 1

      I can't think of any reason why 9.42 would be considered more precise than 3*pi, since you could always write it as 9.425, or 9.4248, or etc. Perhaps there was some aspect to the problem that limited it to those significant digits that you failed to consider?

      If not, your geometry teacher was astoundingly bad.

      --
      Can you be Even More Awesome?!
    113. Re:Perl versus Python by gfreeman · · Score: 1

      About those $6 I loaned you last week. Can I have $4 of them back today please, and I'll get the rest tomorrow?

      --
      Ceci n'est pas un sig.
    114. Re:Perl versus Python by Red+Flayer · · Score: 1

      No. But if my instrument reads 3.5, I know it *could* be either of those values.

      --
      "Trolls they were, but filled with the evil will of their master: a fell race..." -- J.R.R. Tolkien on Olog-hai
    115. Re:Perl versus Python by Coryoth · · Score: 1

      Congratulations on being (only) the third person in this thread to actually provide mathematically correct response. The number of people (including the OP) who began their comments with "as a mathematician" and then proceeded to spout pure garbage almost made me despair. Thanks for helping to prove that there are still people on Slashdot who know what they are talking about.

    116. Re:Perl versus Python by Anonymous Coward · · Score: 0

      Please note this as the moment of creation of the newest meme, with pattern:

      As a {tech-related-career}, I always find it amusing that {smart-ass-criticism-of-previous-poster's-intellig ence}.

    117. Re:Perl versus Python by dreadclown · · Score: 1

      Significant figures have always been stupid compared to propagation of error anyway.
      Hear! Hear! However...
      (4 - .5) * (1200 - 50) = 4025
      (4 + .5) * (1200 + 50) = 5625

      so the range of error is potentially somewhat greater.
      Technically you should determine probability distributions for your error terms, and derive confidence intervals with 90%, 95%, 99% etc probability as required.
      btw as others have noted, 1200 implies 1200 +- 0.5; 1200 +- 50 should be written as 1.2*10^3

    118. Re:Perl versus Python by Gooba42 · · Score: 1

      The parameters were as I stated them, the most precise answer possible.

      Since the pi symbol represents pi perfectly, to infinite digits, it didn't seem that there could *be* any more precise representation.

      --
      I just found out there's no such thing as the real world. It's just a lie you've got to rise above. - John Mayer
    119. Re:Perl versus Python by xero314 · · Score: 1

      The IEEE standards are just fine... using them when you shouldn't be is when bugs happen. When exactly should 190000.37 = 190000.38 != 190000.39?
    120. Re:Perl versus Python by xero314 · · Score: 1

      I'm guessing that you would want some info stored regarding the precision and accuracy of the value recorded. The only thing I want is that the value I set be the value returned if no operations happen on that value(190000.37f). And I expect that if any mathematical operation is performed on that value and then the exact opposite operation is performed I get back the original value (i.e multiply/divide). If the storage unit can only handle X significant digits accurately then it should only hold X significant digits regardless, not X accurately and >X with predictable, but hardly justifiable, accuracy.

      Luckily I have never worked on a project where accuracy didn't matter.
    121. Re:Perl versus Python by jrumney · · Score: 1

      As a programmer, I'm always surprised that the compiler can't cast 4.0 to 4.0f by itself, yet it has no problem casting 4 to either of the above.

    122. Re:Perl versus Python by jrumney · · Score: 1

      What's an engineer working for a bearing manufacturer doing using a dressmaker's units of measurement? Real engineers measure items of that magnitude in mm.

    123. Re:Perl versus Python by freedomlinux · · Score: 1

      If I may attempt the equation.... c = 0.999... (to infinite precision) 10c = 9.999... Subtract 1c 9c = 9.000 c = 1.000 Not sure if it proves that 4.999 = 5, but a better representation of the first equation.

    124. Re:Perl versus Python by 644bd346996 · · Score: 1

      I can think of situations where one would want to sort vectors by magnitude, direction, or component-wise. No one of those should be set as a hard-to-override, somewhat ambiguous default comparison operation. The set of complex numbers is not, and cannot be expressed as an ordered field. That means that there is no consistent way of ordering arbitrary complex numbers. Any boolean comparisons between complex numbers should be done with dedicated operators or functions, not with the standard greater-than and less-than symbols.

    125. Re:Perl versus Python by ioshhdflwuegfh · · Score: 1

      As a mathematician (or at least, an ex-mathematician) I am always amazed by mathematicians who forget that 'equality' between distinct domains is introduced (in standard developments) as a mere abuse of notation. Just because there is a canonical injection of Z into (say) Q does not mean that any element of Z is equal to any element of Q in any normal sense. Here is one normal sense: take the union of Z and all integers in Q, and, bang!, you can introduce =, >, *, + and = naturally.

      Moreover, since 4.0 is a floating point number, it's not even a very helpful abuse of notation to allow 4 and 4.0 to be 'mathematically' equal, since you can demonstrate that mathematically all floats are equal to each other: there's some nonzero epsilon small enough that epsilon + x is 'equal' to x. It is not helpful to then apply normal mathematical reasoning and conclude that all integers are equal - that is, it's nice to maintain some part of a programming language that is actually consistent,[...] Well, not quite. Here is the counter-example to your claim that all floats are equal to each other based on the fact that there is eps, such that 1.0+eps=1.0

      1.0+eps=1.0, (1.0+eps)+eps=1.0; (1.+eps)+eps)+eps=1.0, ...
      but
      1.0+(eps+eps)=1.0+2*eps; 1.0+(eps+(eps+eps))=1.0+3*eps;

      where n*eps, n is integer, is defined as eps+eps+...+eps (n times)

      Now, we can prove that 1.0 is not equal 2.0 using eps:
      2.0=1.0+(eps+(eps+(eps+...))), with eps repeating 1/eps times. Since the r.h.s. is different from 1.0, so is the l.h.s., i.e 2.0 is not equal to 1.0

      Of course, this only shows that associativity is not working, so the care is needed to get results right, and mathematician surely has the right to be appalled by this (there are of course also overflows and underflows, etc).

      Really, any programming language for the mathematically savvy would issue a warning whenever you used a floating point type for anything; floating point support is a somewhat lame compromise for hardware compatibility. Not really. They are used because they can be efficiently implemented to imitate reals. It is then up to programmer to be a bit careful in order to maintain the accuracy when imitating the "true" reals, be they constructively defined or not.
    126. Re:Perl versus Python by ioshhdflwuegfh · · Score: 1

      As a mathematician (or at least, an ex-mathematician) I am always amazed by mathematicians who forget that 'equality' between distinct domains is introduced (in standard developments) as a mere abuse of notation. Just because there is a canonical injection of Z into (say) Q does not mean that any element of Z is equal to any element of Q in any normal sense.

      There exists natural injective maps from N -> Z -> Q-> R -> C, but they are actually different domains, and not strictly, subsets (as people like to presume for convenience). To see this clearly (and simply), consider the formal defintions for a natural number 4, and the rational number 4, in set theoretic foundations: the first is finite set, the second is an infinite equivalence class. Clearly they are different objects. No, the rational number 4 and the integer number 4 can be considered to be "the same object" by noticing that the infinite equivalence class representing 4/1 is equivalent to the integer 4. I won't bother you with mathematics, just give you an example from programming language LISP: $ clisp -q
      [1]> (eql 4 4.0)
      NIL
      [2]> (eql 4 4/1)
      T
      [3]> (eql 4 8/2)
      T
      [4]> (equalp(type-of 4)(type-of 8/2))
      T
      [5]> (equalp(type-of 4/3)(type-of 8/2))
      NIL
      [6]>
    127. Re:Perl versus Python by ioshhdflwuegfh · · Score: 1

      In fact, saying 4.0 equals 4.0 is folly as well - in general it isn't really safe to do equality comparisons on floats - only greater or less than comparisons. How about defining x == y of two floating-point numbers x and y as (x >= y)&&!(x >= y)?
    128. Re:Perl versus Python by ioshhdflwuegfh · · Score: 1

      You're welcome!

    129. Re:Perl versus Python by mgiuca · · Score: 1

      Hmm... I don't quite follow what that would prove. Conventional logic says that that is just "False". I'm not sure if you're therefore supporting me or refuting me. But anyway, here's how I see it.

      Firstly, I know that it *is* possible to do == on floats. I just don't think it's "safe" in the sense that, just because two numbers are equal doesn't mean they're actually supposed to represent the same number (since they could just be rounded to the same number). Therefore == is semantically meaningless.

      Having made this assumption, I can then go on to assume that >= and > are equivalent (since there is no "equals" case, "greater than or equal to" is just the same as saying "greater than"). And by the same logic, <= and < are equivalent.

      Your expression:
      (x >= y) && !(x >= y)
      By demorgans:
      = (x >= y) && (x < y)
      By my above assumed equivalences:
      ~= (x > y) && (x < y)
        = False

      In other words, where I define x == y to be perpetually false, I would also define (x >= y) && !(x >= y) to be false.

      I'm not sure what the point of all of this is though. From a practical viewpoint, I just never do == on floats, because it's meaningless.

      Actually, I challenge people to come up with a practical and valid use for == on floats.

    130. Re:Perl versus Python by porpnorber · · Score: 1

      I think perhaps you have missed my point. The elements of Q are, by one usual construction, equivalence classes over pairs of integers. The 'integers' in Q, while isomorphic to the integers in Z, are quite different objects (they are those equivalence classes happening to contain a member whose denominator is the integer 1). Your union of Z and the integers of Q is a heterogeneous set containing two distinct objects for each conceptual number: ones like 7 [whatever its internal structure may be] and ones like {...<21,3>,<14,2>,<7,1>,<-7,-1>,<-14,-2>,<-21,-3>. ..}.

      As to your counter-example of my claim that all floats are (in the usual mathematical sense) equal, it is not what you think. Yes, you have demonstrated that many floats are unequal, but you have not thereby disproved that they are equal. In fact, most floats are both equal and unequal. This is a contradiction, and proves that the system is inconsistent—which was rather my point. Certainly one can push back against this difficulty, as you have done, by saying, well, let's abandon associativity, and yes, this is indeed what is done in standard computational arithmetic, but in the original context of determining what notation makes the most mathematical sense, it remains more than a trifle radical. Some of the core structure of the numbers has been abandoned in order to maintain a notation.

      A completely different way of looking at the whole discussion is of course to assert that all of mathematics is only really ever done up to isomorphism, in which case Z might really be said to be embedded in Q; but in that case the floats, lacking, as you say, associativity, aren't isomorphic to anything useful or interesting at all. Either way, 4 isn't, mathematically speaking, at all like 4.0.

    131. Re:Perl versus Python by ioshhdflwuegfh · · Score: 1

      Hmm... I don't quite follow what that would prove. Conventional logic says that that is just "False". Yes, you're right. It was my mistake: I wanted to define x==y as x>=y & x<=y, but wrote instead what you show to be false.

      I'm not sure if you're therefore supporting me or refuting me. I'm just wondering how far one can get without == for floats.

      From a practical viewpoint, I just never do == on floats, because it's meaningless. Actually, I challenge people to come up with a practical and valid use for == on floats. I also can't remember using == on floats, but, ok, since you've posed the chalange, two examples that come to mind would be: using x==x+y as a check for underflows or end of iteration; also expression x=y/(b-a+epsilon) used for avoiding overflows or divisions by zero could be in some cases semantically viewed as x=y/epsilon when b==a, or x=y/(b-a) otherwise. Of course, one can use in both cases <= just as well.
    132. Re:Perl versus Python by mgiuca · · Score: 1

      Yes, you're right. It was my mistake: I wanted to define x==y as x>=y & x<=y, but wrote instead what you show to be false.
      OK I see. Using the same explanation as above, (x>=y && x<=y) would equate to (x>y && x<y), since there's "no such thing as equality". Which is therefore exclusive.

      It doesn't help much though, since basically all this has proven is that "if == is always false, then an expression equivalent to == is also always false".

      I'm just wondering how far one can get without == for floats. ...
      I also can't remember using == on floats
      So either you haven't done much programming, or "quite far". ;)

      using x==x+y as a check for underflows or end of iteration;
      Hm.. underflows, meaning "y is too small to make any change to the value"? Aha... good point. That's quite cool actually. Because I'm saying mathematically it makes no sense to do so, due to the problems of FP representation. And you've said, OK but what if your algorithm is directly dealing with FP representation - then you need to use it. OK, I accept this!

      also expression x=y/(b-a+epsilon) used for avoiding overflows or divisions by zero
      Not quite sure what this is about (but I'm very tired!) It may be an instance of the above (or something similar).

      If it's trying to see if two floats are "close enough to be equivalent", those sorts of calculations should be done with an epsilon, but you should be computing it using > and < within a given range. This is why I started thinking about this in the first place - because any real "equality comparison" needs to actually be an "is-it-close-enough" comparison.

      Side note: Wow, having conversations on slashdot with excessive use of the "&lt;" sign is hard work ;)
    133. Re:Perl versus Python by Bjarke+Roune · · Score: 1

      But the OP did not write that "3.999..." and "4" were the same, he wrote that 3.999... and 4 were the same, and for the purposes of that claim, he was talking about what those strings mean rather than the strings themselves. In the same way it is not hard to argue that 2 and 7 are the same, if by 2 and 7 you mean elements of Z_5. It IS of course hard to argue that the strings "2" and "7" are the same.

      As a math PhD-student, I too care about this sort of thing ;)

    134. Re:Perl versus Python by cgibbard · · Score: 1

      Sometimes it's actually a useful convention to choose. For instance, if you're talking about the interval [0,1], it's sometimes nice to put everything in the form 0.d_1 d_2 d_3 ..., in order to avoid talking about the integer part.

    135. Re:Perl versus Python by cgibbard · · Score: 1

      At which place does that 1 occur? Remember that every digit occurs at some finite integer position, determining its place value.

    136. Re:Perl versus Python by sisinka · · Score: 1

      I never excelled at math.. but if I get this correct, then 4 * 1200 = 4825 (+/-800).

      Consider this:
      4,5*1250 = 5625
      3,5*1150 = 4025

      Or maybe it's just I've used that Windows calculator...

      --
      My parser is a grammar nazi.
    137. Re:Perl versus Python by sisinka · · Score: 1

      Or what about 1 * 1?
      0,8125 (+/-0,75)?
      Wow.

      --
      My parser is a grammar nazi.
    138. Re:Perl versus Python by ioshhdflwuegfh · · Score: 1

      Philosophical argument, I suppose, but "equality" doesn't mean the same thing as "sameness." For example, in Z_5, 2 and 7 are "equal" (in the same equivalence class), but it would be hard to argue that 2 is the "same" as 7. Similarly, the digit string "3.999999...." and "4.0000000" are clearly not "the same", although they are in the same equivalence class. There is a similar but different thing in LISP: one can check both for a certain kind of "sameness" as well as "equality". For example, (eq 4.0 4.0) is False, but (= 4.0 4.0) is True. Of course, (= 4.0 3.99999999999999999999999999999999999999) is True, and so is (= 4 4.0).
  28. Nameless Firefox Bookmarks by Headcase88 · · Score: 5, Interesting

    This barely qualifies as bug, more on an inconsistency, but...

    In Firefox, when you make a new bookmark, you need to give it a name. FF grays-out the OK button until you do. This implies that bookmarks weren't meant to be nameless. Here's the "bug": if you go to rename the bookmark, you can make it blank and the OK button remains active.

    So what good is a nameless bookmark? I place all of my frequently-visited bookmarks on the menu bar, to the right of the menus (it's normally wasted space). I have over 25 bookmarks marks there, and if they had names (even one-letter names), they wouldn't fit by a long-shot. The favicons are all I need, so this ability is pretty helpful, and isn't likely to be fixed.

    --
    "When the atomic bomb goes off there's devastation...but when the atomic bong goes off there's celebraaaaation!"
    1. Re:Nameless Firefox Bookmarks by Archangel+Michael · · Score: 1

      Sweet!

      Thank YOU!

      --
      Agent K: A *person* is smart. People are dumb, stupid, panicky animals, and you know it.
    2. Re:Nameless Firefox Bookmarks by networkBoy · · Score: 1

      So....
      how do you get the icons to fit in the menu bar?
      I'm feeling stupid today.
      -nB

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    3. Re:Nameless Firefox Bookmarks by SupplyMission · · Score: 1

      Thanks for pointing out this "feature". I just condensed my bookmark toolbar to less than half its normal width. Awesome!

    4. Re:Nameless Firefox Bookmarks by dkc · · Score: 1

      "Best, bug, ever"

      Thanks!

    5. Re:Nameless Firefox Bookmarks by winnabago · · Score: 1

      I'm just now realizing that many of my favorite sites haven't discovered favicon.gif.

      Oh well.

      --
      Dammit Otto, you have lupus.
    6. Re:Nameless Firefox Bookmarks by casualsax3 · · Score: 5, Informative
      Combine this with Favicon Picker 2 - a plugin that lets you set your own favicons for the bookmarks and you can have a pretty toolbar:

      https://addons.mozilla.org/en-US/firefox/addon/3 176

    7. Re:Nameless Firefox Bookmarks by unchiujar · · Score: 1

      Just got to the bookmark properties and move the name to the description. Leave the name blank. :D

      --
      Shakespeare poems - infinite monkeys with infinite time.Computer tech support - a few trained ones working from 9 to 5.
    8. Re:Nameless Firefox Bookmarks by brunascle · · Score: 1

      well, what do you mean fit?

      annoyingly, the favicon wont show up in the menubar until after you click the bookmark and the browser downloads the favicon.

      i do the same thing. it annoys me when a site i frequent doesnt have a favicon. i have to memorize its location in the menubar.

    9. Re:Nameless Firefox Bookmarks by Anonymous Coward · · Score: 0

      Make sure the bookmarks toolbar is checked under View->Toolbars. See where it says "Getting Started" and "Latest Headlines"? Delete those.

      Whenever you are at a site you want to bookmark, simply drag it to that menu bar. Then right-click, properties, and delete the name. The site icon may not immediately show up, but after navigating away from the page, then USING the icon on the menu toolbar, it usually appears.

    10. Re:Nameless Firefox Bookmarks by lnx_daemon · · Score: 0

      I vote for that counting as a bug. However, now that I know about it I hope it is never fixed as a bug. Thanks for the tip.

    11. Re:Nameless Firefox Bookmarks by Anonymous Coward · · Score: 2, Informative

      Try the smart bookmarks bar. Does it without the renaming

    12. Re:Nameless Firefox Bookmarks by Anonymous Coward · · Score: 2, Funny

      Thanks for finding this one! I just submitted a patch and it should be fixed in the next build.

    13. Re:Nameless Firefox Bookmarks by Anonymous Coward · · Score: 0

      Can be done via the Smart Bookmarks Bar extension.

    14. Re:Nameless Firefox Bookmarks by fimbulvetr · · Score: 1

      I've been doing this for some time and thought it was typical. Based on your responses you've become these guys' hero. I must say I am of the same opinion as you. Currently I have a couple dozen bookmarks up there. It really sucks when you get a site that doesn't use a favico, though.

      For those who can't get the favico to come up, go to the page, bookmark it and click the bookmark you just made. The icon should now appear.

    15. Re:Nameless Firefox Bookmarks by networkBoy · · Score: 1

      Right, so all that is simple.
      Are you meaning that the bookmark is in the bookmark toolbar, or is it in the menu bar?
      I was under the impression that the icons are in the menu bar (you know file, edit history blah blah blah ... bookmark icon, bookmark icon, etc).
      -nB

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    16. Re:Nameless Firefox Bookmarks by brunascle · · Score: 1

      oh, i'm talking about the bookmark toolbar, the horizontal thing, not the menubar.

    17. Re:Nameless Firefox Bookmarks by Anonymous Coward · · Score: 0

      Excellent bug/feature!
      Thanks!

    18. Re:Nameless Firefox Bookmarks by Petrushka · · Score: 1

      Very nice, thank you. My menu bar is now much more concise.

    19. Re:Nameless Firefox Bookmarks by biglig2 · · Score: 1

      Oh, I've been doing that for ages, thought it was by design... I hope they don't fix that bug, or I'll be stuck.

      In addition to the favicon trick I put folders on the toolbar, renaming them to single characters. So for example, the folder of sites I check 5-6 times a day go in a folder named with the letter delta (becuase they change) and my non-work bookmarks go into a folder named with the smiley character.

      My main problem is that I have three sites with no favicon... I'm forced to find single characters to represent them. Not always easy.

      We should put that in as a feature request, the possibility to attach your own favicon to a bookmark!

      --
      ~~~~~ BigLig2? You mean there's another one of me?
    20. Re:Nameless Firefox Bookmarks by SharpFang · · Score: 1

      Right-click the blank space of the menu bar, pick Customize.
      Ignore the newly opened window, drag the "Bookmarks Toolbar Items" bar (now displaying the name instead of bookmarks) to the white space right of the menus, between the menus and the throbber.
      Click OK.
      Disable "Bookmarks toolbar" from view->toolbars - it's empty now.

      If you're working on a high resolution screen, you can move ALL of the buttons and navigation to the menu toolbar, then disable the "Navigation toolbar" too.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    21. Re:Nameless Firefox Bookmarks by Bradmont · · Score: 1

      I stick my navigation buttons, URL and search boxes on the menu bar, and then disable the navigation toolbar, which saves some vertical screen space.

    22. Re:Nameless Firefox Bookmarks by sarbrot · · Score: 1

      when a site i want to have in my bookmarks bar does not have an favicon (fx: my pizza-service does not have one) i just search another site with a nice favicon, bookmark it, edit the name to "", click it once to make the favicon appear, edit again and put in the desired URL. This also works for sites that have an favicon but an ugly one and you want another sites' for the bookmark.

    23. Re:Nameless Firefox Bookmarks by eternalnyte · · Score: 1

      I'm confused: what version is this for? Firefox 2.0.0.3 is giving me no problems making a nameless bookmark either by using Bookmarks->Bookmark this page or right clicking and choosing new bookmark.. it happily lets me clear the Bookmark name and never grays out the OK button for me...

    24. Re:Nameless Firefox Bookmarks by bziman · · Score: 1

      That's a bug? Wow, I couldn't live without that "bug"... I don't do menus, so everything for me is a button -- including my Firefox favorites. Yay for bugs!

    25. Re:Nameless Firefox Bookmarks by Anonymous Coward · · Score: 0

      This is great!

    26. Re:Nameless Firefox Bookmarks by networkBoy · · Score: 1

      you are awesome and my official hero for the next 24 hrs
      -nB

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    27. Re:Nameless Firefox Bookmarks by Anonymous Coward · · Score: 0

      Or just use the 'Bookmarks toolbar - icons only' style sheet.

  29. Second Life camera by LinuxHam · · Score: 5, Informative

    In Second Life, if you zoom your camera up to a wall, you will normally just zoom in to see closer detail of the wall. But once up against the wall, swing the camera around to the side, and you can "back your way in" through the wall. Release and click again, and the camera is now "mounted" inside the house. Its so much fun to watch people inside their homes, especially when your avatar is prevented from entering the property. Some even pay for a little orb that still tells them that no one is detected within 30m. Its fun because the clicks still work, too, like right clicking on someone and IM'ing them.. to tell them that you liked their last outfit more than this one, or the couch looked better in the other corner.. really freaks them out. That is definitely a "bug" (or feature) I couldn't live without... not in SL at least.

    --
    Intelligent Life on Earth
    1. Re:Second Life camera by Anonymous Coward · · Score: 1, Funny

      Is there a +1 creep. Mod?

    2. Re:Second Life camera by Anonymous Coward · · Score: 0

      So now we have virtual peeping toms?

    3. Re:Second Life camera by Mike+Micelli · · Score: 5, Funny

      I don't know what's creepier, the fact that he's a virtual peeping Tom, or that he has a Second Life account.

    4. Re:Second Life camera by Archangel+Michael · · Score: 1

      That would be (Score:-2, SecondLifeCreep)

      --
      Agent K: A *person* is smart. People are dumb, stupid, panicky animals, and you know it.
    5. Re:Second Life camera by SirTalon42 · · Score: 1

      You can do more than just 'be a mounted camera' on the wall, you can still navigate all around inside an area thats 100% 'walled off' with your camera with zero problems (your camera has a limited range though, which is actually quite far). It was obviously intentional because for zones with limited parcel access (i.e. you used the permissions tool rather than thinking prims would block someone) you can't move through the 'unauthorized' wall.

      Also if you can drop a scripted object somewhere, you can record everything anyone says within range of it and forward it to a website somewhere else or do whatever else you want with it. Second Life isn't as much a game as a platform.

  30. If the code is "unreadable"... by Anonymous Coward · · Score: 0

    If the code is "unreadable" how can you be sure they are bugs and not intended features you happened to overlook?

  31. Street Fighter 2 by Scrotumous · · Score: 2, Interesting

    My favorite bug -> feature was the doing a jumping kick to the back back side of enemies. This was not intended but has become mainstay in fighting tactics in the SF series ever since

    1. Re:Street Fighter 2 by pak9rabid · · Score: 1

      Let's not forgot about the "handcuff" bug in street fighter 2. Yano, the one where if u do the flash kick just right w/Guile, you could fuck the game up so that u can carry ur enemy around where ever u want and he can't do shit until u invoke the other bug to to release him. Ahhhh memories.

    2. Re:Street Fighter 2 by Scrotumous · · Score: 1

      ah how about resetting the SF machine with guile?

  32. VW close the sunroof bug by Ancient_Hacker · · Score: 5, Interesting

    There were two oversights in the older VW's electrical system:

    (1) You needed the key to close the sunroof.

    (2) But.. a sneak path in the headlight wiring meant you could instead just turn on the headlights and pull on the high-beam flasher (on the turn-signal lever). Enough electricity would flow backwards through the sneak path to operate the sunroof motor. ... ooops, that's more hardware than software. sorry.

    1. Re:VW close the sunroof bug by ReidMaynard · · Score: 1

      Obviously your VW bug wasn't old enough. My 58 beetle had a manual canvas-type sunroof. Also, no petrol gauge was available! To the right of the accelerator was a fuel petcock, kinda like a motorcycle, only there was no Off, just On and Reserve. But it had an ashtray and lighter, probably so you could have a relaxing smoke after you ran out of petrol.

      --
      -- www.globaltics.net

      Political discussion for a new world

    2. Re:VW close the sunroof bug by sconeu · · Score: 5, Funny

      Back around '79 or so, a buddy of mine had a VW Bug with a different bug in it. It had some kind of short, so that if you touched the steering column with another key on the same ring as the one in the ignition, it sounded the horn.

      --
      General Relativity: Space-time tells matter where to go; Matter tells space-time what shape to be.
    3. Re:VW close the sunroof bug by illumin8 · · Score: 1

      There were two oversights in the older VW's electrical system:
      Ah german automobiles! Masters of mechanical engineering, but couldn't find a decent EE to save their life...

      Hopefully things are better now because I have a 2006 Jetta TDI (turbodiesel) that I'm hoping doesn't have a complete electrical system failure within a few years...
      --
      "When the president does it, that means it's not illegal." - Richard M. Nixon
    4. Re:VW close the sunroof bug by pimpbott · · Score: 1

      Hmmmm. Just tried it on my '96 GTi (which has never had any sort of electrical problem whatsoever in 190k miles of ownership, other than frying a diode in the alternator while jump-starting another car) and it didn't work. Oh-well. I was hoping for a new VW trick.

      I guess they started with electric sunroofs with the '94 model year. Previous ones were cranks, IIRC.

    5. Re:VW close the sunroof bug by Anonymous Coward · · Score: 0

      Early Audis had power sunroofs and the electrical systems were funky. Phantom grounds and odd behavior abound. dash lights were hot on both sides and needed a ground to be TURNED OFF. then there were lights that turned the hot side into a ground when they were switched off, any broken grounds in the tail lights caused a christmas tree effect with random lights going on and off when the brake was hit or turn signal used.

    6. Re:VW close the sunroof bug by Anonymous Coward · · Score: 1, Interesting

      No experience with old VW's, but i do own a new pontiac G6 with the spiff 4-panel sunroof. I haven't figured out the pattern yet, but there is some sort of electrical interaction between the power windows and the sunroof. I've observed all manner of confusion... random closing... direction reversal... whenever i operate the sunroof and a window at the same time.

      After driving, I begin closing everything to park the car. Usually the sunroof first, and then the windows while the sunroof is sliding shut. But fairly often when i do this, the sunroof will stop or reverse (going all the way back open).

    7. Re:VW close the sunroof bug by Anonymous Coward · · Score: 1, Interesting

      That's "normal" on Beetles - they swapped the hot and ground wires for the horn to make it easier to get past all of the turning of the wheel that goes on. Of course, there _should_ have been a grounded tube going around the column to protect you from that, but it didn't always work as you might expect...

    8. Re:VW close the sunroof bug by Anonymous Coward · · Score: 0

      A lot of cars used to (still do?) have positive wired to the device and switched negative.

      Used to make for interesting hard to find bugs when wires got crossed.

      AC

    9. Re:VW close the sunroof bug by Anti_Climax · · Score: 1

      I had a '90 Geo Metro 4 door hatchback that allowed you to lock the ignition and remove the key with the motor still running, provided you held the hazard light flasher button down halfway.

      For the life of me I couldn't figure out how that worked.

      --
      Even people that believe in pre-destiny look both ways before crossing the street.
    10. Re:VW close the sunroof bug by Anonymous Coward · · Score: 0

      I used to be a VW mechanic, and I can tell you, the electrical system in ANY aircooled Volkswagen is a wonder of modern...stupidity. I have, however, seen some of the strangest/coolest/funniest hacks in my life from Volkswagen owners trying to do their own electrical work, such as:

      The owner who installed a "Theft Deterrent System": You could not start the car without first turning on the headlights. Due to the way things are wired, power to the ignition goes through the headlight switch, and by moving one wire, you get an "imobilized" car. If you didn't know what to look for, you'd think the car was dead.

      The owner who couldn't figure out why his horn went off every time he shifted gears: In the late 60's VW had a transmission they called an "auto-stick", basically it had a big vacuum canister, and when you pressed down on the shifter it operated a solenoid which would use that vacuum to disengage the clutch. There is no clutch pedal in these cars. The contacts under the shifter were notorious for going out, so it was not uncommon for people to have done interesting things to make their cars go. In this case, someone had pulled the wires out to access them, and then for some unknown reason, wired the horn circuit in with the circuit for the solenoid.

      Another auto-stick owner: Replaced contacts under the shifter with an after market "horn button" (you can pick them up at the auto parts store for a few dollars), and mounted it to the floor. Now you have a foot operated electronic clutch, that engages and disengages almost instantly. That car was fun to drive.

      Not electrical, but funny nonetheless: While driving back from california one time, the windshield wiper motor in my VW bus went out during a monster rainstorm. We disconnected the motor from the wiper arms, tied all of our shoelaces together, and ran them through the wing windows out to the windshiled wipers. Then the passengers took turns pulling first one way, then the other, to get the wipers to move back and forth. I believe that is also the trip that we used speaker wire as a throttle cable...

      Man I love VWs!

    11. Re:VW close the sunroof bug by bcmm · · Score: 1

      Not a useful one, but I had an old VW Polo which had an odd electrical bug.

      For some reason, taking the key out of the ignition with the indicator lever off centre caused the headlight and tail light on the side indicated at to light up. They appeared not to light up all the way to normal brightness, so unless it was dark, it was easy to indicate to pull over, park, stop the engine, forget the indicator lever and leave the battery to go flat.

      Can anyone shed any light on WTF the wiring for that glitch looks like?

      --
      # cat /dev/mem | strings | grep -i llama
      Damn, my RAM is full of llamas.
    12. Re:VW close the sunroof bug by Anonymous Coward · · Score: 0

      All VW's have this. At least the old ones.

    13. Re:VW close the sunroof bug by Dread_ed · · Score: 1

      My '87 nissan Stanza had a bug/feature in the stereo system.

      I noticed on a friends Maxima with the "upgraded" factory stereo that they looked identical except for the dolby NR button on the face plate. Mine just had a little plastic punchout cover on it where the Dolby button was. Funny thing was, when the light was just right I could see edge-on the dolby icon unilluminated on the display plate. As a cynical and suspicious bastard this piqued my curiosity.

      Soooo, one day I am listening to Mozart on my cassets deck in the car to try to remain calm in traffic, only it isn't working because of the huge hissing noise from the cassette player. Between that and a little help from the asshole drivers in front of me my road rage boiled over a tad. Next thing I know I am punching the shit out of the stereo cuz I am completely pissed off. Lo and behold, I smacked it in just the right spot and the hiss dies and the little Dolby icon, heretofore unilluminated, pops right on.

      Another shining example of percussive maintenance in action, thought I think this would be better described as a percussive field upgrade, or some such.

      --
      When the only tool you have is a claw hammer every problem starts to look like the back of someone's skull.
    14. Re:VW close the sunroof bug by Anonymous Coward · · Score: 0

      MY 1994 Golf Driver does the same thing. Does the brake light too.

      I think it happens in new models of golfs as well.

      Strange.... Amount of times I came back to the car to find the light on.

    15. Re:VW close the sunroof bug by bcmm · · Score: 1

      Only come back to find them on? I've actually drained the battery and done a push-start, more than once, because of that bug...

      --
      # cat /dev/mem | strings | grep -i llama
      Damn, my RAM is full of llamas.
  33. Re:Much greetings to you Respected Sirs. by 140Mandak262Jamuna · · Score: 1

    Sorry posted to the wrong thread. Mod it down please. It is a lame joke anyways.

    --
    sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
  34. telnet -l "-froot" by mmell · · Score: 5, Interesting
    More than once, I've rescued SUN servers where somebody hosed up PAM (or even /etc/passwd /etc/shadow) by breaking in this way.

    A related "bug" is the ability to boot Linux "fail safe" with the notation 'initrd=/bin/sh' on the boot line. As MVS would say, "Thou art God!"

    1. Re:telnet -l "-froot" by Anonymous Coward · · Score: 0

      'initrd=/bin/sh': shouldn't that be 'init=/bin/sh'?

    2. Re:telnet -l "-froot" by 42forty-two42 · · Score: 2, Informative

      That's init=/bin/sh, and it's hardly a bug - you're just changing the kernel configuration to skip all that silly authentication stuff. Someone who has access to the bootloader (you do set a bootloader password, right?) probably has enough access to override whatever security - short of disk encryption - you might have by force if necessary.

    3. Re:telnet -l "-froot" by greed · · Score: 2, Informative

      That's just Sun being late to the party. Everyone else had that bug in the "r" commands back in the early 90s; 'rlogin -l -froot hostname' was great when you got spam from an unpatched server. (Which was rare enough to be entertaining.)

      I think it was the Linux port of the "r" commands that had someone say, "Hey, these things have been broken _forever_!"

    4. Re:telnet -l "-froot" by Anonymous Coward · · Score: 0

      Surely you meant "init=/bin/sh"! Mounting a shell as your initial RAM disk won't get you very far.

  35. World -1 by Anonymous Coward · · Score: 0

    World -1 in Super Mario Bros.

  36. EMACS movemail by robbkidd · · Score: 2, Funny

    Without that mail forward bug, I'd never have been able to get root when I wanted it.

  37. The original metroid's "hidden worlds".

    If you let a door close on you and kept crouching/standing up, you could go outside the map, and the game would end up filling in new areas as best it could. Easy to get stuck, one way doors, and other nasty traps, but endless fun.

    http://www.gamefaqs.com/console/nes/file/519689/42 503

  38. One of my favorites, from console gaming... by foxtrot · · Score: 5, Funny
    From the Blue Sky Rangers website:

    FUN FACT: While testing the game, Bill came across a bug: every now and then, the game would, seemingly at random, hyperspace you. He and his boss, Mike Minkoff, went over the code with a fine-tooth comb before realizing what the problem was: the Intellivision hand controllers encode button presses in such a way that an action (side) key pressed at the same time as particular directions on the disc will be interpreted instead as a numeric key being pressed. There was no software way around this; shooting while moving would occasionally be interpreted as pressing 9 -- the hyperspace button.

    After several days of puzzling over a solution, the bug was ultimately "fixed" by including the following note in the instruction manual:

    "Every once in a while, your space hunter will move near a 'black hole,' and the computer will automatically put him into HYPERSPACE. This will cost you the same number of points as if you had pressed the HYPERSPACE key yourself. On the other hand, it will save your hunter."

    This led to an axiom frequently heard around Mattel: If you document it, it's not a bug -- it's a feature. Anytime a game in development crashed -- no matter how badly or bizarrely -- witnesses would invariably turn to the frustrated programmer, shrug, and calmly say "document it."


    -JDF
    1. Re:One of my favorites, from console gaming... by Anonymous Coward · · Score: 3, Interesting

      Ultima II had a similarly documented "feature."

      It was coded in assembly language and the monsters were kept in a pair of parallel tables. Whenever you swung at a monster, it did a loop similar to:

                          LDX #$1F
      CHECK1: LDA MONX,X
                          CMP HITX
                          BNE NEXT1
                          LDA MONY,X
                          CMP HITY
                          BEQ HIT
      NEXT1: DEX
                          BNE CHECK1 ;Should be BMI
      MISS: ...

      As noted in the comment, the (B)ranch (N)ot (E)qual should be a (B)ranch if (MI)nus. The upshot being that you could never hit the 0th monster on a map. Rather than find/fix the bug, they just mentioned that you will occasionally encounter monsters who are simply invincible.

    2. Re:One of my favorites, from console gaming... by pipatron · · Score: 2, Informative

      Speaking of hyperjumps and documented bugs, in Frontier - Elite 2 (and possibly the original Elite as well) you could jump to solar systems with your warp drive, and you could normally jump between 5 to 10 light years at a time. If you scrolled away so the distance passed 655.35 light years, the limit comparison wrapped around and you could jump 655.36 + 5 to 10 light years. If you knew your maths, you could do some simple trigonometric calculations to jump anywhere you liked in a 1310 light year radii with only two short jumps.

      I don't have the manual right here, but I strongly recall that this was described vaguely in the manual.

      --
      c++; /* this makes c bigger but returns the old value */
    3. Re:One of my favorites, from console gaming... by internewt · · Score: 1

      I rememeber that bug on the Amiga version of Frontier! I don't know if it was mentioned in the manual, but I do remember the manual mentioning that if you didn't service your engines then you could miss-jump and wreck the engine. I rememeber trying this bug (probably after reading about it in Amiga Power), miss-jumping, and being stuck thousands of lightyears from Sol!

      The bug wouldn't have been in the original Elite game though, as the games were quite different. And Elite had 7 "small" galaxies IIRC, but Frontier and FFE only had the one.

      Fontier was a seriously buggy game though, as was its successor Frontier First Encounters. In FFE if you got enough money then it would reach the maximum value (something like 16.7 million credits, IIRC), and change to a negative of the same value. Did they used to charge a launch fee in that game? Or only landing/docking fee? Eitherway, if you got "too rich" then it caused problems as ironically you couldn't pay for stuff. The trick was to give huge sums to charity before reaching the bug's value.

      There was many other bugs that could be taken advantage of in those games. One defense method was when attacked, you pause the game, find the attacker in space and target them, fire off a missile, stick the stardreamer to top speed, and the missile would hit the attacker. If you used missiles "properly" then the target would often out run it. This method also worked nicely for launching a missile at an incoming missile, because at the start of the game you don't have the room on your ship or money for an ECM. The bug was basically that when you paused the game, it'd pause the action, but not the interaction. i.e. you could still set a missile to target something, you could move about in the inventory and star chart/systems screens, you could jetison cargo, you could use the different views of your ship and move the views (though not move the ship or actually fire the lasers).

      --
      Car analogies break down.
  39. Quake2 strafe jumping by pak9rabid · · Score: 5, Interesting

    I'd have to go with strafe jumping in Quake2. What better way to get the 100 health pack in q2dm1 w/out having to sacrifice precious life w/a rocket jump. w00t!

    1. Re:Quake2 strafe jumping by Anonymous Coward · · Score: 0
      Hmmm, except strafe jumping alone couldn't get you to the megahealth. There are a number of routes to the megahealth, and none of them just use the strafe jump.


      1 - Rocket jump (ouch)
      2 - Double-jump (another bug) from the backpack to atop the crates, then strafe-jump directly to the megahealth.
      3 - Double-jump from the backpack to atop the crates, then regular jump to the light, then to the megahealth.
      4 - Circle-jump (another bug) from the yellow armour to the crates above the backpack, then strafe/circle-jump to the megahealth (or do the regular jump via the light)

      I would then say that the double jump is just as important as strafe jumping in Q2. Without it, you would have to do 4 jumps to get to the yellow armour, then circle-jump (hard) to above the backpack, then either circle-jump again or do two regular jumps via the light to get to the megahealth with no loss of health. All while trying not to get shot.

      IMO, the combination of strafe jumps, ramp jumps, circle jumps and double jumps gave Q2 a depth that was a major factor in its longevity. I wouldn't have played nearly as much Q2 as I did if none of these bugs were in the game. Each time I learned of one of these bugs, then figured out how to do it for myself, it was like a new layer of the game being revealed. I can still remember the sense of "Holy sh!t" that accompanied the first time I saw a strafe jump on the jump from the Upper RL to the Rocket ammo on q2dm1. Can anyone who played Q2 anything more than casually imagine the game with none of the above bugs?

  40. I dunno by Chris+Burke · · Score: 5, Interesting

    In high school I wrote a program for a physics project that showed electromagnetic wave propagation and interference. Nothing that special, the end result was basically a pretty screensaver with some relevence to physics. In light of that, one of the features I added was a pull-down menu for selecting what color you wanted to use. This was back in the VGA days with a 256 color pallette and manually poking the VGA frame buffer. Due to an off-by-one error in calculating the bounding box of the pull down menu, it was possible to select an invalid index for the color, so instead of selecting a row of the pallette with my nice color gradients set up, it was one of basically random colors. The result was really trippy, so when I discovered the bug, I decided to leave it in. At the open house where my program was running through a projector some bystander discovered the bug and thought it was indeed cool and trippy.

    That's about it. Most of my bugs just break shit. :)

    --

    The enemies of Democracy are
    1. Re:I dunno by soft_guy · · Score: 3, Interesting

      I hope someone mods this up because it is like the only post for the entire article that is actually relevant or interesting.

      --
      Avoid Missing Ball for High Score
    2. Re:I dunno by cpeikert · · Score: 1

      In high school I wrote a program for a physics project that showed electromagnetic wave propagation and interference.

      Funny -- when I read this first sentence, I immediately thought, "hey, that sounds a lot like Chris Burke's project."

      Indeed, upon seeing the identity of the commenter, I discovered how right I was.

      You never showed me the bug, though.

    3. Re:I dunno by DedWisdom · · Score: 5, Interesting

      I had a similar experience when I was younger. I was learning C++ graphics programing on windows (95), and I was trying to simply make a static screen that showed a monochrome random gradient. Well I had some bug in my algorithm, and the screen went crazy, showing this massive arch with these beautiful repeating patterns within the arc, but random static outside of the arc. Okay, weird, changed some +s and some -s, and got it working, fine.

      Years later I started learning about chaos theory and fractals, and something in my head clicked. I instantly had a vivid memory of that bugged screen and realized that it was a fractal. I had accidentally created a rather complex fractal. Blew my mind clean up.

    4. Re:I dunno by Elbows · · Score: 3, Funny

      My company writes effects plug-ins for film/video post-production, and a while back we got an email from one of our customers with a similar story. He had been playing around with our effects trying to simulate a look of noisy or damaged video. Suddenly his render failed with an "out of memory" error, and the screen filled with random digital garbage -- it was exactly what he wanted!

      So he rendered it out the way it was, and we gained another happy customer. ;-)

    5. Re:I dunno by Chris+Burke · · Score: 1

      Hey there Chris!

      I can't believe I never showed you the bug. It was pretty painful to see up close in the darkened PC computer lab, but like that would have stopped me. Maybe I wanted to see if you would find it on your own? Or it just slipped my mind. No idea.

      --

      The enemies of Democracy are
    6. Re:I dunno by Chris+Snook · · Score: 2, Interesting

      An off-by-one error in some edge detection code I wrote caused blurry parts of an image to remain unchanged, but enhanced every detail on in-focus parts several times over. As a result, if you took a picture of someone up close, and there were people in the background, applying this filter would enhance the finest of wrinkles and make the person look about 100 years old, with no change to the rest of the image.

      --
      There's no failure quite as dissatisfying as a complete and total solution to the wrong problem.
  41. Re:Much greetings to you Respected Sirs. by Anonymous Coward · · Score: 0

    No, you posted it to the wrong story, not the wrong thread. You started a new thread.

  42. Re:Personally, I like... Actually... by Marxist+Hacker+42 · · Score: 0

    It means you (the "Personal Computer user") have to put more paper in the Letter Tray. It's companion error is "PC Load Legal".

    --
    SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
  43. Memory segment B000? by Anonymous Coward · · Score: 1, Interesting

    How about being able to use the memory segment for monochrome video adapters as extra memory, back in those days?

    1. Re:Memory segment B000? by RobNich · · Score: 1

      The Callstar voicemail system apparently used that 'feature'. I tried to upgrade the video card in one, and found that it no longer had enough memory. Geez, that was back in 1997, and the Callstar was ancient then. It's still the best voicemail system I've used.

      --
      Hello little man. I will destroy you!
    2. Re:Memory segment B000? by Crizp · · Score: 1

      B000-B7FF if I remember correctly, at least for DOS -- was it an ENN386 option?

    3. Re:Memory segment B000? by internewt · · Score: 1

      B000-B7FF if I remember correctly, at least for DOS -- was it an ENN386 option?
      EMM386, surely?
      --
      Car analogies break down.
    4. Re:Memory segment B000? by Crizp · · Score: 1

      But of course. Typo.

  44. Not sure if youd call it a bug but... by SuperCharlie · · Score: 1

    I support a lotta desktops and its always a pain to log off user, do your admin, log on user especially if youre trying to do something profile specific.

    I found that with IE6/XP if you enable quick launch, rt-click properties, find target on IE6 (lazy way to get to it) I could do a runas admin and have free roam to do what I needed without logging the user off. Killed with IE7. Thx.

    1. Re:Not sure if youd call it a bug but... by donkeyoverlord · · Score: 1

      I always just open cmd.exe then use runas to open another cmd.exe process as administrator.

    2. Re:Not sure if youd call it a bug but... by BobPaul · · Score: 4, Interesting

      I do ctrl+alt+del and kill explorer.exe. Then I use File: Run in task man and do "runas /user:administrator explorer.exe". This restores the desktop as the admin user. When I'm done, I do another ctrl+alt+del, either kill explorer or choose "Log Off Administrator" from the start menu, and then run "explorer" from the run dialog again to restore the old session.

      This is faster than logging off and back on, leaves the users programs open, but gives you the full admin desktop, not just a shell or explorer window.

      It's too bad gksudo doesn't work on Windows...

    3. Re:Not sure if youd call it a bug but... by Chacham · · Score: 1

      You can do that without killing explorer first.....

    4. Re:Not sure if youd call it a bug but... by CCFreak2K · · Score: 1

      You might like this thing as well.

      --
      "Beware of he who would deny you access to information, for in his heart he dreams himself your master."
    5. Re:Not sure if youd call it a bug but... by dcam · · Score: 1

      One problem with killing explorer is you normally lose stuff in the system tray.

      --
      meh
    6. Re:Not sure if youd call it a bug but... by Anonymous Coward · · Score: 0

      If you log in as Administrator once, start Windows Explorer and change the Folder Options from the tools menu, you can make this easier. Simply check "Launch Folder windows in a separate process" under the view tab. When you log in as a user the next time, you can just run the command directly:

      runas /user:administrator explorer.exe

      It's not your whole desktop, but you now have an explorer.exe window running in administrator mode. Very handy for launching control panel applets, etc.

    7. Re:Not sure if youd call it a bug but... by BobPaul · · Score: 1

      yeah, but then all you get is the one explorer window. This simulates the fast user switch, but works in domain environments and other places were faster user switch is disabled.

    8. Re:Not sure if youd call it a bug but... by Chacham · · Score: 1

      OK, i see what you mean.

      Thanx. :)

  45. Physics bugs in video games are the best by mattgreen · · Score: 4, Interesting

    I used to play too much Starsiege: Tribes about five or six years ago. It is a multiplayer first person shooter with enormous maps. When it first came out, everyone walked around, or hitched a ride on a vehicle. The game was fun, but it was a bit slow for my tastes (I grew up on NetQuake). Somebody discovered a physics bug that allowed players to move very fast over terrain by rapidly tapping the jump button as players slid down a hill. This process was scripted, and the overall dynamics of the game (terrible pun) changed dramatically. The game went from being fairly slow to being one of the most intense games I've ever played. Different hills would give different amounts of speed, and the process of 'skiing' itself required that you constantly look for ways to maintain your speed while fighting off other players.

    When the developers saw the potential it gave the game, they left it in. They realized how it made the game unique and exciting, and this bug became the standard feature that sets Tribes far apart from almost all FPS games out there, even to this day. This bug resulted in probably the closest simulation to virtual athleticism that I have ever seen, which was responsible for the fanatical, but small fanbase the Tribes series had.

    1. Re:Physics bugs in video games are the best by Anonymous Coward · · Score: 0

      It's actually available for free (the full game) and there are still active players (using mods, etc.) I play it sometimes - still fun, years later. Wine can handle it with 0.9.27 - not sure about later versions.

    2. Re:Physics bugs in video games are the best by Anonymous Coward · · Score: 0

      Yeah, like Ridge Racer 4 for the PS2.

      It turns out that no matter which way you slide going into the curve, the game will take the car and slide it through the curve.

      All you had to do was break the tires loose, and your car would "magically" go around the curve.

  46. That's simple... by sherpajohn · · Score: 1, Insightful

    The bug in evolution which allowed Homo Sapiens to gain language and self awareness. Gaia knows it never should have happened! But I am sure it will corected shortly (that being shortly in the cosmic scale of time).

    --

    Going on means going far
    Going far means returning
    1. Re:That's simple... by electr01nik · · Score: 1

      My version of Evolution seems to be missing that.

      Are your Homo Sapiens pre-compiled or are you building from source before you release them into your production environment.

    2. Re:That's simple... by Antique+Geekmeister · · Score: 1

      Unfortunately, the owners of the intellectual property have used their market dominance to hinder any potential competition. The "dumping" in competitor's markets has been especially destructive. I'm afraid we'll have to wait for the owners' business plan to destroy them utterly before any other effective competition can occur.

    3. Re:That's simple... by nacturation · · Score: 1

      The bug in evolution which allowed Homo Sapiens to gain language and self awareness. Gaia knows it never should have happened! But I am sure it will corected shortly Lolz! UR teh l33t dewd!
      --
      Want to improve your Karma? Instead of "Post Anonymously", try the "Post Humously" option.
  47. rich text indent vs. blockquote in IE by brunascle · · Score: 2, Interesting

    most of those web-based rich text editors you see use the same core functionality that's built into the browser. it's sometimes called "design mode" because to initialized it you have to set the designMode property of an iframe element to "on".

    there's a set of commands that you can execute on the iframe after you've set this property. one of them is "indent". when handled properly, this should create a new div element with some kind of margin or padding on the left. well in IE executing that command actually creates a blockquote element.

    completely wrong, right? yes, but convenient. in our CMS we need to be able to create a blockquote, and have no use for indentation, and i cant find any other way to do it in IE. fortunately, in better browsers blockquote is handled with the command "formatblock: blockquote".

  48. OOB Windows bug (WinNuke) by c0d3h4x0r · · Score: 3, Funny

    http://en.wikipedia.org/wiki/Winnuke

    This was the handiest thing for getting rid of idiots on chat.

    Runner-up: ALT-F4 to close a window. Also handy for getting rid of idiots on chat:

    Idiot: Hey, my computer is broken, how do I fix it?
    Me: Well, first, hit ALT-F4
    *** User 'Idiot' has left the room. ***

    --
    Moderator hint: a comment is neither "Flamebait" nor "Troll" if it is true.
    1. Re:OOB Windows bug (WinNuke) by brunascle · · Score: 3, Funny
      Ah yes, how many times have we seen this:

      User A: how do i kick someone out of the channel?
      User B: type /leave [their name]
      *** User A has left the room (User B) ***
      *** User C has left the room (User B) ***
      *** User D has left the room (User B) ***
      *** User E has left the room (User B) ***
      *** User F has left the room (User B) ***
      User B: :(
    2. Re:OOB Windows bug (WinNuke) by MalleusEBHC · · Score: 1

      Runner-up: ALT-F4 to close a window. Also handy for getting rid of idiots on chat:

      Idiot: Hey, my computer is broken, how do I fix it?
      Me: Well, first, hit ALT-F4
      *** User 'Idiot' has left the room. ***


      That reminds me of what people would do on GameRanger, a Mac gaming client. Noobs would ask questions, and of course people would tell them to hit command-Q. I guess too many noobs were getting tricked into this, so GameRanger was changed to ask for confirmation upon quitting, with the default answer being OK. Of course, the trick just evolved so that people would just tell noobs, "Hit command-q, then hit enter really quick!" Less people got tricked, but damn was it all the more satisfying when you got someone.

    3. Re:OOB Windows bug (WinNuke) by Anonymous Coward · · Score: 1, Funny

      The trouble is that "/leave [reason]" doesn't always work, and it may expect a channel name.

      My personal favorite is the ever popular variant on bash.org.

    4. Re:OOB Windows bug (WinNuke) by Anonymous Coward · · Score: 0

      what about forcing windows to use dos\dos devices? playing a sound such as con/con.wav should do the trick. or try to cd to con/con on a windows ftp server. instant bsod.

    5. Re:OOB Windows bug (WinNuke) by edschurr · · Score: 1

      We used to frequently do the unoriginal ALT-F4 thing in Starcraft Battle.net waiting rooms, which was sort of counter-productive because we were waiting for enough players to join our game before we could start. Annoyed players would often leave too.

    6. Re:OOB Windows bug (WinNuke) by SirTalon42 · · Score: 1

      More often people use that in game rather than in the waiting rooms. I only remember a few people actually falling for it though (I don't remember exactly, but I believe it even asked for confirmation first!)

  49. Apple ][ Taipan by CygnusTM · · Score: 1

    I was always fond of the bug in the Apple ][ version of Taipan that let you overpay a loan which would turn it into a negative loan that would grow more negative as the game went on. You could then borrow against this negative amount. With the usury rates on loans in the game, it was effectively an ultra-high interest savings account.

    1. Re:Apple ][ Taipan by Anonymous Coward · · Score: 0

      I once played that game for 11 hours straight. I especially liked when my account balance would go into scientific notation and roll off the screen.

  50. Obvious.... by Anonymous Coward · · Score: 0

    Daylight savings time...

  51. SQLDeveloper by beef623 · · Score: 2, Interesting

    In one of the older versions(after they dropped the codename raptor and went live) of oracle's sqlDeveloper, after your session with the DB had timed out you could just execute a query a couple times to renew your session rather than logging out and logging back in. I know its a considerable security flaw but it was damn handy.

  52. tribes 1: skiing by teh_chrizzle · · Score: 1

    jumping rapidly while going downhill caused you to gain speed at a rate that defied physics (both real and virtual). it became such a hit with players that macros and other mods were built to automate the process. the "feature" became so essential to game play that it was built into tribes 2.

    --
    sarcasm:
    -noun
    1. harsh or bitter derision or irony.
  53. Most useful bug... by toxique · · Score: 0

    UNIX!!! Just partially kidding :-)

    --
    - This can't be... - Be what? Be real?
  54. Re:Yes by soft_guy · · Score: 3, Funny

    I'm unclear how Windows qualifies as a feature.

    --
    Avoid Missing Ball for High Score
  55. mertz by goombah99 · · Score: 1, Informative
    --
    Some drink at the fountain of knowledge. Others just gargle.
    1. Re:mertz by BobPaul · · Score: 1

      Why is this a troll? This is the article the parent referenced. Am I missing something?

  56. If You Can't Fix It, Feature It by adavies42 · · Score: 5, Funny

    A couple of friends of mine in high school CS wrote a Tetris clone for class, but they had a bug where occasionally, blocks would spontaneously appear or disappear. They couldn't figure out how to fix it, so they claimed (in the docs, not to the teacher) that they had AI adjusting the difficulty to match the players' skills.

    --
    Media that can be recorded and distributed can be recorded and distributed.
    -kfg
  57. Re:Personally, I like... Actually... by Volante3192 · · Score: 2, Insightful

    Minor quibble, PC means Paper Cartridge in that context, not user.

  58. Date library by isj · · Score: 5, Interesting

    Not me, but one of my colleagues took over maintenance of a system which included a date library. The dates and times were treated as floating-point, leading to much conversion and adjustinging. Eg. 12:30 was 12.30, so when adding 40 minutes getting 12.70, and then adjusting that to 13.10, No input validation was done. My colleague tried cleaning that up, but then got complaints from the users. They had discovered the "features" and were now using eg:
        January -6th
    meaning december 24th the previous year.

    My colleague had to remove the input validation again and keep the features.

    1. Re:Date library by somethinghollow · · Score: 1

      I doubt it's a bug, but JavaScript behaves similarly.

      alert(new Date(2007,2,32,24,59,00)) will alert something like Mon Apr 02 2007 00:59:00 GMT-0700 and alert(new Date(2007,2,-2,24,59,00)) will alert something like Tue Feb 27 2007 00:59:00 GMT-0800. Very handy.

      Your friend was on to something.

    2. Re:Date library by Oswald · · Score: 1
      Excellent story, but a sad ending. Fixing the dates was the way to go, as demonstrated by the fact that January -6 can't be December 24. It could be construed as December 25 or December 26, depending on whether or not there's a zero day, but not the 24th. It's too error prone a "system" to keep.

      The best part of my argument is that if I turn out have miscalculated, it just reinforces my point.

    3. Re:Date library by Crizp · · Score: 1

      Ugh, you should submit that to worsethanfailure.com or something.

    4. Re:Date library by Anonymous Coward · · Score: 0

      I believe GNU date has the same feature if you specify an arbitrary date with "d". It also works for "January 33rd", or 27:00 hours on february 1st etc.

    5. Re:Date library by Myopic · · Score: 1

      I just did that last week with the Java GregorianCalendar class. I actually thought it was very useful, not at all a "bug". In fact, what I needed was the last day of a month, and apparently the only way to get the last day of a month using that class is to go to the next month, and choose day zero of that month, which is calculated as the last day of the previous month.

      Again, I don't think it's a bug, I think that's good design, properly implemented. Things could have been different for your friend, though.

    6. Re:Date library by Thanatos69 · · Score: 1

      really?

      Calendar calendar = new GregorianCalendar();
      Date today = new Date();
      calendar.setDate(today);

      calendar.getActualMaximum(Calendar.DAY_OF_MONTH);

      Should return 31 (it is March), please keep in mind that I haven't actually tested this so the above may not compile correctly but I do know there is something similar to the above.

    7. Re:Date library by soliptic · · Score: 1

      Definitely, that's what I was about to suggest. A true WTF.

  59. Game Bugs by Bones3D_mac · · Score: 1

    I gotta put my money on the numerous video game bugs of the last few decades which don't really do anything but invoke a "hey, that's kinda cool" response. Ones like the negative worlds bug in the original Super Mario Bros, or the Pac-Man "perfect game" crash.

    There's probably at least one out there each of us has stumbled over at one point.

    --


    8==8 Bones 8==8
    1. Re:Game Bugs by sconeu · · Score: 1

      Ularn.

      Because Bessman's Flailing Hammer removes 10 points from your INT when you pick it up, but returns to the *original* value when you drop it, you can use it in combination with the Ring of Cleverness to jack up your INT.

      Pick up the ring, pick up the Hammer, drop the Ring, drop the Hammer. Repeat as needed (but don't go over 100). This also works nicely with the Potion of Heroism.

      --
      General Relativity: Space-time tells matter where to go; Matter tells space-time what shape to be.
    2. Re:Game Bugs by teh+kurisu · · Score: 1

      Wip3out (or WipEout 3) for the PSone had a bug where if you scraped along one of the side walls, your speed would actually increase instead of decrease. That's how it seemed to me anyway. I'm guessing somebody stuck a plus sign where there should've been a minus sign.

  60. Re:Personally, I like... Actually... by qwijibo · · Score: 0, Flamebait

    It stands for:

    Paper Cartridge LOAD LETTER sized paper, you retarded git you can't figure out what the error message means that always occurs when you run out of paper.

    I'm positive that if you read the documentation, it would say exactly that. =)

  61. The bug in Lotus Domino 4.x... by Hymer · · Score: 1

    ...used by ADSM for making backups of document level... the bug allowed users to restore documents (from ADSM server) directly from their Notes Client too.
    This bug/feature dissapeared in Domino 5 (and later), when we called IBM (the great mothership of both Lotus and ADSM) we were told that it wasn't a feature but a bug and it has been corrected.

  62. Budden budden! by Anonymous Coward · · Score: 0

    The Volkswagen Beetle.

  63. what is a bug? by Anonymous Coward · · Score: 0

    Programmers are "users" as well. A bug is often caused by a simple error like a space in wrong place, not only errors in design.

  64. Windows by Anonymous Coward · · Score: 0

    Would the answer to that be Windows, by any chance?

  65. "Mr. Watson..." by circletimessquare · · Score: 1

    "Come Here. I need you."

    --
    intellectual property law is philosophically incoherent. it is your moral duty to ignore it or sabotage it
  66. Re:Personally, I like... Actually... by bwcarty · · Score: 1

    It also means you haven't seen or don't remember Office Space

  67. Re:Personally, I like... Actually... by jofas · · Score: 1

    Who in this world has not yet seen "Office Space"????

  68. Re:ModeX graphics? Buffer overflows? by greed · · Score: 5, Informative

    The Rockwell 6502 was a hard-wired processor; there was no "illegal instruction" check. So, any bit-patter you loaded as an instruction would try to do something. Sometimes, because of the internal open-collector busses, you'd get neat "something OR something" that wouldn't normally happen.

    Here's the I'm Feeling Lucky hit on it: 6502 Opcodes.

    Thing is, the results might vary from implementation to implementation. So they might not work usefully on the 6510, which was otherwise a 6502 with an I/O register at $0000-$0001.

  69. FTP bug by Anonymous Coward · · Score: 0

    Circa 1991, I used to move large files to servers around the world with good ol' ftp. With a slow connection to Europe, it would take hours. I didn't particularly like having the ftp process going for so long, especially since some of my buddies would get nosy about the files.

    I forget what exactly I did, but by severing the login connection a specific way, the process would become a zombie. I think maybe I just killed the shell. Anyway, it wouldn't show up on any process list, much less show the owner, but the file would continue to transfer. Hours, days, however long it took.

    It probably mucked up the servers pretty badly in some way I don't know about (so I used it rarely). If anyone knows what was really happening, I'd be curious to learn.

  70. The Second Life Sit-Hack Bug by Nonsanity · · Score: 1

    When you choose a place to sit down in Second Life, it tries to put your avatar's rear end right there on the surface where you clicked. But since many things you may want to sit on/in require you to be in a particular place (driver's seat, hanging upside-down by your ankles, etc) a script command was added that lets the script pick the spot.

    Linden Lab forgot to set a limit on this function. (Read: bug)

    But people started getting creative with it. "Sit" on a signpost who's sit offset is 150 meters straight up. The signpost then forces you to stand up. You are now in your private "skybox" and are free to hang upside-down by your ankles in semi-relative privacy.

    This unintentional form of teleportation bug is so ingrained in that virtual world now that it can never be fixed. Though Linden Lab did at least cap it to 300 meters, and prevent it from crossing simulator boundaries, which keeps the "bug" flavor to a minimum.

    (Of course, there is a better method these days that transcends those limits, using llSetPrimitiveParams and a list of many repeating, distant position commands... Another "keeper" bug?)

    1. Re:The Second Life Sit-Hack Bug by Rob+T+Firefly · · Score: 1

      I love this one. It's also fun to use as a security measure. For example if someone who isn't you tries to drive your car, you can script the driver's seat to eject them a few hundred meters into the air. That'll teach 'em..

    2. Re:The Second Life Sit-Hack Bug by Nonsanity · · Score: 1

      (Actually, the ejection seat trick uses different code. You can't change the seat offset once someone is sitting on it, or at least, someone already sitting on it won't move if you do. Since you want a legitimate driver to be sitting in the driver's seat, that's where you set the offset. To eject someone that doesn't have "the keys", you unsit them and give them a physics push instead.)

      ~ Nonsanity ( aka Tiger Crossing in Second Life )

    3. Re:The Second Life Sit-Hack Bug by Rob+T+Firefly · · Score: 1

      Thanks for the correction! I'm still pretty new at LSL. Either way you do it, it's a fun effect!

  71. Air-cooled VW transmissions. by EWAdams · · Score: 1

    In old [real, proper] VWs -- back when they were air-cooled -- for some reason you could shift gears without using the clutch. I did this on more than one occasion when I had stripped the clutch. If you had to stop, e.g. at a stoplight, you slipped it into neutral, braked, and shut off the engine. Then you put it into first, and when the light turned green, started it up. Of course it lurched horribly, since it was in gear, but once the engine caught you could proceed on your way, shifting into higher gears when the engine sound was "just right." It required a certain amount of trial and error to find out when this was. I learned this from the VW Idiot Book and was incredibly glad I had it. The trick was comparatively easy in highway driving, but much more awkward in towns.

    --
    I piss off bigots.
    1. Re:Air-cooled VW transmissions. by Terralthra · · Score: 1

      This will work in any manual transmission. You're basically using the synchro gears as a (bad) replacement for the full clutch. As long as you match revs properly before you push the gearshift into the desired gear, it will slide in fairly easily, with or without the clutch being pushed in. Attempting to do this without matching revs is likely to damage your clutch.

      --
      -Terralthra...
    2. Re:Air-cooled VW transmissions. by dan828 · · Score: 2, Informative

      Standard practice for truck drivers. Banging through 9 or 10 gears and having to double clutch when shifting is hard on the left knee after a while, so drivers just shift without the clutch by syncing the RPMs up manually, allowing the transmission to slide in and out of gear with just fingertip pressure. Anybody that doesn't/can't do this is pretty much considered a n00b.

    3. Re:Air-cooled VW transmissions. by Anonymous Coward · · Score: 0

      I thought this trick was common knowledge? I learned it perhaps 2 days into driving my first manual transmission car, although there's no way you could possibly get the same acceleration out of this trick.

      Hell, I thought it was a feature!

  72. Re:Much greetings to you Respected Sirs. by Clazzy · · Score: 2, Funny

    You should've just claimed it was a bug in /. that turned out to be an interesting feature of some sort. Problem solved!

    --
    If we can hit that bull's-eye, the rest of the dominoes will fall like a house of cards... Checkmate.
  73. The Easy to Interpret Save Files in X-COM by Zenaku · · Score: 4, Interesting

    In the olden days (DOS) version of X-Com: UFO Defense, a save game consisted of a whole bunch of individual files in a directory tree. After some tinkering around, I realized that one particular file stored nothing except a list of what equipment you had "on order" and after how much more game time it was going to arrive.

    By ordering a bunch of equipment and saving your game just before it was due to arrive (call that save game A) then saving again immediately after it arrives (call that save game B), and then copying this file from save game A to save game B, you could get whatever equipment you had ordered to arrive again. And again, and again. And you could turn around and sell all the extra stuff for cash.

    Lather, Rinse, Repeat. I used to start off a game by repeating this trick until I had maxed out my cash. I found the corresponding file that allowed you to improve your tech without actually performing the research, but that was less of an advantage, since the game used your tech-level to decide how difficult the scenarios it gave you should be.

    --
    If fate makes you a motorcycle, you become a motorcycle.
    1. Re:The Easy to Interpret Save Files in X-COM by Anonymous Coward · · Score: 0

      Really, when I played that game, I just hacked the amount of money I had and no lather/rinse/repeat, all was good.

    2. Re:The Easy to Interpret Save Files in X-COM by micah_hainline · · Score: 1

      When I played X-Com I would play it on superhuman and try to beat the game without loading when I lost a mission. O_o
      Isn't cheating in a single-player video game a little like cheating in Solitaire?
      However, since this is a thread about bugs, I like the bug in X-Com in which you can inexplicably pull a rifle clip out of a dead Chrysalid. Nothing like offing a Chrysalid with the clip you just pulled out of his dead comrade. :)

    3. Re:The Easy to Interpret Save Files in X-COM by Anonymous Coward · · Score: 0

      Hah, that's a good one. I never went there; I editted the file that held your account balance and made myself instantly wealthy, instead.

    4. Re:The Easy to Interpret Save Files in X-COM by DingerX · · Score: 1

      Dude, you'd need to exit the DOS game and do that trick. Much better to have two bases with twice the living quarters as what you need. At the end of the month, transfer your entire R&D staff from one to the other. Engineers/Scientists in transit don't get their salaries paid.

      And you thought business travel was a bitch in your field.

    5. Re:The Easy to Interpret Save Files in X-COM by dethndrek · · Score: 1

      The old Interplay game Bard's Tale had a similar bug. You could copy the "Character" Disk, load your characters from the original disk, rob them of all their eartly treasures (crystal armor or some high value item is particularly nice) and/or gold. Once they are penniless, Save them to the bogus disk, and load them back from the original complete with all their equipment. Sweet! I spent some time doing this and I had everything a 12 year old boy ever wanted. Well....almost. ;-P

      --
      -JWR
    6. Re:The Easy to Interpret Save Files in X-COM by bigdavex · · Score: 2, Insightful

      Why not just delete the whole directory and put this?

      echo You win!

      --
      -Dave
    7. Re:The Easy to Interpret Save Files in X-COM by Anonymous Coward · · Score: 0

      Ah, you had to exit the game, so it isn't as good as mine. Might and Magic on the C64. I came up with a two save disk cheat that allowed to pool all money to one person, remove everyone else from the party or remove him (can't remember for sure) on the second save disk, so he is the only one that is saved. Reload the entire party from the first disk save and pool all the money to the second character, make sure that one is the only one saved on the second disk. Once you have all the characters saved on the second disk repeat the procedure using the second save disk as the first in the next iteration. Once you have tons of money make the trip to the money to xp fountain.

    8. Re:The Easy to Interpret Save Files in X-COM by EgoWumpus · · Score: 1

      How is this a bug? Any game can be hacked in this way, if you have an understanding of how it writes it's particular bits to storage. If anything, it shows entirely *expected* behavior on the part of the program.

      --

      [Ego]out

    9. Re:The Easy to Interpret Save Files in X-COM by networkBoy · · Score: 2, Informative

      I liked the old ultima 6 bug of loading your companions.
      If you told them to pick up something heavy then they would say "too heavy"
      If you had something ungodly heavy you could pick it up and move it to them, no problem.
      I always had a skiff at my disposal because of that bug.
      -nB

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    10. Re:The Easy to Interpret Save Files in X-COM by Anonymous Coward · · Score: 0

      In Dune2 for the PC, the maps' initial status was saved in ascii text mixed with some binary data. In the ascii parts, it specified which units stood where and whom they belonged to, including some sandworms. If one changed the sandworms to belong to one's own troops, instead of the default four commands in the menu ("attack" "move" "retreat" and "guard"), one would have "attack" "attack" "attack" and "attack". Sadly, the sandworms would dissapear after they had reached 50% Damage.

    11. Re:The Easy to Interpret Save Files in X-COM by Anonymous Coward · · Score: 0

      Nah, the best thing was that when your team god better and better. Their attributes had an 8 bit counter so your best fighters became totally losers after values of 255. This made the game ..um.. interesting. Also another funny thing was that people with say 3 time units could use some weapons (I think laser pistol was one) so that the action didn't cost anything.

      I still love this game. It's soo great. Great music also.

    12. Re:The Easy to Interpret Save Files in X-COM by Rei · · Score: 2, Funny

      People discussing old X-Com bugs reminds me of the horrible, and occasionally horribly amusing, bugs in Masters Of Orion (the original, for DOS). Sure, some were annoying -- for example, the sound cutting out. However, some were either amusing or annoying, depending on the circumstances. Let's see -- there was the bug in which a race would sometimes try to extort a negative amount of money from you. Oh, and there was the bug in which you'd sometimes fight fleets of zero ships, negative ships, or maxint ships.

      Still, twas a fun game. :)

      --
      How come things that happen to stupid people keep happening to me?
    13. Re:The Easy to Interpret Save Files in X-COM by Andrew+Kismet · · Score: 1

      They fixed that in the later patches and X-Com, that's bug is pretty much exclusive to early versions of UFO. (X-Com is equivalent to UFO v1.04 or something)

    14. Re:The Easy to Interpret Save Files in X-COM by DerekLyons · · Score: 1

      The problem is - that's not a bug-as-feature as specified in TFA. It's a hack. There is a difference.

    15. Re:The Easy to Interpret Save Files in X-COM by Dread_ed · · Score: 1

      Antoher easy to edit save game was Bards Tale. I just popped open the save game files with K-edit and there was the ascii strings for equipment, experience, health, money, levels, everything. Just fing the corresponding trait you want to alter, atl-x and something between 0 and 255 and presto!

      It was usually necessary to level up once and to have at least one inventory item so the file would format correctly. You could also edit the items.dat file. This listed the items that were avaiable in the store. It was usefeul because you could not buy items that you had not first found in the game, and the game kept track of discreet number of items sold to the vendor.

      Of course I have to tell you that cheating ruins the fun of a game, and there were plenty of fun ways to completely dominate the game and powerlevel yourself in entertaining ways without resorting to cheats. However it was a blast to manipulate the files and to figure out the savegame conventions.

      --
      When the only tool you have is a claw hammer every problem starts to look like the back of someone's skull.
    16. Re:The Easy to Interpret Save Files in X-COM by toddestan · · Score: 1

      Another good one in that game was that occasionally, the amount of money you spent on ship maintance would go negative, therefore the more ships you built, the more money you made.

      Another bug in that game is the ability to redirect a fleet ships the turn after you retreated from a battle, when you weren't supposed to be able to.

    17. Re:The Easy to Interpret Save Files in X-COM by Zenaku · · Score: 1

      For some reason I was never able to pull that off without corrupting the save game -- however, I was in Junior High at the time, it probably confounded me with something as simple as being in hex. :)

      --
      If fate makes you a motorcycle, you become a motorcycle.
    18. Re:The Easy to Interpret Save Files in X-COM by Cruise_WD · · Score: 1

      The original version also had no max limits on some of the soldier's stats. My two scouts had their movement wrap around the integer limit back to 0.

      They could no longer move anywhere, but anything that required a % of TU to operate could do so infinitely - give 'em a laser weapon and a psiamp and they could clear an entire map without ever leaving the transport...

      --
      [ cruise / casual-tempest.net / xenogamous.com / transference.org / quantam sufficit ]
  74. Re:ModeX graphics? Buffer overflows? by Anonymous Coward · · Score: 0

    On the software side...how about exploitable buffer overflows on the Xbox ...

    Which has led to the creation of an incredible piece of software: XBMC

  75. BMW MINI CD player as burglar alarm trigger by mccalli · · Score: 5, Interesting

    This was a fun one. I had one of the first MINI Coopers, and ordered it with the CD player ('Wave' option? Seem to remember that name). I forget exactly when I took possession of the car, but I think it was around September or October. Something like that.

    Anyway, at roughly 2:00am every morning the car alarm would go off, much to the 'delight' of myself, my neighbours and everyone in the vicinity. I'd go out, stop the alarm and then try to sleep. After which it would go off again, every hour or so.As if we weren't losing enough sleep with our then new-born daughter.

    The cause was eventually traced, and it's one of the more obscure bugs I've ever come across. Turns out that the car had a low-power rather than completely off mode, and the CD player retained a tiny amount of power going through it. When it was cold, say at 2:00am on an autumn morning for example, the CD player would detect that condensation was forming and would wake up the car's electrics to create some warmth to clear the condensation. This is deliberate, and quite clever I think.

    However, the problem came in that it did this too often and started causing a big drop in battery reserves. The security system interpreted this as an attempt to start the car by hotwiring it, and so the alarm would be set off. I'd come out to switch it off, then go back to bed on the cold autumn night at which point condensation would form again, the CD player would switch itself on again, the security system would sound the alarm again and a bleary-eyed version of me would stagger out to turn the alarm off again. At which point condensation would start to form again and...

    Bah.

    Cheers,
    Ian

    1. Re:BMW MINI CD player as burglar alarm trigger by Anne+Thwacks · · Score: 3, Funny
      Sir, you lie.

      The Mini Cooper dates from about 1968, very considerably before the advent of the CD player, and furthermore had even less security than Windows ME. Even if the doors were locked, you could still open them by pushing hard, because the entire door would bend such the lock mechanism no longer held the door shut! It certainly did not have an alarm.

      Not only that, the electrics were so poor, it was not unknown for condensation to completely flatten the battery overnight.

      --
      Sent from my ASR33 using ASCII
    2. Re:BMW MINI CD player as burglar alarm trigger by mccalli · · Score: 2, Informative

      The Mini Cooper dates from about 1968,
      It does, but the MINI Cooper dates from about 2002 I think. I also owned original Minis and I'm quite careful in the distinction between them - note the capitlisation. As for the condensation on them - yep, and particularly the distributor. I used to use the washing-up glove trick - cut the tips off the fingers, thread the HT leads through and then wrap the distributor in the rest of the glove. Helped a lot, though it wasn't perfect.

      Cheers,
      Ian

    3. Re:BMW MINI CD player as burglar alarm trigger by Anonymous Coward · · Score: 0

      you're a moron

    4. Re:BMW MINI CD player as burglar alarm trigger by Anonymous Coward · · Score: 0

      How exactly is this a "bug as a feature"? It just sounds like a bug.

    5. Re:BMW MINI CD player as burglar alarm trigger by Anonymous Coward · · Score: 0

      I agree with the AC

    6. Re:BMW MINI CD player as burglar alarm trigger by Myopic · · Score: 1

      Car alarms might be the number-one all-time worst BUG masquerading as a feature.

    7. Re:BMW MINI CD player as burglar alarm trigger by Anonymous Coward · · Score: 0

      Not only are you an idiot for not seeing the clear reference to the "BMW MINI" in the title of the post, you call another person a liar based on your limited and flawed knowledge.

    8. Re:BMW MINI CD player as burglar alarm trigger by Dread_ed · · Score: 2, Funny

      I work at a MINI dealership and we had a similar situation.

      One client was continually getting upset because his MINI alarm would go off repeatedly in the middle of the night, seemingly at random intervals. This was perplexing because MINI uses internal motion sensors for their alarms which are not prone to false alarms. Most cars use crappy vibration sensors that will go off at the slightest provocation (thunder, cars too close, birds landing on the roof, etc.) The electrical system, coding, and settings for the alarm were checked and rechecked but nothing was found to be faulty.

      Our service technicians tried unsuccessfully to replicate the phenomena, even going so far as to put the car into their own garage at night to listen for the alarm going off. Alas this was all in vain. No one could get this to replicate and the cuystomer got more and more upset until one day he arrived at our dealership after a semi-sleepless night, threw the keys on the service manager's desk, and said fix it or else.

      Only this time, in his haste and anger, he neglected to take his trusty DISCO BALL with him. Apparently, our fastidious client had been removing the aforementioned accessory from his MINI'S rearview mirror before bringing it in for service. The reasons for this are the subject of much juvenile speculation. Regardless, it turns out that the subtle motions of the disco ball were activating the alarm.

      You don't happen to have a disco ball on your mirror, do you Ian? :)

      --
      When the only tool you have is a claw hammer every problem starts to look like the back of someone's skull.
  76. The Halo2 Swordfly bug was the best. by plasmacutter · · Score: 1

    when i first started playing that game i couldnt stand those evil, sadistically accurate, one shotting across maps jackal snipers.

    while the bug was still pretty easy to activate i used to beat a cheat with a cheat ; )

    "ooh.. so you can one shot me across a level while turning and jumping? well EFFF YOU I CAN FLY MOFO!"

    --
    VLC FOR MAC IS DYING! IF YOU DEVELOP, PLEASE SAVE IT!!
  77. Blue Screen of Death by CF4L · · Score: 1

    I love when I get the BOD memory leak. It's like a game. Can I read the error before the computer reboots itself or not?

    1. Re:Blue Screen of Death by Anonymous Coward · · Score: 0
      to disable auto-restart in case of BSOD, copy into text document and merge or manually edit registry entry

      ;Disable Automatic Restart in the event of a BSOD
      [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contr ol\CrashControl]
      "AutoReboot"=dword:00000000
  78. Template Metaprogramming? by sconeu · · Score: 4, Interesting

    I'd argue that C++ Template Metaprogramming as a fully Turing-complete functional programming language was probably an unintended result of the definition of templates.

    --
    General Relativity: Space-time tells matter where to go; Matter tells space-time what shape to be.
    1. Re:Template Metaprogramming? by eggoeater · · Score: 1

      Wow, that brings back some memories. In college I had a sadistic CS professor (which is redundant..) who would tack on more requirements every week to an ongoing Template and Macro assignment. This was in C, not C++.

      By the end of the semester I actually had this great toolbox of meta-code that could generate stacks, binary trees, and other abstract data types that could all be type-specific. That was a very big deal until the vast libraries of C++ and Java showed up. Previously, I had implemented all my abstract data types with pointers and voids without any type checking in order to reuse them without (major) modifications.


  79. Re:MOD PARENT DOWN by Yoooder · · Score: 3, Funny

    His post was funny, yours sounds more like a troll... and if you love Windows so much why don't you marry it

  80. Bug in ILO MP3 player by Phreakiture · · Score: 2, Interesting

    There are two bugs here that I know of, one which is a problem all the time, and one that can be used to solve that problem.

    The one that is a problem is that if you are listening to a track when you power it off, then remove that track, it will lock up the next time you power up, because it can't find the track you were listening to before.

    The other one is that if the key-lock switch is on when you push power to turn it on, it will start to boot up, and get most of the way there before checking the state of the key-lock switch.

    However, you can use the second bug as a workaround for the first, because, when it discovers that the key lock switch is set, it will turn around and save its state to the flash. The only thing is, it hadn't loaded its state from the flash yet, so it ends up saving back a clean state.

    --
    www.wavefront-av.com
  81. WarCraft II Bloodlust by moore.dustin · · Score: 2, Insightful

    While it made the game, more or less, a one race game, it added a huge element to the end game, which is where War2 multiplayer shined for some time. It brought the need to micromanage to the board, which, while always a factor, was not essential to victory.

    So in essence, it brought heavy macromanagement and micromanagement together.

    1. Re:WarCraft II Bloodlust by Vokbain · · Score: 1

      While I expected Warcraft 2 to be in this discussion somewhere, I didn't expect it to be about blood lust.

      The best bug-as-a-feature ever was of course the Warcraft 2 lumber bug. =)

    2. Re:WarCraft II Bloodlust by Anonymous Coward · · Score: 0

      Starcraft's lights-off stacking created a whole genre of maps. To prevent scouting buildings under the fog of war by trying to build there, they disabled the building collision check. Using triggers to turn off vision to yourself, you can use hotkeys to select workers under the fog to build anything anywhere.

      For some reason, the latest version disables this for zerg buildings, but not terran or protoss.

  82. Re:Yes by Yoooder · · Score: 3, Funny

    It really is more of an amorphous blog of bugs & features. It's a bug, comprised of features that are buggy features and feature bugs. This is one of those things where if you think about it too hard, the Mac / Linux ambulance will have to try to reassmble the fragments of your exploded head.

  83. I don't really think ModeX counts by Sycraft-fu · · Score: 1

    It wasn't a bug, just manual adjustment of the VGA timings and setup. VGA was designed to allow that. It had preset modes for convenience, but it was (as far as I know) deliberately able to be programmed to do other things. Mode X just got named (along with a couple others) because it was so widely used.

  84. Wildcard DNS names by Phreakiture · · Score: 1

    I have a wildcarded domain name (which we will call example.com, because I don't wish to get slashdotted). Anything prefixing that, e.g. glurph.example.com, will get resolved to stimpy.exmample.com's address.

    In turn, my border box has a DNS server on it, which serves all internal addresses. All machines are configured to search example.com as the default domain.

    The practical upshot is that if you enter a non-existent domain, e.g. www.thisdomainofficallydoesnotexist.com, after the DNS lookup fails, it gets tried as www.thisdomainofficallydoesnotexist.com.example.co m, and you get my home page rather than getting shunted off to some sort of error page. Sometimes this is a bad thing, but it is usually not.

    --
    www.wavefront-av.com
  85. walking corpse in Science and Industry by brunascle · · Score: 1

    in Science and Industry, a mod for Half Life, there was a bug where you could type something in the console, then kill yourself, then you could move your corpse around the map as if you were still alive.

    i'm sure it's fixed by now, but god was it fun. i would often use it to permanently block others inside rooms (the physics still acted like you were 6 feet tall, so you could block a doorway).

    1. Re:walking corpse in Science and Industry by internewt · · Score: 2, Interesting

      F29 Retaliator on the Amiga.... A flight sim of sorts, where if you ejected from the plane then you could still control the plane. So fly north, eject, and you could then see the plane being flown in the background as the camera watched your dude parachute to the ground. Of course, the fun thing to do was to turn the plane around and try to fly it into yourself!

      --
      Car analogies break down.
  86. ATM Withdrawl Bug by ztynzo · · Score: 1

    I like Automated Teller Machines that let me withdraw amounts less than zero.

    1. Re:ATM Withdrawl Bug by clgoh · · Score: 1

      It's called a deposit.

  87. Re:Personally, I like... Actually... by Anonymous Coward · · Score: 5, Funny

    Guess he didn't get the memo...

  88. Re:Yes by pilgrim23 · · Score: 5, Insightful

    though Windows does this with flying (Blue) colors, I would nominate DRM. it screwed music and spurred development of P2P

    --
    - Minutus cantorum, minutus balorum, minutus carborata descendum pantorum.
  89. CSS (and now AACS) by Jherek+Carnelian · · Score: 1

    Best bug ever? Errors in the CSS encryption algorithm which enable me to play my DVDs anywhere DeCSS has been ported.

    Second best? The various holes in AACS, which let me play BLU-RAY and HD-DVD on one cheap player (my PC).

  90. Elevator bug by Col.+Klink+(retired) · · Score: 5, Funny

    My college dorm elevator had bug/feature. If you briefly pulled and then reset the "emergency stop" button as the elevator was stopping at a floor it would skip that floor. I lived on the third floor and we routinely skipped folks on the second floor waiting for the elevator. This was a great time saving feature (except, of course, when the fourth floor residents would skip the third floor).

    The only misfeature of this bug was that the bell would briefly ring alerting those waiting that they had been skipped. One time, some second floor residents heard us skip their floor and we heard them running down after us. We skipped the lobby and went back to the fourth floor. We could have kept it going all night if they tried chasing us, but they didn't. Anyone too lazy to walk to the lobby from the second floor sure isn't going to race up to the fourth floor.

    Eventually, they upgraded the elevator and we had to stop for the second floor whenever they wanted.

    --

    -- Don't Tase me, bro!

    1. Re:Elevator bug by endianx · · Score: 1

      That's an awesome story :)

      +1 Brave for messing around with an elevator that was obviously buggy ;-)

    2. Re:Elevator bug by Anonymous Coward · · Score: 0

      Mary Donlon at Cornell?

    3. Re:Elevator bug by Col.+Klink+(retired) · · Score: 1

      UOregon 1987.

      --

      -- Don't Tase me, bro!

    4. Re:Elevator bug by jibberson · · Score: 1

      If you grabbed the outer door in my dorm elevator right when it was about to close, the inner door would close and you could open the outer door the whole way. When this happened, the elevator wouldn't move, so we ended up trapping people in it whenever we were bored.

    5. Re:Elevator bug by smellsofbikes · · Score: 1

      We found something sort of similar: if you didn't let the inner doors close completely -- jammed them with a 2x4 or the like -- both sets of doors would close and the elevator would start to move. Then two strong people yank the partly-open doors open further, and the elevator stops, between floors, and stays there. The elevator shaft had some beautiful graffiti. We spent a lot of time trying to see if we could get very tiny people, like, say, my then-girlfriend (145 cm high, weighed about 40 kilos) to carefully let a jammed elevator rise a bit by playing with the door jam, then creep out a 20cm slot at the bottom through the outside set of doors, leaving the elevator well and truly jammed. We couldn't get the outer doors to open easily, though, and then there was a flood that submerged the student center where the elevator lived, and the renovation involved a newer elevator that didn't work that way.

      --
      Nostalgia's not what it used to be.
    6. Re:Elevator bug by skintigh2 · · Score: 1

      I had one dorm elevator that if you pressed two buttons at once it would cancel all floor selections. When we tried this in another elevator it would split the difference. So pressing 2 and 4 resulted in a trip to the 3rd floor, pressing 3 and 4 resulted in a trip to halfway between those floors. And yes, the door would open.

    7. Re:Elevator bug by Anonymous Coward · · Score: 0

      The University of Washingtion Terry dorm, circa 1985 had this feature too. Another good way to meet your neighbors is to jam the elevator doors open at night so you have a ready elevator for your 9:30am class.

    8. Re:Elevator bug by viking80 · · Score: 1

      Elevators also have a safety mechanism. If the wires that hold it up breaks, sensed by measuring the tension in them going to zero, large spring loaded bolts will fire, and embed themselves in the concrete elevator shaft.

      If you and your friends jump up and down, the elasticity of the cables will cause the whole car to bounce, and without warning the cable tension sensors will trigger the bolts to engage.

      This will allow you to stop the elevator between floors and on "illegal floors". Just make sure you can get out, because it will take many hours before the elevator is operational.

      --
      don't cut it off www.mgmbill.org
    9. Re:Elevator bug by Anonymous Coward · · Score: 0

      Many elevators have this failsafe, but rarely does it permanently stop the elevator. Usually the brakes will release as soon as you stop jumping.

      Another fun one is the safety which stops the elevator if the exterior doors are open. Sometimes the sensor can be triggered just by pushing the doors open a little bit. This will make the elevator stop, and really annoy whoever's in it.

  91. buggy coke machines by freg · · Score: 1

    Coke machines that unload their entire change drawer when you hit the change button. How can you beat that? Maybe when an ATM malfunctions :)

  92. our door hinge by sojourning · · Score: 1

    The hinge on our office door-closer, that's intended to close the door, is tweaked so that it rubs against he top of the door jam--it's a perfect door stop.

  93. Damnit. by mmell · · Score: 1
    That's about what the boot-loader says when I fat-finger it. ;^)

    *removes head from fourth point-of-contact*

  94. Tamagotchi! by Anonymous Coward · · Score: 0

    Setting the tamagotchi clock to 23.59 then 00.01 to condense days worth of evolution into minutes, then feeding it snacks in a bizzare childhood experiment to see what it mutated into

  95. Synthetic Programming on the HP-41C Calculator by Curly · · Score: 1
    There was a bug in the HP-41C calculators that gave access to more instructions than intended, and allowed all sorts of interesting things to be done.

    For me and my friends in high-school dying to program something, anything, there was a whole world in there.

  96. Joust! by SkunkWorx · · Score: 1

    I can't believe no-one has mentioned the belly-flop "bug" in Joust yet. That's my favorite bug-as-feature!

  97. Open Office Find&Replace to reformat Cells by Rashkae · · Score: 3, Interesting

    If you do a regex search and replace in Open office and replace all contents of cells with themselves (search for .*, replace with &, or something like that) the contents of the cells will be reformated to whatever default you set for the columns. You can use it to change a column of numbers into a text field (to sort alphanumerically) or vice versa,, (if you have a spreadsheet that imported numbers as text and and you want to change them back into numbers)

    This trick is even included in the help documentation.

  98. grocery store self checkout by Anonymous Coward · · Score: 0

    the self checkout machines at my local grocery had a NICE bug.

    1. scan candy bar.
    2. choose finish and pay.
    3. choose credit, control shifts to the credit card reader thing
    4. wait... (about 30 secs)
    5. back to choose payment screen.
    6. select cash.
    7. insert $100 bill
    8. proper change dispenses
    9. PROFIT!!1 = change dispenses AGAIN! (and a 2nd receipt!)

    i found it once while selecting credit and finding that the stores network was down, so while trying to decide what to do, or fetch a human, it fell back to 'select payment' and my new spare-cash fund was born!

  99. 2D graph by ObiWanStevobi · · Score: 1

    Well, the only bug I've had with remotely positive effects was a 2D graph control. Two properties I gave it were Vertical padding and horizantal padding (area of blank space around the plot for captions, etc.). The control plotted dissipation & static pressure vs. air flow. Of course, you have to scale the values into pixels on the screen, and the control was re-sizable. If your padding was high and your control size was small, the scale factor could end up negative and the whole thing would end up mirrored (both vertically and horizontally. Well, if you dragged the control around just right, it would appear it was rotating around on a 3D axis. Figuring I'd chew up some CPU time and give the engineers a bit of a show, I then had the curves rotate into place when they were initially displayed. Not much of a useful feature, but I guess its the only bug that wasn't really negative.

  100. Re:Yes by Yoooder · · Score: 1

    err, amorphous *blob* not blog :-)

  101. Blaster Master by serial_crusher · · Score: 1

    The old NES game Blaster Master had a great bug that made the game a lot easier. If you shot an enemy, and paused right as your bullet was hitting him, it would continuously drain his health until the game was unpaused. Instant kill.

    Be careful though, because the same thing happens to you if you're the one being hit.

  102. Security bugs by suitti · · Score: 1

    Security bugs are more appropriately names insecurity bugs.

    Lots of security bugs are really insecurity features.

    I had a Unix system where i had a normal user login, but did not have
    the root login. It was noticed that a mail client, usual for Unix,
    was setuid to root - which was unusual. So, it was fired up, and
    then, the shell escape command was issued. Presto. Root shell.
    Very handy.

    The Daily WTF has this kinda stuff:
    http://forums.worsethanfailure.com/forums/

    Any sufficiently advanced bug is indistinguishable from a feature.
    -- Rich Kulawiec

    --
    -- Stephen.
  103. Outlook Favorites.... by TemporalBeing · · Score: 2, Interesting

    I have to use Outlook at work, and in previous editions (OL97,OL98, OL2000) you did not have this "favorites" box at the top of the Folder List. However, with OL2003 you do, and Microsoft provides no way to turn it off, except through a bug in Outlook. By turning off a lot of the crap, and then switching to calendar and back using the buttons at the bottom of the Folder List, you can get the Favorites to disappear. With the number of folders I maintain in Outlook it makes this bug one killer feature to get rid of a very annoying part of Outlook 2003. Now if I could only figure out the same bug-feature for keeping Outlook 2003 from enabling the Reading Pane and Preview windows for newly created folders (or when upgrading).


    P.S. BTW - before you all start complaining about Outlook, if you do configure Outlook properly it is just as secure as anything else. In all the years I've used Outlook (since December 1997), I have only had 2 virii run in it - and I did those myself purposely. The trick - turn off any kind of Autopreview functionality (e.g. Reading Pane, Preview, Autopreview, etc.), and set Outlook to use the Restricted Internet Zone - those two will prevent most things from being functional or running automatically.

    --
    Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
    1. Re:Outlook Favorites.... by Vr6dub · · Score: 1

      You know you can just right click on the folder in question and choose "remove from favorite folders"?

    2. Re:Outlook Favorites.... by evilviper · · Score: 1

      turn off any kind of Autopreview functionality (e.g. Reading Pane, Preview, Autopreview, etc.), and set Outlook to use the Restricted Internet Zone

      Yeah, if you just disable all functionality, Outlook is as secure as other e-mail programs, except those stay secure while actually USING them.
      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
    3. Re:Outlook Favorites.... by TemporalBeing · · Score: 1

      You know you can just right click on the folder in question and choose "remove from favorite folders"?


      I wasn't trying to remove a folder from "Favorites" but remove the "Favorites" pane from view. Microsoft does not provide a way to do that, except through this "Bug" that I found. Two different things.
      --
      Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
  104. Favorite bugs by ksd1337 · · Score: 1

    My favorite bugs as features are the old Netscape multiple- feature and the Doom silent-jump bug.

    The Netscape multiple-<body> technique let Web page designers insert more than one body element, and color them each a shade lighter, so it would appear to cascade. It was removed from the next version.

    The Doom silent-jump bug allowed Doom deathmatch players to silently fire the BFG-9000 at someone. Due to a limitation in the game engine, if you jumped off of a ledge at the exact time you fired the BFG-9000, only the sound of the jump would be heard.

  105. Rocket Jumping by twitchingbug · · Score: 1

    It totally made Quake 1. I was wondering if anyone was going to bring that up as a bug...

  106. aMSN by Placebo+Messiah · · Score: 4, Funny

    aMSN has a cool bug that pops a window open on your end as soon as someone clicks on your name on their end

    it's fun to pre-empt conversations with girls:

    me: hey how's it goin?

    her: OMG I was just thinking about you

    me: ya right

    her: I'm serious!

    me: *gush* (L)

    1. Re:aMSN by cparker15 · · Score: 1

      Gaim 2.0 has a plug-in that does this on purpose. When someone starts typing to you out of the blue, a window pops up and says, “You feel a disturbance in the force.”

      I once had an acquaintance of mine believing that I'd read her thoughts and that we were psychically “in tune” with each other.

      --
      Have you driven a fnord... lately?

      You must wait a little bit before using this resource; please try again later.

    2. Re:aMSN by dan+dan+the+dna+man · · Score: 1

      ++

      has served me well many times that one :)

      --
      I don't read your sig, why do you read mine?
    3. Re:aMSN by Anonymous Coward · · Score: 0

      Since when do /. readers talk to girls? Did I miss the memo?

    4. Re:aMSN by g4pengts · · Score: 1

      That sounds interesting. Which plug-in is that?

      --
      Strange women lying in ponds distributing swords is no basis for a system of government.
    5. Re:aMSN by Tawnos · · Score: 1

      Psychic Mode.
      They have to have notify that you are typing turned on for it to function, afaik.

    6. Re:aMSN by hritcu · · Score: 2, Informative

      It is called "Psychic Mode" and it does not seem to be documented. Anyway, it comes with the default distribution of Gaim, you just need to turn it on.

      --
      If you don't fail at least 90 percent of the time, you're not aiming high enough. (Alan Kay)
    7. Re:aMSN by caramelcarrot · · Score: 1

      I'm sure old versions of msn used to have a toaster pop up when someone was writing a message to you for a conversation that hadn't started. Was definitely fun.

    8. Re:aMSN by ico2 · · Score: 0

      this is an intentional feature, many msn clients (inc amsn, gaim) have it, can be turned on or off mostly.
      Yeah, it is entertaining

    9. Re:aMSN by scapor · · Score: 2, Informative

      As an aMSN developper I can say this ain't a bug but sure is a feature. It gave us some headaches as since MSN Messenger 7.0, the official client also opens a SwitchBoard session to you if you come online to request your avatar picture if it's not updated on their side. As before, this was our sign a user started a conversation, we had a lot of windows popping up from 7.0 users. This is fixed now though. Now we open the chatwindow when the "user is typing ..." notification comes :).

  107. Mario Bros. by themelv · · Score: 1

    The one where you touch Bowser and the axe at the same time, and then on the next world, you go small when you get a mushroom.

    1. Re:Mario Bros. by JustinKSU · · Score: 1

      Jumping on a turtle shell over and over and over again against a stair step. My favorite part of it was after you got more than 99 lives your life total turned into ASCII characters. You had to watch it though, if you got too many lives the game would crash. Otherwise, it allowed my younger self to rescue Princess Toadstool :)

  108. Game and Slashdot by Var1abl3 · · Score: 1

    I play OGame http://ogame.org/ when it first started you could ship more resourses than you had. When you put them on the ship you could specify how much to send (and they had a button for max resources) but if you put in more than you had it would deliver to your other planet the amount you told it to send and it did not show you with negative (-) amounts from the first planet. This was great, until it was fixed. For just plain bugs tho it has to be Slashdot. Using Firebug you will see and error on EVERY slashdot page "urchinTracker is not defined urchinTracker(); comments.pl (line 467)" the page shown is this but every page does it..... so my question is what would urchinTracker do if it was defined and if you are not going to define it why not remove it????

    1. Re:Game and Slashdot by imbaczek · · Score: 1

      this game is probably the most pointless game ever made. even WoW has more respect for your free time.

    2. Re:Game and Slashdot by fbartho · · Score: 1

      you must be an urchin, because I don't get an urchin tracker.

      --
      Gravity Sucks
    3. Re:Game and Slashdot by sarbrot · · Score: 1

      the slashdot bug exists because you have adblocked google site statistic and/or advertising scripts.

  109. Re:Personally, I like... Actually... by mstahl · · Score: 2, Funny

    *whooooooosh!!!!*

  110. Windows by DoktorSeven · · Score: 1

    All the bugs in Windows are certainly featured in my decision to stay far, far away from it.

    --
    This is a sig. Deal with it.
  111. Full access to my music on the iPOD. by Dr.+Zowie · · Score: 1

    Apple recently tried to prevent people from using ipods to transfer music. It is now impossible (using iTunes and the Mac GUI) to pull your music back off your ipod once it is there. But the Mac is built on BSD, and the mp3 files are accessible using the UNIX CLI -- they've just moved them to "/Volumes//Ipod_control/./*.mp3".

  112. Speaking of Metroid... by Bachus9000 · · Score: 2, Interesting

    Super Metroid has all kinds of fun bugs that enhance replayability. I'll list just a couple:

    Mockball: If you start running, then do a spinning jump/somersault, and morph into ball form just as you're landing, you can roll around at running speeds. The main benefit of this little maneuver is to get super missiles early, allowing you to skip the Spore Spawn miniboss.

    Damage avoidance: If you shoot an enemy just as it is about to hit you it won't damage you...until the flashing animation stops, at any rate.

    Murderbeam: Normally the game doesn't allow you to equip all beams at once (IIRC Plasma and Spazer conflict with each other). However, if you time some button presses in the status menu correctly you can glitch the game into enabling all the beams. Normally, the game will freeze immediately when you try firing this beam, but there are at least two or three places you can use it to your advantage.

    1) If used at the right time during the battle with Motherbrain, you can make the battle go much more quickly (and create some interesting graphical glitches, too!).
    2a) If you open a door and then fire the murderbeam into the door and then manage to jump through the door before the game crashes on you, chances are you'll find yourself in a completely different room than you intended. More importantly, all game events seem to be reset including items. Using this trick, you can collect over 100% of the items in game.
    2b) I haven't seen/done this myself, but I hear if you use the murderbeam reset glitch in the right spot, you can flat out skip Ridley and Motherbrain by somehow triggering the final escape sequence early. Apparently this one only works on emulators, but I need to research it more. For the record, 2a tends to be more successful on the console although I hear there is one location that works in ZSNES.

    Anyone who enjoyed Super Metroid back in the day should check out some of the Metroid fansites. There are several more tricks and glitches that allow you to complete the game in just about any order you like. It all comes together to pretty much seal the game's position as my all-time favorite. But no one cares what I think. :)

  113. Slashdot text parsing bugs... by Dr.+Zowie · · Score: 1

    Looks like the slashdot parser mangled my path -- it should be: "/Volumes/[your-ipod-name]/Ipod_control/.[mumble]/ *.mp3"

    1. Re:Slashdot text parsing bugs... by PitaBred · · Score: 1

      And in the meantime, I plug my girlfriend's iPod into my Linux boxes, and AmaroK will let me do anything I want to the collection on it, including playing it on the computer from the iPod, without having to copy the music over.

  114. My favorite bug by SilentStrike · · Score: 4, Interesting

    I was writing code in lisp to remove duplicates from an unordered list.

    How do you do it? Well, here is one reasonable way.

    Sort the items in the list.
    Duplicate items will be adjacent, so scan through the list and add items when they aren't equal to the last item.

    Since it was lisp, I naturally started writing a recursive quicksort.

    My code looked something like.

    quicksort (list)
        if list has size less than 2, return list
        Pick pivot from list
        L = filter items in list < pivot
        G = filter items in list > pivot
        return quicksort(L) + pivot + quicksort(R)

    However, my quicksort had a bug in it.

    Look closely.

    It didn't append copies of pivot to the returned sorted list. Thus, it removed them. Since every item eventually ends up as the pivot, all duplicates are removed. It's the only bug that has ever ended up saving me time.

    1. Re:My favorite bug by reverius · · Score: 1

      If you don't have tight space requirements, you could do it in O(n) by storing elements in a hash table and appending them to a new list.

      for each element {
          if (! inHashTable (element) ) {
              addToHashTable (element)
              addToNewList (element)
          }
      }

      If I remember correctly, the hash table operations are O(1) each, and the list appending is O(1), making the overall algorithm O(n) ... but it'd certainly use more space than yours.

    2. Re:My favorite bug by snowgirl · · Score: 1

      Wow... hehe :) That's perhaps the best bug I've read about amoung all of these.

      Basically, it's an unintentional solving of the very problem you were just expecting to solve part of the way.

      --
      WARNING! This girl exceeds the MAXIMUM SAFE standards established by the FDA for BRATTINESS
    3. Re:My favorite bug by hritcu · · Score: 1

      Yes, even LISP has hash tables ;)

      --
      If you don't fail at least 90 percent of the time, you're not aiming high enough. (Alan Kay)
    4. Re:My favorite bug by SilentStrike · · Score: 1

      I agree, your solution is faster and easier to code if you have a hash table builtin.

    5. Re:My favorite bug by mgedmin · · Score: 1

      Hash table operations are probabilisticly O(1), degrading to O(N) in the worst case (many hash collisions).

      Unmodified quick sort has expected complexity O(N log N), but worst case O(N**2), so if you pick your data carefully, you can get either solution to be O(N**2).

  115. Diablo 2 Extension - Assassins Poison Fangs by Qil'elPhil · · Score: 1

    Before they nerfed it, the assassin in D2X had damage multipliers and bonuses that also applied to the poison damage - which worked over time.
    so you had weapons that did like 30 normal damage + 4/sec for 10 sec - that would kill a monster in 5 hits or so.
    if you got a +100% multiplier and +20 damage bonus you were at 90 + 28/sec for 10 sec - you just tried to touch every opponent and then hid until they died. It even got worse exponentially when adding more damage multipliers.
    This was at a stage in the game, when normal chars would only do like 20-30 dmg per hit.

    --
    This sig is made from 100% recycled bytes. No keys were typed in the creation process.
  116. Pac-Man by Quila · · Score: 1

    In the 70s I played a Pac-Man game written by some mainframe programmers and run on the one video display they had. If things got hairy there was a bug that allowed you to park next to the monster exit and wait for them to come to you from one direction but stall just before they got to you. With all of them gathered it was easy to grab a pill and off them all.

  117. Counter Strike by jmazzi · · Score: 1

    Bunny hoping!

    1. Re:Counter Strike by Bat+Country · · Score: 1

      Don't just hope for bunnies - make them happen.

      --
      The land shall stone them with the bread of his son.
  118. Phone Hackery by FranTaylor · · Score: 1

    My old roommate at MIT used to make free phone calls to Israel by tricking the old Dormline phone system. I don't remember how he did it. Ah, good old Dormline. "I'm sorry, the number you have dialed is imaginary. Please rotate your telephone 90 degrees and try again."

  119. Thy Fly by Anonymous Coward · · Score: 0

    "The Fly" was the greatest bug as a feature (film).

  120. Re:Yes by Anonymous Coward · · Score: 0

    don't use windows I take it

  121. warts by mkcmkc · · Score: 1

    Some of these are warts, to be sure. Nothing near as bad as Perl's though. Try, for example, to describe--or even find out--what /$foo[123]/ will match. Good luck.

    --
    "Not an actor, but he plays one on TV."
    1. Re:warts by Anonymous Coward · · Score: 0

      it matches the string $foo followed by any of 1,2, or 3. Same as it would in python regular expression, except you can't use the variable as conveniently. or same as it would in shell script. It does vaguely look like an an array index to be sure but that happens in strings too and is why perl also provides an unambiguous form using curlybraces when those syntactic collisions occur.

    2. Re:warts by flink · · Score: 1

      My guess:

      Since variable interpolation happens before regular expression matching, it would match the contents of element 123 in array @foo.

      This is pretty easy to test:

      $ echo -e "a\nb\nc" | perl -e '@a = ( "b", "c" ); while ( <> ) { if( /$a[0]/ ) { print $_; } }'
      b
      $

    3. Re:warts by mkcmkc · · Score: 1
      You might think, but it's not. Try something like this:

      $ echo -e "a\nb\nc\n0\n1" | perl -e '@a = ( "b", "c" ); while ( <> ) { if(/$a[123]/ ) { print $_; } }'

      (Note the '0' and '1' input lines. I can't try this right now, so my syntax might be off.)

      Or instead of the '123', try '0x0' or '00' or '0_0' (which all are literals equivalent to '0' as far as I know).

      I have no idea of the complete semantics of this, but it's complex, strange, and undocumented (AFAIK).

      --
      "Not an actor, but he plays one on TV."
  122. In other words ... by Linnen · · Score: 1

    a wart.

  123. Lesson here is: by geekoid · · Score: 4, Insightful

    Don't start modifing code until you understrand how the users use the product.

    It is only refactoring if the users sees no change, with the sole exception of performance gains.

    --
    The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
  124. Diablo I by phoenix.bam! · · Score: 1

    Bug in the Diablo I engine allowed the duping of items by simply picking them in a well timed manner. You could convert potions into items.

    Long time ago, but I think it wasn't fixable at all because of the system design.

  125. Easy data-entry by jachim69 · · Score: 2, Interesting

    Back in '94 or '95, I was working the night shift in the QC dept of a small local machine shop. We had a manually-operated, computer-controlled measuring machine. (Aside: The software ran on OS/2, which I loved.) When "writing" an inspection program, the machine would ask you to measure a part feature, then input the ideal location, ideal size and tolerance data. The program would pop-up a dialog box with the measured data and spaces for the ideal data. There was a button to bring up a second window to enter this ideal data. Version 1 of the program allowed us to enter the data directly in the 1st dialog box, so I never understood the need for a second box to do the same thing. After about 6 months, version 2 came out. The first time I tried my normal routine of entering in the main dialog, I found that the text boxes were disabled. I called the company to report this bug, and they told me the bug was in Version 1 - it should never have allowed me to input ideal dimensions into the main window. I asked nicely if they would consider putting it back, as I now had to move my hands to the mouse and click around a few times instead of just tabbing and typing. Happily, version 2.1 included the "bug" again. This has to be the only time I ever asked for a bug to be included.

  126. Visual C++ thrashing... by mkcmkc · · Score: 1

    I once had a job doing Windows development using Visual C++. Every time I had to compile, the machine would start thrashing away, and I had time to go to lunch, take an "in-cube sabbatical", etc. Now, there's a feature you won't read about in any manual...

    --
    "Not an actor, but he plays one on TV."
    1. Re:Visual C++ thrashing... by PitaBred · · Score: 1

      That's the best reason for developers to start using a dual-core machine ;)

  127. Intestinal flora by tverbeek · · Score: 4, Insightful

    The bacteria in my digestive tract are bugs I would definitely miss.

    --
    http://alternatives.rzero.com/
  128. Re:ModeX graphics? Buffer overflows? by jmauro · · Score: 1

    My favorite undocumented opcode: HCF

    Halt and Catch Fire

  129. VW turn the fans on while the car isn't on bug by Vr6dub · · Score: 3, Interesting
    I have a 97 gti...try this...I may not have it quite right though.

    With the key in or out of the ignition (don't turn it to ACC or ON) hit the AC button and turn your fans to full. Then pull your highbeams. Your fans will suddenly turn on. Found it on a forum years ago...was pretty funny the first time I tried it.

  130. undeletable folders by AxemRed · · Score: 1

    Remember the days when everyone ran Windows 9X and you could make an "undeletable" folder? I always used to make a folder called "Îgayporn" on my buddy's desktop (which would show up as "_gayporn") and he wasn't able to delete it. It was a feature in my book!

    1. Re:undeletable folders by brunascle · · Score: 1

      i remember one of those. i was on win 3.1 and i unzipped a .zip file created (presumably) by someone on win 95. it had a file called read me.txt. notice the space.

      well, apparently win 3.1 couldnt handle a file with a space, and i couldnt delete or move it.

    2. Re:undeletable folders by Sancho · · Score: 1

      In DOS, you could create filenames with any ASCII character in them by holding ALT and typing the ASCII code on the numeric keypad. In this way, you could create "blank" directories/files that few people knew how to access.

    3. Re:undeletable folders by Enderandrew · · Score: 1

      You could go into DOS and delete it or move it.

      I routinely created folders back in the days of DOS and early versions of Windows with ASCII characters. Windows didn't know what to do with them.

      My favorite was a folder whose name was simply a space.

      " "

      Alt+255

      It wouldn't even show up in Windows.

      --
      http://blindscribblings.com - Tasty pop-culture in conceptual fashion.
    4. Re:undeletable folders by Anonymous Coward · · Score: 0

      Heheh... I remember that kind of thing. It would drive people nuts. There was also an ol' program that would render text. I think it was a DOS command called "TEXT", to be specific. In addition to ASCII text, it would also interpret ASCII control codes that were popular at the time. (For things like colored text, etc.) So, it was easy to write a batch somewhere on somebody's computer that featured one of those invisible characters. Have setup to pause and then run a TEXT {filename}, where the file was 20+ pages of ^G (ctrl-G, a.k.a. bell tone). That file was also hidden with the forementioned trick. For more fun, ASCII-art was also interspersed at random intervals. (I think the BiFf mushroom cloud was popular then. Oh noes!) Then it's a matter of running the ol' .bat file when they're not looking, and leaving the room. Let the fun commence. :D

  131. minus world by Anonymous Coward · · Score: 1, Interesting

    minus world

  132. My experence with users by Slipgrid · · Score: 1

    Lots of bugs in my line of work are caused by input not being validated by the person who wrote the original code. The user will enter bunk data because of no validation, then call in a month or two later to complain when the program crashes. I try to tell my manager, for fucks-sake, lets validate the flipping user input. They don't want to hear it saying that the clients will lose "features." I tell the that the data doesn't make any sense. The problem comes with indexes defined as unique, and programs not forcing the user input to be unique. Instead of validating the input to make sure it's unique, they want to add a time stamp to the fn index. WTF!

    Better now:)

  133. Bug in a system I hacked by Anonymous Coward · · Score: 1, Funny

    This one time, I was hacking into this system, and I decided to play a game I found called "Global Thermonuclear War". Needless to say, I think next time, I'll just try a nice game of chess.

  134. iLarn Bank Account by cgreuter · · Score: 1

    My favourite bug-thats-a-feature is the bank account in iLarn. If you win, the money in your bank account becomes the default value when you start a new game.

    This means:

    1. I can avoid the tedium of getting enough money to buy a Lance of Death at the start of the game.
    2. I can amuse myself in-game by seeing how much money I can accumulate as I play.

    You could argue that this makes the game too easy, and you may be right, but I find it makes it more fun.

  135. Vaccine by eMbry00s · · Score: 1

    Hands down.

  136. Ti-85 Assembly Programming by Ranzear · · Score: 1

    The basic programming language of the Texas Instruments Ti-85 Graphing Calculator was rather limited and had to compile at every edit of the program, and generally didn't produce more than text icons fighting other text icons. It was noted that the 'custom menu' which was a bottom-bar on the screen with unmapped buttons below it, pointed to places in memory rather than just copying the item to/from the buffer. Using a memory backup to inject a shell program into this menu (Such as ZShell), this was exploited to execute assembly code programs on the calculator to produce grayscale graphics and fast processing for many applications. This assembly code access was incorporated into later model calculators, but the dynamic buttons of the Ti-85 make it a long prized item for many of us geeks that know what came of it. http://en.wikipedia.org/wiki/TI-85

    --
    Slashdot: Where opinions are just opinions until you have mod points.
  137. Back in the modem days.... by Groo+Wanderer · · Score: 4, Funny

    N00B: How do I get feature X to work in this chat room?
    Clued in 1: Try +++ATH
    N00B: Than......(N00B has left the chat)

                -Charlie

    1. Re:Back in the modem days.... by dcam · · Score: 1

      The CounterStrike version is:

      N00B: How do I get feature X to work in this chat room?
      Clued in 1: Try F10
      N00B: Than......(N00B has left: user quit)

      --
      meh
    2. Re:Back in the modem days.... by Mr2001 · · Score: 1

      Better yet: /ctcp #lamers PING +++ATH

      --
      Visual IRC: Fast. Powerful. Free.
    3. Re:Back in the modem days.... by Anonymous Coward · · Score: 0

      Back when geekcodes were popular (I won't say cool), a friend of my complained that his modem would disconnect whenever he tried to read an e-mail from me. Sure enough, a "+++ " in my geekcode was being interpreted as his modem disconnect code. I was sadly forced to remove my geekcode from my e-mail signature.

  138. Email subscriptions by sm8000 · · Score: 2, Funny

    "Click here to be removed from our mailing list" Can't figure out why I still get emails from you...

  139. fun with DOOM, BF1942/DC, UT99 by CodeMunch · · Score: 1
    Sorry, this is a game centric "feature" list and not for anything useful.

    DOOM I/][

    • Wall running
    • Killer BFG eyes
    • Silent BFG

    BF1942 with DesertCombat mod (v.2? or v.3?)

    • Invisible Mortar (my favorite) One of the v.2? or v.3? versions had a great bug where you could toss a mortar into many static/useless objects (eg. cargo containers), 'enter' (use) the mortar, and be invisible to everyone. You could sit in there and shoot to your hearts content. You could kill these weeners by dropping a grenade or explosives within range.
    • Al Kafji docks had a boat you could drive hummers up on to & then "fall through the cracks" with it into the middle of the boat & be hidden yet see & shoot at your enemies. You could usually fix these weeners with ex. packs.
    • Superman bug that lets you fly if you jump into water while mashing some keys. You could gain access to rooftops for sniping or quicly fly to the far side of the map to capture a base.

    Unreal Tournament with the RB Car mod

    • After the game is done and you're staring at he score screen, you can get out of the RB car and continue playing and even capture the flag while everyone is frozen. I've seen it happen several times and twice to change the winning team.
  140. A bug/feature of the Civ game by uop · · Score: 1

    Infinite City Sprawl.
    The devs had to make sure it won't work in later versions of the game...
    http://en.wikibooks.org/wiki/Civ:The_Basics#Infini te_City_Sprawl

  141. Older Bugs by Kozar_The_Malignant · · Score: 1

    Indeed, Young Grasshopper mentions pulling on "the high beam flasher" when everyone knows that real Bugs had a proper floor mounted button to change high-low beams.

    --
    Some mornings it's hardly worth chewing through the restraints to get out of bed.
  142. NASA "Mighty Mouse" Code Saves the Space Station by Coppit · · Score: 1

    A NASA engineer told me about how some debugging code was inadvertently left in after production. Later they had in-flight problems that they couldn't fix. Finally an engineer remembered the "mighty mouse" code that would cause a reboot, and they invoked it remotely and everything was fixed.

    I guess I'm a little disturbed that they had to reboot the space station... LINK.

  143. Myspace customizations by tjernobyl · · Score: 1

    Myspace's HTML filtration is very poorly done. I'd argue that the ability to customize a profile by CSS injection is a bug that turned into a feature.

  144. Blagger High Score bug by mihalis · · Score: 1

    I had a game for my Acorn Electron called Blagger. It was a 2d platform game. This was back in the 80s.

    You wandered around rooms negotiating obstacles and (I think) stealing things. You had to go as fast as possible to complete the level before the time ran out. Time available was a thin vertical line to the right of the display which started off the full height of the graphical area and shrunk vertically downwards as you used time. When you completed the level the remaining time bar would shrink much faster giving you bonus points proportional to the remaining length, so the quicker you did it the more points you got.

    Just one time, however, I did a level where I think I completed it simultaneously with running out of time, as the time bar decremented ... from zero downwards. I scored a large number of points.

    Never could do it again.

  145. The 'crack' in DAOC by Gogogoch · · Score: 2, Interesting

    Don't know if its still there, but the Coruscating Mines in DAOC (Dark Age of Camelot) used to have an invisible 'crack' in the geometry model at one particular point. You had to run the gauntlet to get to this lowest level of the mines, and getting back up after a long session always seemed like a huge hassle. So the solution was the 'crack'; there was generally a line up of people jumping and hopping, trying to drop through the crack of the DAOC world.

    The DAOC system would recognise when someone left the propoer geometry, would think it an error situation, and had a recovery mode which would return people to their last bind site. In other words, it was a nice quick exit from the mines (without having to die).

    It was a bug exploit that everyone seemed to think was perfectly OK, perhaps because no one was a loser and everyone gained.

    1. Re:The 'crack' in DAOC by Bat+Country · · Score: 1

      This also worked nicely in the PVP dungeon Darkness Falls. If the damned Yankees (insert your favorite enemy here) were controlling all sensible exits, a low level character who was in for the loot could just bail through a crack in the wall. There were a few such cracks, and they always made it a little easier to get the duck out of fodge.

      --
      The land shall stone them with the bread of his son.
  146. Ah, Units by EgoWumpus · · Score: 5, Insightful

    As a programmer, and a former student in at least one other math-related discipline, it's clear to me that 4 and 4.0 are equal. But they are not equivalent. Knowing 'Accuracy', 'Precision' and 'Proper Use Of Units' like the back of your hand will help you in any career.

    --

    [Ego]out

    1. Re:Ah, Units by polytopia · · Score: 1

      This is nonsensical, since equality *is* an equivalence relation.

    2. Re:Ah, Units by Anonymous Coward · · Score: 0

      So why does java have the == operator and the .equals() method that apparently do different things?

    3. Re:Ah, Units by EgoWumpus · · Score: 1

      Equality is *an* equivalence relation, not *all* equivalence relations. To wit: There are an equal number of oranges in this basket as there are apples in that basket. The basket of oranges is not equivalent to the basket of apples. The color value of this small orange is equal to the color value of that large orange. These oranges are not equivalent.

      --

      [Ego]out

  147. Well.... by aliensporebomb · · Score: 1

    Maybe not "bug" but "unexpected software interaction".

    I was playing my electric guitar into Garageband using my external
    preamp and effects and just listening to it.

    I installed an app called "Jack" which is an internal audio routing
    app and started it up while doing the GB listening session and it
    added a weird, intense ring modulation effect to every audio signal
    going thru the computer...

    My guitar sounded like the rings of Saturn falling apart, it was
    incredibly weird.....just great!

  148. Re:Personally, I like... Actually... by Quince+alPillan · · Score: 1

    It means it wants you to load letter sized paper into the printer. In the same manner, "PC LOAD A4" means to load A4 sized paper. http://en.wikipedia.org/wiki/PC_Load_Letter

  149. The Apple ][ Moo by DynaSoar · · Score: 1

    The Apple ][ software maker Beagle Brothers was well known for finding features that were either bug results, easter eggs, or just plain strange behavior. My favorite was their discovery of the ROM routine addressing command "call 985". When invoked from Applesoft* BASIC, a distinct "MOOOO" would come from the internal speaker. This was almost certainly a bug, as its behavior depended on other, uninvestigated and unknown events in the machine's memory. Sometimes it would do it only once, sometimes it could be invoked in a row, and sometimes it would not work at all. If it worked and then quit, it would not do it again unless the machine was rebooted.

    Beagle Bros. cranked out such a volume of utilities/goofy-stuff software for the Apple ][ that something very much like the following appeared in the letters to the editor in one edition of the Apple users' magazine Softalk:

    "I think the monthly 'Top 10 Utilities' list should be renamed 'The Top 10 Beagle Bros.' list."
    Mark Pelczarski
    Penguin Software

    "I agree."
    Bert Kersey
    Beagle Bros. Software

    It remains a mystery as to whether these letters were done by pre-arrangement between Pelczarski and Kersey (a distinct possibility, considering the closeness of the Apple community at the time) or a prank printing by the editors of Softalk (also a distinct possibility, considering the irreverent nature of the Apple community).

    * The argument as to whether it was a bug-as-feature or an easter egg is exacerbated by the fact that the Applesoft ROMs were not written by Wozniak: they are stamped "Copyright 1981, Microsoft". The "routine" at address 985 (almost certainly a point internal to some other routine that started earlier) was not within the Applesoft ROMs, but it only worked when invoked through Applesoft.

    --
    "I may be synthetic, but I'm not stupid." -- Bishop 341-B
  150. BFG in the original DOOM! by Anonymous Coward · · Score: 0

    The BFG was never supposed to kill everything in the room it was shot, but damn the thing was a cool mistake.

  151. Auto execution of registered file types... by HalfOfOne · · Score: 1

    So when I was first starting out sometime in '93, I was a wet-behind-the-ears PC Technician for a medical claims processing division of a hospital. We had Groupwise for messaging, and at the time I thought it was really cute to setup auto-execution of registered file types, so that it would open attachments and stuff on the fly for me. Viruses? Malware? Bah, we were flying fast and loose in those days.

    So I work late one Friday night getting a bunch of PCs updated to the latest Novell client, and I had turned up the volume on my PC and speakers so I could listen to music while I worked. Saturday, I went over to a buddy's place and he had a bunch of sound files from different comedy movies. A bunch of them were really cool, so I told them to send them to me for mail alert sounds and whatnot. (see where this is going yet?)

    I get into work late on Monday morning, and the claims processor ladies are all sitting around me, quietly typing away. I boot up my PC, bleary eyed, and then open mail. I'm scrolling through, and at ear splitting volume I get

    WHERE ALL THE WHITE WOMEN AT?

    from Blazing Saddles. I flushed crimson and jabbed the power on my speakers way too late.

    The claims processing department was mostly fiftysomething African-American women, who all burst out laughing and didn't stop for the next 5 years I worked there. Sometimes I'd walk down the aisle and they'd just start cracking up, and then it'd get contaigous and flow through the whole department. Lucky for me they all knew me really well, knew I wasn't a bigot/rascist pig, knew the movie reasonably well, and had a good sense of humor about it. My buddy is fond of telling the story whenever anyone brings up the preview-window feature of Outlook, or any other automatic mail processing features. Me, I don't use any of them anymore.

  152. Software developer here by hotsauce · · Score: 5, Funny

    As a software developer, I am amused by you all. "4" is quite obviously a string, and can not be compared with 4.0 without a set of business rules.

    Multiplying it in silly ways will not help you either. :)

    1. Re:Software developer here by jimbojw · · Score: 5, Funny
      In case you were wondering, "4" * 4.0 yields:
      • "4444" in Ruby
      • 16 in PHP and JavaScript
      • Exception:The operator * is undefined for the argument type(s) String, double in Java
      ... And "4" + 4.0 yields
      • TypeError: can't convert Float into String in Ruby
      • 8 in PHP
      • 44 in JavaScript
      • "44.0" in Java
      Which I just find amusing all around.
    2. Re:Software developer here by raddan · · Score: 2, Informative

      Huh?

      #include "stdio.h"

      int main () {
      char str = '4';
      printf ("%i\n", (int) str);
      return 0;
      }


      '4' is obviously 52. No problems comparing it to (int) 4.0 here!

      [ed: stupid /. -- can't put in angle brackets!]

    3. Re:Software developer here by Anonymous Coward · · Score: 0

      I guess that makes Perl hacking not software development...

    4. Re:Software developer here by aridhol · · Score: 1
      #include

      Works for me. (&lt; and &gt; are the keys)

      --
      I can't say that I don't give a fuck. I've just run out of fuck to give.
    5. Re:Software developer here by skintigh2 · · Score: 1

      As an engineer who is occasionally forced to program in C, I'm less than amused that C will let me multiply 4 with 4.0 without complaint and then give me a result along the lines of 4235697896236984981. Call me crazy, but I'd rather spend 3 seconds on a compile error about mixing ints and floats than 3 hours tracking down a run-time error.

    6. Re:Software developer here by cjjjer · · Score: 5, Funny

      As a project manager I am amused by how much time has been spend talking about this. Clearly developers need more work and shorter deadlines.

    7. Re:Software developer here by SL+Baur · · Score: 1

      4 and 4.0 are not equal or eq, but they are = (in lisp).

    8. Re:Software developer here by ConceptJunkie · · Score: 3, Funny
      Which is why C++ is the best language because you can overload operators, so, "4" * 4.0 can yield whatever you think makes sense:
      • 16
      • "16"
      • "4444"
      • 208
      • or, if you prefer, a nice game of Nethack
      --
      You are in a maze of twisty little passages, all alike.
    9. Re:Software developer here by Mateo_LeFou · · Score: 1

      As a philosopher, I'm amused by the concept of "business rules". Business involves a very complex system and numerous independently-acting free agents. No one has come up with a set of lawlike generalizations that have predictive value for such systems.

      --
      My turnips listen for the soft cry of your love
    10. Re:Software developer here by Anonymous Coward · · Score: 0

      Looks like Ruby is the sanest, followed by Javascript then, considering what would be least surprise according to context, and also safest from mistakes.

      Context in this case, is mostly that argument 1 is a string.

    11. Re:Software developer here by Anonymous Coward · · Score: 0
      Haskell produces the correct results:

      Prelude> "4" * 4.0
       
      <interactive>:1:6:
          No instance for (Fractional [Char])
            arising from the literal `4.0' at <interactive>:1:6-8
          Probable fix: add an instance declaration for (Fractional [Char])
          In the second argument of `(*)', namely `4.0'
          In the definition of `it': it = "4" * 4.0
       
      Prelude> "4" + 4.0
       
      <interactive>:1:6:
          No instance for (Fractional [Char])
            arising from the literal `4.0' at <interactive>:1:6-8
          Probable fix: add an instance declaration for (Fractional [Char])
          In the second argument of `(+)', namely `4.0'
          In the definition of `it': it = "4" + 4.0
      A language doing anything else with those expressions is just asking for trouble, as you showed.
    12. Re:Software developer here by MrNaz · · Score: 1

      You engineers carry on like your esoteric rules about significant figures and tolerances are actually important. A little rounding error never killed anyone. Oh wait a minute, yes it it.

      --
      I hate printers.
    13. Re:Software developer here by MrNaz · · Score: 1

      As a layer I am elated by the prospect that 4.0 (billable hours) * "4" (number of 1000 bills we get per hour) can actually yield 4444. Who says Ruby is not a good language for business systems?

      --
      I hate printers.
    14. Re:Software developer here by Anonymous Coward · · Score: 0

      As a developer, I'm not surprised to see a Project Manager here on the day the project goes live. WHen a project goes Live, the project managers get going....

    15. Re:Software developer here by jonbryce · · Score: 1

      ="4"*4.0 yields 16 in Excel 2003, Excel 2007, OpenOffice.org Calc 2.1, KSpread 1.5.2 and Gnumeric 1.4.3

      It yields 0 in Quattro Pro X3 and Lotus 123 9.8

    16. Re:Software developer here by dctoastman · · Score: 1

      Don't blame C. Blame your processor for shitty floating point math.

    17. Re:Software developer here by Evangelion · · Score: 1
      Perl:

      perl -e 'print "4" * 4.0' gives 16
      perl -e 'print "4" + 4.0' gives 8
      Erlang:

      4> "4" * 4.0.
       
      =ERROR REPORT==== 31-Mar-2007::13:04:48 ===
      Error in process <0.30.0> with exit value: {badarith,[{erl_eval,eval_op,3},{shell,exprs,6},{s hell,eval_loop,3}]}
       
      ** exited: {badarith,[{erl_eval,eval_op,3},
                            {shell,exprs,6},
                            {shell,eval_loop,3}]} **
      5> "4" + 4.0.
       
      =ERROR REPORT==== 31-Mar-2007::13:04:53 ===
      Error in process <0.43.0> with exit value: {badarith,[{erl_eval,eval_op,3},{shell,exprs,6},{s hell,eval_loop,3}]}
       
      ** exited: {badarith,[{erl_eval,eval_op,3},
                            {shell,exprs,6},
                            {shell,eval_loop,3}]} **
      (Mz)Scheme

      > (* "4" 4.0)
      *: expects type <number> as 1st argument, given: "4"; other arguments were: 4.0
       
        === context ===
      repl-loop
       
      > (+ "4" 4.0)
      +: expects type <number> as 1st argument, given: "4"; other arguments were: 4.0
       
        === context ===
      repl-loop
      C (gcc)

      #include <stdio.h>
       
      int main(int argc, char** argv) {
       
        printf("* = %i\n+ = %i\n", "4" * 4.0, "4" + 4.0);
        printf("* = %f\n+ = %f\n", "4" * 4.0, "4" + 4.0);
       
      }
       
      Gives:
      $ gcc test.c
      test.c: In function 'main':
      test.c:5: error: invalid operands to binary *
      test.c:5: error: invalid operands to binary +
      test.c:6: error: invalid operands to binary *
      test.c:6: error: invalid operands to binary +
      Io:

      Io 20070321
      Io> "4" + 4.0
       
      ==> 8
      Io> "4" * 4.0
       
      ==> ?
      Bash:

      imac-g5:~ evangelion$ expr "4" + 4.0
      expr: non-numeric argument
      imac-g5:~ evangelion$ expr "4" \* 4.0
      expr: non-numeric argument
      And now here's where I have to (apparently) talk about the development methodology of the above, as my characters per line (CPL) is apparently insufficient to warrant contribution to this particular line of topical discussion (i.e. "thread" -- in the Usenet sense, not in the concurrency sense -- although I suppose since there are many discussions happening concurrently, it could be considered analogous). I do find it nice that, while slashcode tells me my CPL (characters per line) for a current post, it doesn't actually tell me the threshold past which I am permitted to contribute to a "thread" (i.e. unit of discussion, distinct from unit of computation, as per above).
    18. Re:Software developer here by Anonymous Coward · · Score: 0

      As a politician, I am amused by you all.

      I can describe 4 as anything you want it to be.

    19. Re:Software developer here by WryCoder · · Score: 1

      in Python:
      >>> "4" * 4
      '4444'
      >>> "4" * 4.0
      Traceback (most recent call last):
          File "", line 1, in ?
      TypeError: can't multiply sequence by non-int
      >>> "4" + 4.0
      Traceback (most recent call last):
          File "", line 1, in ?
      TypeError: cannot concatenate 'str' and 'float' objects

      The first one is useful, e.g. "*" * 32 creates a line of 32 stars

    20. Re:Software developer here by Anonymous Coward · · Score: 0

      Which is why C++ is the best language because you can overload operators, so, "4" * 4.0 can yield whatever you think makes sense:

      No you can't, char * and double are both built in types.
    21. Re:Software developer here by Evangelion · · Score: 1

      How is that useful, intuitive, or good...?

      23 * "fnord" -- works
      "fnord" * 23 -- works
      23 * 23 -- works
      "fnord" * "fnord" -- doesn't work
      Is that supposed to make sense or something?

      Here's the (much saner) situation in Perl...

      23 * "fnord" -- 0 (atoi on "fnord" will give you 0, as there aren't numbers in it)
      "fnord" * 23 -- 0 (")
      23 * 23 -- 529
      "fnord" * "fnord" -- 0
       
      23 x "fnord" -- empty string (see above, regarding atoi)
      "fnord" x 23 -- "fnordfnordfnord...."
      23 x 23 -- "2323232323..."
      "fnord" x "fnord" -- empty string
    22. Re:Software developer here by Old+Wolf · · Score: 1

      Which is why C++ is the best language because you can overload operators, so, "4" * 4.0 can yield whatever you think makes sense:
              * 16
              * "16"
              * "4444"
              * 208
              * or, if you prefer, a nice game of Nethack

      Nice joke, but you can't re-define built-in operations. In other words, for an overloaded operator, one of the operands must be a class type which was defined by you. 1 + 1 is always 2.

      BTW, what stupid language has 4 * 4 = 4444 ? I'm never learning Ruby now, who knows what might happen.

    23. Re:Software developer here by ioshhdflwuegfh · · Score: 1

      4 and 4.0 are not equal or eq, but they are = (in lisp). and are not eql, but are equalp.
    24. Re:Software developer here by ConceptJunkie · · Score: 1

      Well, I don't know Ruby either, but I think it's a reasonable result for something as "weird" as multiplying a string.

      --
      You are in a maze of twisty little passages, all alike.
    25. Re:Software developer here by raddan · · Score: 1

      Danke. If I learned that once, it was most certainly lost in the folds of my brain.

    26. Re:Software developer here by DragonWriter · · Score: 1

      BTW, what stupid language has 4 * 4 = 4444 ? I'm never learning Ruby now, who knows what might happen.


      In Ruby, and presuming you haven't mucked with the core classes at all:
      4 * 4 => 16
      "4" * 4 => "4444"

      I don't know of any language where 4 * 4 => 4444.

      Strings are not the same things as numbers.

  153. Reverse debit by brianben · · Score: 1

    The university I attended started a debit card program in 1992, so that parents could give money to their kids to spend on food and books at the student union. It seemed to work normally for almost everyone, but a friend's card added the debited amount to his balance every time he used it at the bookstore, rather than subtracting it.

    Unfortunately, the error was discovered after only a few weeks, and he was too cautious to buy stuff for all his friends...

  154. Re:Personally, I like... Actually... by ArsonSmith · · Score: 1

    I don't think my PC can load paper into my printer?!? WTF

    --
    Paying taxes to buy civilization is like paying a hooker to buy love.
  155. Modem Hangup by geggam · · Score: 1

    Some modems used to listen to commands in ICMP packets. During debates on webbbs if the other guy was winning a 'ping -p 2B 2B 41 54 48 30 HIS_IP ' +++ATH0 would at least give one the satisfaction of reading his posts about a suckass ISP disconnecting him. After 5 or 10 of these he would forget the argument and be ranting about crappy ISP's.

  156. Warcraft by CoolVC · · Score: 1

    The lumber bug!

  157. Hardware bugs are the best... by Anonymous Coward · · Score: 0

    Two of my favorites:

    (1) The Z80 is basically an 8080 with some extra 16 bit registers. If you look at the way the opcodes
            are laid out you'll see that a pair of one byte prefix instructions are used to implement this - you
            specify the right prefix in front of an instruction that modifies HL and it operations on IX or IY
            instead. But there are also instructions that operate on the 8 bit parts of HL (H and L). And sure
            enough, you can use the prefix to get a bunch of additional 8 bit registers. There are also several
            other tricks that show up in similar ways, but you get the idea...

    (2) The KA model of the PDP-10 had a bug in the AOB (add one to both) instruction, which adds one to
            each 18 bit half of a given 36 bit register. There isn't supposed to be carry between the halves
            when this is done, but there is. So a value of -1 in the lower half will, after an AOB, end up
            adding 2 to the upper half.

            Why is this interesting? Because a lot of system calls in TOPS-10 indicate success or failure by
            skipping one instruction when they return. And this is implemented by (you guessed it) using an
            AOB instruction on the program counter, which has the nice property that it does the skip and
            clears the exec mode flag (low bit in the upper halfword) at the same time. So what you do is
            allocate enough memory that you can put a system call at address 777777 that succeeds. When it
            it returns you get control back at location 0, but in exec mode. The trick then is to do
            whatever nasty you want with code in the accumulators and then turn off exec mode. Or you can
            simply crash the entire machine, but that's not considered sporting.

  158. VB 6.-0 Re-Select A Widget--whole IDE crashes by curmudgeon99 · · Score: 0

    In VB 6.0, if you were selecting multiple widgets and then you made the mistake of again selecting one you had already selected, the whole IDE crashed and burned. Everything lost. This little feature screwed with me enough that I abandoned all MS development and learned Java. Never had to care about MSDN again.

  159. .net div by 0 by Anonymous Coward · · Score: 0

    Ironically today I was in the middle of developing some error handling code, and to test it I immediately threw in a messagebox to display 1/0... when i run the code, I got a message box saying "Infinity"... after some laughing I went back and changed it to 0/0, which it replied "NaN" (not a number)

    I just wanted to force an error! :)

  160. Not my favorite, but definitely one with impact: by Anonymous Coward · · Score: 1, Informative

    The bug in the 80286 that made it _not_ wrap around addresses at 1MB in real mode enabled all kinds of hacks that allowed 8088 code to access over 1MB in real mode.

  161. Automotive Bug by wramsdel · · Score: 5, Informative

    I always enjoyed cars with "child-safe rear windows" which don't roll all the way down. In many cases, this is because the rear wheel well cuts into the door, reducing the space available for the window.

  162. Super Mario bros. by Socguy · · Score: 3, Funny

    My favorite bug-as-a-feature occurred in the original Mario bros. game for the NES. I suppose it wasn't so much a feature as simply a bug in the game Since it was only availible at one point in the game. Somewhere, I thing in the third world, as you were climbing the end pyramid you could jump on a descending koopa and, provided you did it just right, Mario would keep bouncing off the koopa shell as it would ricochet back and forth off the step. Soon, you would begin receiving credit for your continued bouncing in the form of extra lives. After a time your number of lives would climb so high that the game began representing them as various other graphical elements from the game; bricks, pipes etc. Unfortunately, if you left it too long (20 mins. +) the game would simply kill Mario. I suspect that the console simply ran out of memory to hold your fantastic number of lives and this was a safeguard to prevent the console from locking up.

    The only time I've ever been able to exploit this was on the original NES. Even the Super Mario all-stars SNES version will not reproduce this.

    As a much younger individual, this nearly unlimited lives 'feature' was the only way I could beat Bowser and it led to some interesting conversations with my school friends at the time.

    Me: So I beat Bowser last night!

    Friend: Cool! How many lives were you down to?

    Me: Uhhh, pipe?

    Friend: Riiiiiiiiiiiiiiiight.

    1. Re:Super Mario bros. by nschubach · · Score: 1

      Along this path...

      Was it considered a bug to get into the warp pipe room at the end of 1-2 by duck jumping into the pipe at the end?

      --
      Every time I start to have faith in humanity, I ruin it by driving to work between 7 and 8 am.
  163. Gunz Online!!! by Anonymous Coward · · Score: 0

    This game is base on the programming Bug!
    jump dash slash dash fire!!!

    www.gunzonline.com

  164. X-Wing DeathStar Bug by EgoWumpus · · Score: 1

    In X-Wing, the last level required you to assault the Death Star. The horde of badguys was nearly impossible to get by in time, but if you instead jumped to hyperspace, as though you were leaving the mission, and then cut out the hyperspace engines a split second after they engaged, you'd jump right past the huge wave of badguys and get to the Death Star to start your trench run before poor Yavin IV bought it.

    --

    [Ego]out

  165. Re:Perl versus Python correction by Red+Flayer · · Score: 1

    For that matter, 1200 could represent 1249.9999 or 1150, so 4 * 1200 = 4800 +/- 625.
    Acceptable result range is 4025 to 5625, so result should be expressed as 4825 +/- 800.

    Sorry.
    --
    "Trolls they were, but filled with the evil will of their master: a fell race..." -- J.R.R. Tolkien on Olog-hai
  166. Sounds Familiar by PPH · · Score: 1
    Back in the dark ages, when I worked in the aerospace biz, I (well, me and 5 other people) built a configuration control system with a 'home brewed' API. In addition to the official web interface, users who knew what they were doing had access to underlying services (all securely read only, of course).


    Management (i.e. the PHBs) had mandated a 'one way' solution without realizing that each engineering group did things a little bit differently and needed their own view of the data. They finally took over and started re-designing the system to remove these 'bugs'. Half a billion dollars later, they aren't finished yet. Meanwhile, each engineering group has gone back to tracking their system configuration data using spreadsheets, hidden from management, since they don't comply with the 'one way' mandate.

    --
    Have gnu, will travel.
  167. Physics? Games? Takes me back... by hAckz0r · · Score: 1
    Way back, around 82 I believe. Microsoft Flight Simulator V 1.0 in fact. Yes, Microsoft was one of the great pioneers of computer bugs back in those days. Still is I reckon. I had just trashed my home-brew birds nest of a computer I built in my dorm room and traded up for IBM's new 1.44Mhz 8088 speed deamon of a system with a whopping base of 64k memory and simultaniously bought a "color" monitor and the one and only computer game sold there at the business store just to try it out.


    As a WWI flying ace I would cross the river into enemy territory and drop my one bomb on the enemies air strip while all their planes were scrambling after my old Sopwith Camel biplane. A few minutes after that I was dodging bullets and loosing fuel like a sponge made out of swiss cheese. When all hope seemed lost I had my trusty old 'physics trick' that would always bring me home to fight another day. By shutting off the throttle to idle and flipping the plane over I could "fall upwards" under the force of gravity (to most planes gravity is down, but my plane was special). In fact I would fall upwards even after the engine died from lack of oxygen. Since back in 1918 the turbo had not even been invented yet so I was soon above the enemy's normal flight ceiling and I could just flip back over and glide back home across the river and land at my own base. Good thing I could hold my breath that long, for lack of oxygen! Yes, Sonny, after landing back home I'd just dust myself off spend the night at a local saloon and go back for more the next day! That red Barron never could figure out how to shoot me down and they never figured out how to follow after me either. Yep, those were the good old days!

    1. Re:Physics? Games? Takes me back... by netsharc · · Score: 1

      Ah, reminds me of Gunship 2000. If your helicopter ends up disabled in enemy territory, you can always enable the "maintain altitude at 100 ft" flying help, turn on your engines, and the chopper will hover to 100ft. Push the joystick forwards and you'll start falling to the ground again, but you'll land a few hundred meters in front of where you were before. Rinse and repeat, and make like a frog back to the base.

      Good ol' times...

      --
      What time is it/will be over there? Check with my iPhone app!
  168. Elite II: Frontier by Ecuador · · Score: 1

    I can't believe noone mentioned the Elite II: Frontier hyperjump bug! Ok, the game had many bugs and it was easy to get one of those infinite cash deals, but the best bug was definatelly the Hyperjump. So, you could only hyperjump to something like 20 Light Years (don't remember exactly, it's been years), but the distances were kept with a 16 bit variable apparently, so at multiples of 655.36 ly your jump was considered 0 ly length (so you could select something another 20 ly or so from that distance). The effect was that you could in the end go ANYWHERE in the galaxy with just two jumps if you were good at triangulation.

    Then, I have to mention "Hangly Man". This cheapo Pacman knockoff would be just another arcade clone if it didn't have a bug that made it hard as hell. I don't remember exactly, but somewhere probably at the second round a bug would make the walls dissapear! No, you could not go through them, it was a display bug. So, the corridors that had dots were navigatable, for the rest you were in hard luck if you were chased by a ghost and not have photographic memory. Anyway, for years I thought that this thing was on purpose, until I also realized "Hangly Man" was really a Japanese attempt at "Hungry Man".

    --
    Violence is the last refuge of the incompetent. Polar Scope Align for iOS
  169. void * 'bug' by b0101101001010000 · · Score: 1

    My favorite bug is the ability to circumvent the type system in C.

  170. Morrowind by Emperor+Zombie · · Score: 1

    The invisibility effect would break whenever you performed certain actions, e.g. picking up an item. The important thing here is that it broke after the action completed, so you could cast invisibility, steal something, lose invisibility, and NPCs wouldn't react because you were invisible while the theft took place. My character had 0 stealth skill and yet I was able to clean out highly guarded vaults using this trick.

    Also, it wasn't exactly a bug but you could layer clothing like crazy and enchant it all. I loaded so much health regen onto my wardrobe at one point that my vampire character could walk around in broad daylight and outheal the damage.

    --
    I'm so excited I just made water in my pantaloons!
    1. Re:Morrowind by SharpFang · · Score: 1

      Blah.
      No upper limit on mostly anything potion-related, including efficiency/time multiplier resulting from fortify intelligence boost resulting from drinking the potion...
      so: make potion, drink, make (stronger), drink, make (stronger) and in matter of minutes you had int at 68371 out of 100 max, and making other potions that lasted days instead of seconds and gave thousands of points boost.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
  171. Vanish - Doom by soilheart · · Score: 1

    If you don't get the title you'll never get this post.

    I just loooved the Vanish - Doom "bug" in FF VI (after all, was it a bug? Vanish made physical hits never hit and magic always hit and Doom was supposed to be able to kill almost everyone as long as it hit. I just think it sounds fair and clever.)

    (But I'm against the Vanish - X-Zone bug ;) )

    1. Re:Vanish - Doom by Sigma+7 · · Score: 1

      I just loooved the Vanish - Doom "bug" in FF VI (after all, was it a bug? Vanish made physical hits never hit and magic always hit and Doom was supposed to be able to kill almost everyone as long as it hit. I just think it sounds fair and clever.)


      It's a game mechanic abuse, not a bug. Also, some enemies are immune to the vanish trick, requiring you to take the long path of inflicting damage.

      However, there is a bug with Vanish - it overrides some checks that prevent non-sensical targetting. You can get more information in the List of FFVI bugs.
    2. Re:Vanish - Doom by soilheart · · Score: 1

      Well. As it later was fixed so I guess it wasn't intended behavior, and doesn't that mean that it's a bug?

      I know that some bosses couldn't be defeated by vanish-doom, but that was what the vanish-berserk was for ;) (which is not a bug, just a good use of the game mechanics).

      Oh, nice little buglist you've got there... interesting

  172. Alkabeth on the Apple ][ by Anonymous Coward · · Score: 0

    It used a psuedorandom RNG that reset every time you entered a dungeon. Once you found a chest on the first floor with an amulet that would turn you into a lizard man (lower all your stats except increase your HP, you could boost your HP into the millions by exiting/re-entering the dungeon until extreme boredom set in.

    And in Ultima, you could format a character disk, then start a game w/out running the character generation program, & start life as a level 0 lizard man & access some otherwise unavailable content (if you could avoid starving long enough to get to a town).

  173. re: init=/bin/sh by tchuladdiass · · Score: 1

    Only works if you have a ps/2 keyboard. If your system only has a usb keyboard, then the usb drivers won't get loaded, and no keyboard input (but you still have a nice shell prompt to look at).

  174. Re:Perl versus Python correction by zcsteele · · Score: 1

    The original answer of 5000 is pretty close to the middle of that range, so that means that in some sense the OP was actually correct!

    --
    ...brand new, all over again.
  175. The cdrtools ability to open by device name by Chemisor · · Score: 1

    cdrecord always complains about how opening by device name (as opposed to a SCSI LUN) is a bug and unsupported, however, thanks to this little oversight, I and other people with IDE CD writers (=everyone) can use it.

    1. Re:The cdrtools ability to open by device name by daverabbitz · · Score: 1

      You do realise you can access IDE ATAPI CD writers as ATA:whatever , and scan for them with "cdrecord dev=ATA: -scanbus".

      The fact that you can use incorrect syntax to access the exact same device doesn't seem to buy anything.

      --
      What could be better than a jet powered motorcycle? http://www.youtube.com/watch?v=u8l6GTHLSWE
  176. Super-hi-res monochrome graphics on the Apple II by argent · · Score: 1

    The way color graphics on the Apple II worked, some of the bits in video memory shifted the subsequent pixels by half a pixel width, which changed the colors when you were using a color TV or NTSC monitor.

    On a monochrome TV or monitor you got to see the pixels shift.

    I used this hack to create super-hi-res characters that were more rounded and fully formed than normal hi-res, by carefully taking advantage of the offsets. Some of the characters looked a little odd if you inspected them closely because it was hard to use it without making verticle lines zig-zag, but I was able to hide most of the offsets in serifs. The people seeing it were generally too freaked out about how I was getting super-hi-res to inspect things that closely, unless they'd already figured it out first...

  177. SQL Injection by Rasgueado · · Score: 1

    Many years ago, I was tasked to add some more robust search features to our company's helpdesk software. Being a novice developer, I ended up leaving the search fields wide open to SQL injection exploits. Thankfully, to my knowledge it was never abused, and once you got the hang of it, it became a pretty powerful reporting tool. Those were my young and foolish days though, I now realize that the potential for disaster was dangerously high :)

  178. File Guard - Mac OS by Anonymous Coward · · Score: 0

    In the mid 90s, I worked in our computer lab in college which was primarily populated with Macs. FileGuard was used to protect data used by professors and the actual IT employees. I figured out that they had configured security on a folder-by-folder basis so you couldn't navigate into a folder where you didn't have access. However, the security admins hadn't implemented file-level security or prevented you from seeing the contents of a protected folder in a search window.

    So, I discovered that the search window allowed you to view, open, and edit files identified by this exploit. It probably wasn't an actual bug, but the tool sure didn't help ensure you had appropriately protected your data. A few searches for *.* helped me figure out where I should focus my nefarious searches and chaos ensued from there.

    Tasty stuff.

  179. SMTP/telnet by hAckz0r · · Score: 1

    It seems every so often I need somebody at the White House dot gov to send a reminder email to my boss expaining to him what a wonderful job we are all doing. As a pointy haired boss/security researcher one day he might just catch on, but until then it is just a lot of fun to watch your boss being in such a good mood. Good thing that the Clues-Are-Us stores in our area have not had a good sale recently. Catburt would be proud!

  180. Triple Faulting the 80286 processor by Linker3000 · · Score: 4, Interesting

    Hows about triple faulting the 80286 processor to drop out of protected mode?

    --
    AT&ROFLMAO
  181. Does this count? by Anonymous Coward · · Score: 0

    Canceling a crouching forward into a dragon punch or fireball. :)

  182. Re:4 Vs. 4.0 by TaoPhoenix · · Score: 1

    Of course they're not equal.

    Someone forgot to Format Cells/Decimals=1.

    Then you discover the other cell is holding 4.4 rounded to 4.

    --
    My first Journal Entry ever, in 8 years! http://slashdot.org/journal/365947/aphelion-scifi-fantasy-horror-poetry-webzine
  183. Re:ModeX graphics? Buffer overflows? by macs4all · · Score: 1

    In fact, there were even "DRM" (before we knew that acronym!) schemes that depended on some of the "illegal" operations in the 6502. Actually, I believe the original NMOS Synertek SY6502 had some of these, because IIRC, the Apple II never used a Rockwell R65C02A (maybe in the Apple IIc), and it was in the context of Apple II games that I first heard of the undocumented opcode hacks. In fact, IIRC, the games that used those wouldn't load once people replaced their SY6502 CPUs with the Rockwell R65C02, because they "fixed" the "opcode leak" "error".

    Oh, and the 6510 was the Commodore (who bought Synertek's foundry) variant of the 6502, that went into the Commodore 64. I do believe that Rockwell had a chip called the R6510; but it wasn't the same thing.

  184. Acid2 test by Fry-kun · · Score: 1

    Acid2 has my vote for favorite bug-as-a-feature.
    For those who don't know, Acid2 is a browser-testing CSS page with many intentional bugs in the code. The result of a fully-compliant browser rendering is a smiley face. Wiki entry with examples.

    --
    Did you know that "FTW" ("for the win") is a direct translation of "Sieg Heil"?
  185. Re: Alt-F4 by andrewd18 · · Score: 1
    Occasionally during Alliance Battles (Guild Wars), my guildmates and I will yell:

    ZOMG!!! AMAZING BUG! HITTING ALT-F4 GIVES YOU A FREE GREEN ITEM!

    Seeing the "So-and-So has left the game." message is so fulfilling.
  186. Quake I Reboot by Chagatai · · Score: 1
    I recall playing someone in QW back in the late 90s who rebooted my system remotely. As I was winning in this deathmatch with 12 poeple or so, he said something akin to, "See you later," as he shot at me, and my box rebooted spontaneously. Thinking it was a power glitch or I stepped on my surge protector, I waited for it to boot, went back online, and he said he would reboot it again. Sure enough, ZAP! Box crashed once more.

    Now if anyone remembers how this could have happened, that would be a bug I would love hearing explained.

    --
    --Chag
    1. Re:Quake I Reboot by Howlett · · Score: 1

      Sounds like an "OOB" attack using winnuke or a "Ping of Death"

      I used to use these all the time when playing Diablo with friends, if someone we did not know joined the game, i would use a sniffer to get their IP and prepare to crash their PC if they turned on us. Or we would tell them that there was a secret "Level up" if they dropped all their cash and items on the ground and stood between two cows. once they dropped their stuff we would punt them and steal it :)

  187. Ford Taurus bug that's a theft deterent by hirandy · · Score: 1
    I started programming in 1961 and have had a tech life full of "if it's documented, it's not a bug -- it's a feature" experiences in developing computer systems. However, the bug-as-a-feature I like most is automotive...

    Like most cars, my Taurus needs to be in Park or Neutral to start; in fact, it can't normally be removed from Park without the key in the "on" position after being started. Then at one point it wouldn't shift out of Park even when the engine was running. Most people have experienced something like this -- usually you have to jiggle the steering wheel a little to release the steering lock and then shift. No luck doing this. After a lot of trial and error, the only way to start the car and actually drive it was to turn the ignition from lock, past off, to on, then off (not lock), shift into neutral and then start it normally.

    Usually a problem like this is something to check out right away -- something's probably loose and it's only going to get looser and then fail completely at the most inopportune moment. However, I put it off. The car was used by several people (who then knew how to start it) and the keys were hung in a very public space. Twice in the month before I got around to taking the steering wheel apart, teenage car thieves tried to steal it during evening hours when there weren't many people around. They weren't successful because they couldn't get it into Drive before somebody noticed what was happening.

    When I finally checked out the problem I found nothing loose or otherwise obvious problem in the mechanical or electrical systems and it's operated fine for the last six months -- including one more theft attempt -- as long as you follow the correct sequence. Kind of a freebie anti-theft feature.

  188. MySpace profile customization by Anonymous Coward · · Score: 0

    I read in the news that the creators of MySpace were very upset when they found people were customizing their profiles with HTML.. They thought the custom profiles looked hideous.. but the users loved it, so they haven't blocked it.

  189. X-Wing Wingmen by Bacon+Bits · · Score: 1

    In the original X-Wing, you could assign other pilots to be your wingmen. It didn't help much -- they flew faster and were more aggressive -- but it was nice. The better pilots were very good at certain roles, particularly capital ship bombing and dogfighting. The higher ranked pilots would also listen to your commands better. It was especially nice when the expansion pack came with Top Ace pilots (the highest rank) which were very difficult to get. You pretty much had to beat the game to get a Top Ace rank.

    The problem was, if the pilots died the file got wiped (they had a 75% chance of being rescued if you won, 0% if you lost). Until I discovered that the pilot file was just data about how good they were and the name of the file was the pilot name. I wrote a batch script to copy pilots when I ran out. I had a Red squadron, a Gold squadron, and a Blue squadron.

    --
    The road to tyranny has always been paved with claims of necessity.
  190. Re:ModeX graphics? Buffer overflows? by snowgirl · · Score: 1

    The Z80 processor (related to the 8088 that was released by Intel) has a number of flags that are technically undefined, but still operate very effectively, and pretty much across the board of implementations of the Z80.

    What happens is that there are actually 3 bits of the flag that are just simply mapped from the result into the flag register. These are the sign bit, the 6th bit, and the 4th bit (starting from C=1st bit)

    As I recall there's a version of Ghosts and Goblins that required this emulation support to be there, or it would work wrong.

    There were quite a few other "undocumented" opcodes, that none the less made it into the Gameboy's processor and the Z80 processors in common use (like in the TI-8x series) and ended up being very commonly used.

    --
    WARNING! This girl exceeds the MAXIMUM SAFE standards established by the FDA for BRATTINESS
  191. Street Fighter by Anonymous Coward · · Score: 0

    Crouching Fierce Punch canceled into Fireball.

  192. Temco Super NBA's amazing Jon Sunvold! by Anonymous Coward · · Score: 0

    My favourite bug as a feature, is in Temco Super NBA basketball for SNES, the most amazing player for his 3-pt shooting ability is Jon Sunvold!

    He had a 99 3pt FG% and a 60% long range shooting bar... he could single handedly beat teams 140 to whatever...

    From the wikipedia (http://en.wikipedia.org/wiki/Tecmo_Super_NBA_Bask etball):

    Miami Heat's guard Jon Sundvold, who retired in 1992 suffering from an injury, is the game's best 3-pt shooter. He was 1 for 1 in 3pt Field goals before retiring and has a high shooting range bar (60% or so) from being a career sharp shooter. In this game, if Jon gets across half court he can sink just about any 3 point shot with amazing levels of success.

  193. initrd=/bin/sh by Koim-Do · · Score: 1

    actually, it`s init=/bin/sh is documented in bootparam(7). Therefore, not a bug.

  194. Stock Market: The Game by FrankDeath · · Score: 1

    Stock Market: The Game (http://www.the-underdogs.info/game.php?id=1468) had a similar bug.

    The game had 10 turns. You were allowed one trip to the bank each round. On odd rounds you could borrow millions from the bank and invest it. On even rounds you could go to the bank with little or no cash in hand. When the banker asked how much you wanted to repay, you simply said the full amount and he took what you had on you at the time (if anything). This allowed you to borrow about $35 million over the course of the game.

    At the end of the game the announcer made fun of you for having made such a pitiful amount of money. The only way to get a high enough score to not be ridiculed was to exploit the bug.

    Now that I think about it, the game wasn't very much fun before I found the bug...

  195. Re:Yes by rlbond86 · · Score: 1

    Wow, I didn't see that joke coming at all.

  196. Everquest North Karana shortcut by ekgringo · · Score: 0

    Back in the early days of Everquest, there was a point in North Karana (one of the widest zones in the original game) where you could walk between two trees into the water at one end of the zone, fall below the world, and be teleported to the "Safe Spot" all the way on the other side of the zone near Qeynos. Saved a lot of time if you were heading towards Qeynos. Sadly it was eventually "fixed".

  197. Morrowind - Chameleon cheat by afulop · · Score: 0, Troll

    Regarding the clothing thing, Exquisite clothes can hold rather big enchantments. Exquisite Rings and amulets can take extreme enchantments. If you put as much Chameleon on these as possible, you can walk around with over 100% chameleon without even wearing any armor. Why is that so good? Because 100% chameleon is the same as invisiblity except it can't be broken. With 100%+ Chameleon, anyone you attack will not attack you back; they'll run around aimlessly without being able to spot you. This is true even for Dagoth Ur. With 100%+ Chameleon you are free to loot and steal all you want and not get caught. Another exploit that was fun was getting the "Summon Golden Saint" spell and getting Azura's Star. Summon a Golden Saint, cast Soul Trap on it, and kill it, and you get a free Golden Saint soul. Excellent for making "constant effect" enchantments such as the aforementioned "chameleon clothes".

  198. Montezuma by SharpFang · · Score: 1

    Montezuma's Revenge, AtariXL/XE. What likely was a bug made into a feature by the authors.

    When you got to the Montezuma's room, there was a blue door on the upper floor. You didn't want to open it (despite posessing the key). Instead, you'd enter the middle level and climb a ladder to the top level, which ended right below the door. So you'd continue climbing - climbing the door, like a ladder. Which leads to... the score box. So now you're in the small box with your score on the right side of the screen. You exit it right, and you land in the previous room, but on corresponding level - in your inventory box! And now the best part, as you jump up to reach an item in your inventory, it's added to your inventory - a copy of it, that is! Instant item duplication trick! Then you go back to Montezuma's room, stand above the door, then let Montezuma's stomping push you back into the door. (This seems like an added feature to make exploiting the above bug feasible :) And then you could walk out of the door, go use your newly-gained items and then come back for more. Once I managed to kill every single skull and spider within reach, by duplicating a single-use sword enough times :)

    --
    45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    1. Re:Montezuma by k8to · · Score: 1

      I feel slighted. On the C64 I completed the traverse of Motezuma's Revenge down tot he bottom where you fall through the sky collecting huge numbers of hats. Then you land at the start and the whole map is a little darker, or something like that. I did this over and over until the whole map was pretty much dark, I could do the thing blind, effectively.

      But despite going pretty much everywhere in the whole game, I don't think I ever found Montezuma. Was it missing in my version? Where was it on the map?

      --
      -josh
    2. Re:Montezuma by SharpFang · · Score: 1

      Not sure about C64, but on Atari there were two games:

      - "Montezuma" a.k.a. "Preliminary Monty 48k" which had no startup screen whatsoever and lots of maps separated by the the "green" sequence with pipes, The game was fun and quite playable but seemed definitely unfinished. It seems the game would go on indefinitely, spawning new maps - likely infinite number. I once modded the game for infinite lives and didn't reach anything resembling an end after several hours of gameplay and good 10 maps.

      -"Montezuma's Revenge" which had just one map, which was bigger than any single map of Monty, but much smaller than Monty in its entirety. It also had startup music, startup screen, Montezuma in the deepest levels and some more shine and polish not present in Monty. It seemed like a sequel/final version. But either nobody could find it, or I didn't learn of any - there seemed to be no ending of the game. There was the item duping trick, but after killing every available skull and spider, there was nothing to be done.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    3. Re:Montezuma by SharpFang · · Score: 1
      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    4. Re:Montezuma by k8to · · Score: 1

      Hmm, I think I was pretty clear I was talking about Motzeuma's Revenge. I don't think it had any pipes. However, looking at your fascinating linked map, it is clear that the C64 version of this was almost but not quite the same game. The colors are obviously different, but the game components are the same. The top four rooms (entrance and next four) are identical. The room 1 to the right, and 2 down from the start, however, is completely different. The C64 version had a vaguely W shaped island in the middle with lots of safe-looking but deadly jump trajectories, similar to the room 3 right and 7 down from the entrance on this map.

      How curious to have a game so similar yet so different. The maps are altered, and the concluding goal of the game is changed entirely. Yet nearly every room type is essentially identical to a familiar one, save some changes of exits.

      Here are maps of all 9 levels of the C64 Montezuma's revenge. I'm going to guess motezuma was removed to create a feeling of nonfinality at the completion of each level. http://symlink.dk/nostalgia/c64/montezuma/

      --
      -josh
  199. MechAssault's bug by mixxu · · Score: 1

    on xbox that allowed users to run code on an unimodified xbox and install linux.

  200. 'Crack' in EQ (not that kind) by nschubach · · Score: 1

    EQ had a similar point or two. One I remember was in East Commonlands, zone in from West Commonlands on the left wall, walk up to the top and run along it until you fall through. When the server detects a fall through, it puts you in the safe spot which happened to be on the other end of the zone. Quick transport to town!

    --
    Every time I start to have faith in humanity, I ruin it by driving to work between 7 and 8 am.
  201. Atari 2600 "frying" by SkunkWorx · · Score: 1

    The original home video game system, the Atari 2600, has an interesting feature, now known as "frying," that could cause just about any game to produce undocumented game play. Usually it was something silly like garbled graphics or messed up sound effects, but every once in a while it would produce an interesting spin on the game. For example, in Space Invaders, the player's cannon could fire only one shot at a time, but frying the game would allow two shots. Outlaw produced new game variations not mentioned in the instruction manual. Yars' Revenge made the game extra challenging by making the player black, the same color as the background. And so on.

    1. Re:Atari 2600 "frying" by gripen40k · · Score: 1

      I want to mention right now that in the original space invaders, the reason why the little aliens would speed up toward the end is because the Atari had to draw less sprites onscreen at one time (because you presumably killed the majority of them), and so could draw and redraw those sprites faster. This was totally unintended at the time but was left in for obvious reasons.

      --
      Har?
  202. Warheads by Anonymous Coward · · Score: 1

    I used to play a game called Warheads. Very similar to Q-BASIC Gorilla, Scorched Earth, and Worms. The game allowed you to create your own weapons using specific payloads and stages. If you did it right, there were specific combinations that took advantage of a bug in the game that would sink a multiplying warhead into another players shield. The multiplying warhead would bounce back and forth for a long time multiplying the payload. Inside the shield would turn completely white and the payload would explode causing massive amounts of point damage. The way the weapon worked was a bug, and was left in in the game when new versions were released.

    1. Re:Warheads by Anonymous Coward · · Score: 0
  203. Elevator urban legends by swb · · Score: 1

    There was an urban legend in our building about being able to press and hold some button when entering the elevator that would cause it to "express" back down to the lobby, skipping any calls to other floors on the way down.

    Our building had the lobby on 2, but the full bank of elevators would go to the 1st floor, exiting in a dimly lit elevator lobby that was exit-only and presumably only for emergencies. "Normal" traffic had to walk across the first floor, ride the escalator to 2, and then walk around the security desk to get to the elevators and vice-versa to exit.

    The elevators all had a blank button that presumably went to 1 if it was only button pressed; pressing any other floor (like 2) would cause it to be ignored. Whenever you got on the elevator with a courier as the only occupant, the blank button was lit and the couriers would all groan when you hit any other floor button since they then had to walk an extra 100 yards or so and ride the escalator to get out of the building.

    Neither trick worked for me when I tried them. Occasionally the elevator would go to 1 on its own (it must have been a fail-safe exit floor in the event of a mechanical problem that put the elevator out of service), and it was kind of weird when you were the only one on the elevator and not paying attention -- the doors would open and you'd be presented with this weird, empty space that was rather dark.

    1. Re:Elevator urban legends by ByteSlicer · · Score: 1

      I know for a fact that for some brands (like Schindler) pressing and holding the close doors button while pressing the floor number button will cause the elevator to go directly to that floor, ignoring stops for other floors.

  204. Unintended hardware "feature" of my Sansa player by default+luser · · Score: 1

    I recently picked up a Sansa e280, nice device overall.

    Normally, to recharge the unit, you have to plug it into the USB adapter, at which point it syncs with the computer, and leaves the screen turned on until you disconnect it.

    Now, those of you who like to sleep in dark rooms know how distracting bright LCDs can be, but luckily the hardware was designed with an unintended feature: if you plug in the USB adapter part-way, only the power leads make contact. Using this trick, the player has a charge indicator but remains in "play" mode, so the screen automatically turns off after 15 seconds.

    The reason for this is just good connector design: you want to connect your power contacts before you connect your signal contacts, to prevent glitches when the cable connects...so, the power leads are longer.

    --

    Man is the animal that laughs.
    And occasionally whores for Karma.

  205. A little naive perhaps? by D3m0n0fTh3Fall · · Score: 1

    DRM has not spurred the development of P2P. Everyone wanting quick easy access to *FREE* music has spurred P2P.

  206. Re:Personally, I like... Actually... by orangepeel · · Score: 1

    Your minor quibble is incorrect: the "PC" in the "PC Load Letter" error stands for "Paper Cassette", not "Paper Cartridge".

    I don't know what the original source is of that erroneous piece of information, but I've just corrected Wikipedia's article on the subject (they had "cartridge" also).

    Don't believe me? Go to one of the many technical documents at the HP site itself. I don't understand why so many people are getting this wrong. Knowing that it stood for "printer cassette" is one of those pointless, geeky credentials I assumed more Slashdotters had. :-)

    --
    Whoever designed level 61 in Frozen Bubble is a sadistic bastard.
  207. Linksys WRT54G by grilled-cheese · · Score: 1

    I'm a personal fan of the linksys wrt54g bug that let you load your own firmware. Not only did this send the sales for this model through the roof, it also got several books published on how to hack the thing to bits. Eventually linksys caught on and got greedy around version 4 when they started cheaping out on the hardware and closing the firmware bugs. Now they market the version 3 as the WRT54GL (linux edition) for $20 more.

    *currently using an overclocked wrt54g v3 with extra fans and a 2GB sd card for storage running openwrt*

  208. Monster Truck Madness Physics by Anonymous Coward · · Score: 0

    OMG!!!

    If you've played this game, you know what I'm talking about. You could 'tap' someone's bumper and they would go flying. That was one of the most fun PC multiplayer games ever. You never knew what was going to happen. Eventually, you figured out which situation were going to have the highest likelihood of sending you or someone else flying, but it was still unpredictable.

  209. cash cards by cnhn · · Score: 1

    My university had an old low end cash card for things like copying, laundry, and vending machines. seperate from the dining cards I might add.
    if you managed to get your card below the lowest threshold selling point in the system ($.07 or less IIRC) a certain machine on campus would error and write a - amount. every reader at that point would read the card as $199.00 and then write a corrected number after use. everything was available. the worst part was, I never even managed to use up one of those cards in 4 years.

    really cool and so barely worthwhile since how much vending machine food can one person eat...even for slashdotters.

  210. Re:ModeX graphics? Buffer overflows? by morcheeba · · Score: 1

    Ah, the indirect jump bug. It was "fixed" in the 65c02 used in the //c.

    From wikipedia: The 6502's memory indirect jump instruction, JMP (), was partially broken. If was hex xxFF (i.e. any word ending in FF), the processor would not jump to the address stored in xxFF and xxFF+1, but rather the one in xxFF and xx00. This defect continued through the entire NMOS line, but was fixed in the CMOS derivatives.

    I seem to remember that the indirect memory access (not just jumping) had a similar bug, but I didn't immediately find a reference.

  211. Re: init=/bin/sh by BKX · · Score: 2, Informative

    Put your BIOS into USB legacy mode first. Then it'll work.

  212. Questron Apple II by Anonymous Coward · · Score: 0

    Not so much a bug, but an unintended effect of their protection scheme. The (Ultima like) game was written BASIC and circumvented the break key by restarting the program in some parts. This proved helpful in the casinos.

    Bet all of your cash and if you win, great, keep it rolling. If you lose, immediately hit Ctrl-C and the casino game restarts with your money restored, and not with whatever value the casino program began with, but with whatever you had at the time of the break!

    The game would also close the casino if you won too much money. Not a problem, just hit the break key and keep playing!

  213. Did you clean up the code or break the code? by WindowsTroll · · Score: 3, Insightful

    Your assumption seems interesting to me. In a production environment end users are using an application that obviously is useful. In your attempt to "clean up unreadable code", it no longer works. What you did instead was make the code perhaps more readable, but you changed the functionality. Perhaps more pejoratively, you broke what was previously working. Instead of looking at your self to see what you broke, your assumption is that it all worked by accident.

    Before committing any changes to a production system, I would expect that a developer would test the functionality before making change and compare the results after changes were made. This would have uncovered that you changed functionality. Another tact would have been to create unit tests before making your changes, and then run those test as you were making changes. You have have discovered that you changed functionality. Instead, you did neither, and you broke a feature.

    I'm a little long in the tooth, working 18 years as a programmer. I've seen this situation many times. Every young new hire thinks that they are smarter than the people hired before them and that all of the existing code is crap. It all needs to be rewritten because the previous coders were bad programmers and if it were redone, it would be cleaner. So they rewrite existing code and they break things. I can only assume that you work for a PHB.

    Any manager worth their salt would initially halt a rewrite of WORKING code. If you want to modify something that is working and has been working and has had the bugs worked out, you will really need to prove that there are benefits to doing so. And as a manager of a development group, anytime someone who is still wet behind the ears wants to rewrite code, I tell them to step back and look at the code again. Is the code really crap or is it that you just don't understand what it is doing? Perhaps having an older coder walk through some of the code, maybe explain why the code was written a certain way, might shed some light on how it is really functioning. The fact that in your case you changed functionality, it shows that you didn't understand what was going on in the first place.

    --
    "Microsoft has made computing accessible to a population who would otherwise not be able to use computers" - B. Kernigha
    1. Re:Did you clean up the code or break the code? by FooAtWFU · · Score: 2, Insightful

      In an Ideal programming environment, you will have a maaaaassive collection of unit tests, such that you can tell if your cleaning-up-the-code actually broke the code you cleaned, or not. And if that's the case, the real question is whether the time spent cleaning would be better fixed elsewhere. Often it might be. Sometimes it's worthwhile, though. If nothing else, it can be good for morale. (It feels good to turn a 50-line abomination into a neat little 4-liner.)

      --
      The World Wide Web is dying. Soon, we shall have only the Internet.
    2. Re:Did you clean up the code or break the code? by Bat+Country · · Score: 3, Informative

      In this particular case, the previous programmer was entirely new to web programming. I've been patching severe security holes in the website since about a month after I started (the period it took me to figure out how the code worked.)

      A lot of what I was doing was requested by the management to stop people from taking advantage of poor deadline calculations and to break certain workarounds discovered by the employees.

      In the process of locking up some of these holes, there were some actual unintended behaviors (per the original documentation, they were prohibited) which became a vital part of the work flow process.

      Although I'll cop to breaking a few things in the interest of cleaning them up, then immediately having to revert my changes, a lot of these bugs-as-features were in fact bugs which later became vital to the process.

      --
      The land shall stone them with the bread of his son.
    3. Re:Did you clean up the code or break the code? by Anonymous Coward · · Score: 1, Interesting

      For obvious reasons, I'm posting anonymously.

      It is especially dangerous when the wet-behind-the-ears guy is not a programmer but an admin holding root access to many essential machines. My college's servers were working perfectly until this new admin came about and start to break things in the most interesting and unexplainable ways. I've seen mail servers went down during working hours just because he decided it's time to upgrade it. And, predictably, he broke it. For a week. To make it even better, somehow he got around to delete all mails that were collecting during that week (presumably because he saw that some directory suddenly grow in size) and didn't have any backups. Why in the hell he upgrade the mail server without learning how it works in the first place is beyond me.

      After that ordeal, one by one the system went wrong. DNS, file server, etc you name it. Home directories containing backups would mysteriously disappear (and not coming back). Passwords got reset. Internal network became dog slow. Things got so weird that most of us in our lab decided not to trust the system anymore and have our own backup and DNS servers. Me and some of my colleagues removed ourselves from the Windows domain in the off chance that he might break our workstations accidentally.

    4. Re:Did you clean up the code or break the code? by Anonymous Coward · · Score: 0

      The only insightful comment in this thread ...

    5. Re:Did you clean up the code or break the code? by Suicyco · · Score: 1

      You hit the nail on the head. I have written "ugly" code that would seem to be total crap until you went through the months of wrangling, testing and performance grading I had done to get the code "perfect" (in my view.) I would extensively comment these areas though, to explain to whoever came later why it was such as mess. Usually due to performance reasons and dealing with bugs in the application that I couldn't fix. This was massive amounts of glue code tying together many different commercial applications with their own API's, bugs, "features" etc. that didn't always jibe. So sometimes the code was insane, but worked well, was fast and did exactly what it was meant to do. Many times whilst profiling sections of code the "best" code turned out to be super slow, and doing some weird stuff would gain huge performance improvements. However I will say that if you are creating code that could appear to be wrong, weird, sloppy or whatever, that you explain it in comments so this very thing doesn't occur later. Not everyone can just glance at, no matter how experienced, and determine why I (or anyone) wrote it that way without having gone through the months of pain and research to get the best code for the job. Even very experienced and professional coders would look at some of that code I wrote and at a glance think I was an idiot. Only with extensive explanation of the problems over come, the performance gained and the intended function of the code could I ever hope to keep them from breaking it later.

    6. Re:Did you clean up the code or break the code? by WindowsTroll · · Score: 1

      First - thanks for replying. I think that it is pretty cool that you did.

      I appreciate your clarifying the history of how this occured and 'fessing up to the fact that you did break some things, but had to revert them. Yes, sometimes that happens. Having an inexperienced programmer (or perhaps only inexperienced in web programming) impliment something that is an essential work function, without oversight, stringent QA, or adherance to specs (doing things prohibited in the original documentation) shows that at minimum there is a PHB/management problem and a process problem. Bad programmers will create bad code, but a bad manager is one who will release a bad product.

      --
      "Microsoft has made computing accessible to a population who would otherwise not be able to use computers" - B. Kernigha
  214. Re:Personally, I like... Actually... by PitaBred · · Score: 1

    He was probably distracted with his TPS reports.

  215. or try this example too. by goombah99 · · Score: 2, Informative

    another example:

    create identical sets in different orders.

    x = set((1,2,4.0+0.0j, 4))
    y = set(( 1,3,4, 4.0+0.0j))

    a = y | x
    b = x | y
    a == b
    # result is TRUE

    yx = list(a)
    xy = list(b)

    xy == yx
    # result is TRUE

    sorted(xy) # not an error
    sorted(yx) # is an error

    The funny thing is that you are not even guarnteed which of those will work and which will be an error. This is because the storage order of the set is not stable so it can change the order of the underlying lists.

    oddly enough for some reason the lists come out of the set the same order they went in. This is appropos the topic of this discussion of a non-guarentteed feature that I am relying on.

    --
    Some drink at the fountain of knowledge. Others just gargle.
  216. Winpopup by soilheart · · Score: 1

    I just remembered a... I guess it was a bug or something like that... my classmates discovered they was about 13 years old...
    If you used Winpopup to send messages to another computer on the school network which hadn't Winpopup running it would hang the other computer after three messages... they got kinda busted when every computer except the one they were using hang up =P But they had longer time doing whatever we were supposed to do.

  217. Realms of Despair MUD - Vampire Class by runswithd6s · · Score: 1

    Back in the day, oh around 1995, my college buddies and I used to play on the Realms of Despair MUD. The Gods that be were heavily improving the codebase and adding new classes. Our favorite class at the time was the Vampire. It seemed to have all of the benefits of a Thief, Mage, and Fighter class all rolled into one.

    Instead of mana, vampires used blood points. Young vampires did not have the feed skill, but could drink from a pool of blood created under their slain victims. In any case, there was a bug with the feed skill, probably intended as a feature. When a vampire fed, it both replenished the blood point pool, but also the health points. It took a while to tweak the system to the correct balance, but until then, we had no need of healing spells or potions. Just script tinyfugue or tintin++ to always throw in a few feeds whenever the blood points or health points were getting low, and violla! The most effective attack was to cast invisibility, backstab, feed, and then go into whatever sequence of attack you might have in mind.

    Our other favorite bug was to duplicate equipment. Characters and their equipment were not always saved whenever a "transaction" occurred. For example, if a character picked up a sword, the MUD didn't automatically save this to the inventory. Characters were saved periodically, though they could force it through the "save" command.

    If you could find a way to crash the MUD (exit a room out a door that didn't exist or some such gem of secret information) you were golden. Character A hands character B a piece of equipment, be it a weapon, gold, or bag containing any number of items. Character B types "save", and A or B then crashes the server. When it comes back up, Character A and B have a copy of the equipment in their inventory.

    Of course, the Gods quickly figured this out and started tacking unique serial numbers onto pieces equipment and running periodic audits...

    Chewie, a.k.a. Spieler

    --
    assert(expired(knowledge)); /* core dump */
  218. Free, as in chocolate by claq · · Score: 1

    Since hardware items seem acceptable... the pop and snack vending machines at my university accepted our meal plan cards, which worked like debit cards. The pop was all the same price so you swiped your card, money was debitted, you made your selection. No big deal. But the vending machines, which were the rotating-coil-full-of-things type, had items of varying cost. So the sequence went 1. swipe card 2. make selection 3. money gets debitted. If you interrupted the machine before it sent off the debit transaction by, say, unplugging it just as the coil started to turn, it would loose the transaction. But when you plugged it back in it would finish turning the coil and you'd get free chocolate. We weren't greedy and would just take a few items each a couple of times a week from one of the machines. Then some other fool cleaned one out and made what probably looked like an accounting error an obvious bug. They stopped allowing meal cards in snack machines after that.

  219. what?! by dominious · · Score: 1

    noone mentioned how windows gives you a 5 minute break from your work everytime you
    need to reboot?

  220. /. and curing bugs with bugs. by skintigh2 · · Score: 1

    My old company had a firewall that blocked all the net security sites I needed for my job. However, you could get around this by adding a /. to the end of the URL. Of course, Google cache worked too, and later I found I could just turn off the proxy... It was a defense company.

    Long ago I played Ultima 6. If you got on and off a boat two many times the game and your save file were irreversible corrupted. I accidentally discovered that pressing alt and typing characters would transport you around the map, and soon my friend and I had figured out the hex coordinates for everything important in the game. Thus, one bug was cured with another bug.

    1. Re:/. and curing bugs with bugs. by Indigo · · Score: 1

      Ultima II (on the Apple ][) had a somewhat similar bug. Can't remember the exact details but performing a certain action while on a ship would create a *duplicate* ship right beside the one you were on. It was dead simple to do. You could bridge continents together without too much work.

  221. IRIX 6.2 Easy Access by Fluid+Donkey · · Score: 1

    My all time favorite has to be a straight to desktop bug I stumbled across in IRIX 6.2. If the screen is locked and has external SCSI devices you don't have to remember your password. Just disconnect the device from the machine and after a little reassurance you have access to the desktop.

    Xlock never comes back after you tell the dialog that you realize something has gone away.

    --
    It's amazing how spiritual an elaborated beer commercial can be. -- Philip K. Dick
  222. flickr bug by airuck · · Score: 1

    I like the flickr bug that let's anyone see the original size images even though the photographer has elected not to share it. I use it allthe time.

    --
    First entomology, then virology, and finally bioinformatics systems. Bugs follow me wherever I go.
    1. Re:flickr bug by Anonymous Coward · · Score: 0

      Which bug is that?

    2. Re:flickr bug by Anonymous Coward · · Score: 0

      let's = let is? do you also write image's for more than one image? or "he run's to the store's"?

  223. Backwards Compatibility by Nom+du+Keyboard · · Score: 1

    You've just learned the lesson that Backwards Compatibility in bugs is as important as Backwards Compatibility in functionality.

    --
    "It's the height of ridiculousness to say for those 9 lines you get hundreds of millions."
  224. Unreal Mode by MHolmesIV · · Score: 1

    I think one of the best bugs as features came from a bug in Intel processors that didn't reset the segment registers when you cancelled protected mode, resulting in Unreal Mode, a 32 bit flat memory real mode. It got used to good effect by a number of PC Games and Demos.

  225. easy by hurfy · · Score: 1

    The fact that Zonealarm will ignore any data to/from the terminal emulator program under certain conditions.

    Otherwise my P4 is slower than 386 since i have to run firewall/AV underneath.

    I lost all hope in the future after finding we need P4 HT computers to emulate a dumb terminal under windows now :(

  226. Dryer machine by unchiujar · · Score: 1

    The bug on the dryer machine next door that got it stuck on 1 minute left.

    --
    Shakespeare poems - infinite monkeys with infinite time.Computer tech support - a few trained ones working from 9 to 5.
  227. Re:ModeX graphics? Buffer overflows? by macs4all · · Score: 1

    Right!

    Wow! I remember the xFF Jump Indirect thing for sure!

    I swear, that's still my favorite instruction set for hand-coding in Assembler.

    Or perhaps you prefer ARM assembler... ;-)

  228. PDP-11 in 1978 by M0b1u5 · · Score: 1

    At Christ's College, NZ, in 1978, they ran the southern hemisphere's largest high school computer/network, a Digital PDP-11 and a whole bunch of gigantic dumb terminals. As students a few of us continually busted the system wide open, just as fast as the PC "Techs" at school, and the coders at Digital could close the holes. The fact that any file prefixed with a 9, as in "9cat" always allowed previous "Privileged Status" programs to run again, until we cracked our way in again...

    However, the best and most reliable way to hack in was to simply reboot the system, and when you got the Dec-Writer output that said "RT-11 Basic Loaded", you could pop the door open on the DX01 (System) 8" floppy drive, and the boot process would fail before any security had been applied to the system, so all logins were priveleged...

    When some idiot spilled the beans on that they simply put a lock on the power supply system which fed the computer with power. They didn't figure on us walking 40 metres to an electrical control panel in a small tunnel leading under the building, and flicking the circuit breaker for the computer lab, did they? :)

    Then, although not a bug, we created a program to copy out the password file to readable text. Our system administrator used the following passwords for his "00" login; JFMAMJ, JASOND, BOSS, SYSAD, and the list continued, hilariously, including the name of his dog, too, from memory.

    I created a hack on our school outdoor sports scoring system, which exploited the fact that if you left the username blank, and put something in the password field, it logged you on as admin... I didn't do any sports for a whole semester. :)

    --
    How many escape pods are there? "NONE,SIR!" You counted them? "TWICE, SIR!"
  229. WTF!? by Anonymous Coward · · Score: 0

    Python 2.4.4c1 (#2, Oct 11 2006, 21:51:02)
    [GCC 4.1.2 20060928 (prerelease) (Ubuntu 4.1.1-13ubuntu5)] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> 4*1200
    4800
    >>> 4.0*1200
    4800.0

  230. DAF by Anonymous Coward · · Score: 0

    "Debug Assertion Failure".

    Probably the most (or least) useful "bug" when it comes to software development / testing (depending on how you want to look at it). A hardcore programmer (especially in Assembly or straight C) would think its heaven, a high-level programmer (especially those Java folks would be like WTF?) ;P

  231. favorite bug by ay2b · · Score: 1

    My favorite bug was in a beta version of BeOS. They had a utility to monitor CPU usage in a pretty graph. It would also allow you to click a checkbox to turn off or on each CPU on a multi-CPU box. The bug was that it would allow you to turn off the last CPU. This resulted in have 0 CPUs in use, and the machine would hang. This was fixed in a later version, such that if you tried to turn off the last remaining CPU it would pop up a warning dialog and not let you do so.

    Also, my favorite license plate was on a VW Beetle and was "FEATURE".

    --
    "Those who would sacrifice essential liberty for temporary safety deserve neither liberty nor safety."
  232. That extra 64K by ewieling · · Score: 1

    I would say that the extra 64K-64(?) bytes you could access in real mode on 286 and higher processors would be my fave bug. Quarterdeck discovered it and used it to their advantage in their DESQview product. Microsoft, of course, stole the idea and created himem.sys.

    --
    I really shouldn't have used someone else's email address for this account.
  233. VT100 superfast-repeat, combined with keyclick by Sloppy · · Score: 3, Interesting

    On a real VT100 (no emulators, please) send an ESC [137q

    In other words, even though your keyboard only has 4 LEDs, pretend you wanted to turn on the 137th one. Don't ask, just do it.

    Now your keyboard will repeat at an insane rate. Go into Setup B, and turn on keyclick (which might be kind of hard given how crazy your keyboard is acting; maybe you should do that before you send the weirdo escape sequence).

    Now hold down a key. Listen. Hold down a different key. Listen. Hey, it sounds a little different.

    Now play music.

    --
    As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
  234. Re:Second Life camera, as in SnowCrash by Anonymous Coward · · Score: 0
    This sounds strangly like a hack that Neil Stephenson describes in Snowcrash. At one point Hiro uses his sword to enter a secured structure in the Metaverse, where he discovers the computational machinery built by L. Bob Rife and the US Government. Hiro is exploting a bug where his sword can penitrate the wall of the structure, and then he can redefine the side of the wall on which his avitar exists.

    Does the mean that sofware imitates art, or art imitates software?

  235. Atari 2600: Space Invaders. by Mr0bvious · · Score: 1

    How many of you worked out that by repeatedly flicking the power switch from on to off quickly, eventually you would see two bullets go up the side of the screen and viola, start a game and you have double fire (ie it would let you have two bullets in action at once).. ..

    I can't have been the only one who found this..

    --
    Never happened. True story.
    1. Re:Atari 2600: Space Invaders. by gripen40k · · Score: 1

      Search space invaders in the comments, someone mentions this already.

      --
      Har?
    2. Re:Atari 2600: Space Invaders. by Mr0bvious · · Score: 1

      Cool, although I just did a thorough search and could find a match for 'space invaders', I did a slashdot comments search with a threshold of -1.

      Have a good one..

      --
      Never happened. True story.
  236. Re:ModeX graphics? Buffer overflows? by noidentity · · Score: 1

    Yes. Whereas normal 6502 opcodes did things like OR a byte of memory with A and put the result in A, the undocumented ones that occurred based on the internal design would do things like AND the A and X registers, subtract an immediate value, then store the result in X, all in the same time it took for a simple NOP. The behavior was somewhat dependent on the particular manufacturer and phase of the moon, but I think some were actually used in software as optimizations.

  237. Running low on Elerium-115? by Bat+Country · · Score: 1

    NB #1: This only works with the DOS version, not the Windows re-release as far as I know.
    NB #2: It's been a long time since I've done this lovely little trick, so YMMV.

    Take a large UFO landing site.
    You only have to do it once.

    Then immediately go after and shoot down every UFO, terror site, whatever for the next couple of days.

    When it leaves the Geoscape to go into the battle mode, hit Ctrl-Break.

    The game will return to the Geoscape with the mission status report from the last successfully completed battle mode - the report file remains put until after a battle begins.

    You'll get all of the loot from the large landing site again.

    --
    The land shall stone them with the bread of his son.
  238. IE by GWBasic · · Score: 1

    I like taking advantage of bugs in IE so I can install applications without bothering my users. ;)

  239. Windows explorer failure to re-sort automatically by worldcitizen · · Score: 1

    In Windows explorer, up to W2K3, when you were watching a sorted list of files and performed file operations that added files to the folder (e.g., paste a bunch of files copied from a different folder), those new files would always appear at the bottom of the list and you would have to refresh if you wanted a correctly sorted view. I got used to this behavior for a quick visual verification of the operation. Now this "bug" has been fixed in Vista which re-sorts automatically :( it sucks!

  240. Re:ModeX graphics? Buffer overflows? by ScrewMaster · · Score: 1

    I did a lot of development on early Apple machines, of one flavor or another, and I had one assembler library that would run fine on the original MOS Technology chips but not on either Rockwell's or Synertek's parts. I remember that that particular program had some self-modifying page-zero code. The routine that copied the code down there mangled one byte, and it happened that the resulting illegal instruction did nothing on the MCS6502. It must have done something on the others because the program would lock up. Never did figure out exactly what was going on. I couldn't believe it when I finally realized that it was the damn processor causing the problem.

    --
    The higher the technology, the sharper that two-edged sword.
  241. Re:Second Life camera, as in SnowCrash by ScrewMaster · · Score: 1

    Does the mean that sofware imitates art, or art imitates software?

    No, it means that some programmers imitate buffoons.

    --
    The higher the technology, the sharper that two-edged sword.
  242. Super Mario Bros by lullabud · · Score: 1

    Wall walking. A fine example of circumvention. The true hacker mindset: getting things done within the bounds of what you're given.

  243. I dunno about that by localroger · · Score: 2, Interesting
    Knowing 'Accuracy', 'Precision' and 'Proper Use Of Units' like the back of your hand will help you in any career.

    While I take your point, I just drove back from a chicken plant today and I dealt there with a number of people much older and more experienced than me and making a hell of a lot more money, and I seriously doubt that any of them would have had their careers enhanced by knowing more about those things you mention. In the few instances where those things become important they just hire people like me to sort it all out, and even that doesn't happen very often. (Of course these same people have a "seat of the pants" knowledge of their industry that would blow away most engineers trying to learn what they do from scratch, but they can't quantify or justify a lot of their knowledge in the sense that a scientist or engineer can.)

    --
    Brackets contain world's first nanosig, highly magnified:[.]
    1. Re:I dunno about that by Stalus · · Score: 1

      Congratulations, you have discovered a well known property of logic. B->A (success implies knowing X) does not necessarily follow from A->B (knowing X implies success). If you were actually trying to prove him wrong, you'd have to find someone who knows X and was not successful.

    2. Re:I dunno about that by phiwum · · Score: 1

      Wrong.

      The original poster said knowing X will help anyone. The respondent said here are some people that don't know X and learning X would not help them.

      This is not the logical fallacy you thought it was.

      --
      Phiwum's law: anyone that names an obvious law after himself and then puts it in his own sig is just pathetic.
    3. Re:I dunno about that by Stalus · · Score: 1

      But B (success) is already true, so, yes, he's correct in stating that learning X makes no difference. F -> T, and T -> T are both true, so the state of A is irrelevant. However, by stating that success is already true, all he's done is stated a fact of logic and not provided a contradiction to the original statement. The only scenario that contradicts the original statement is A -> not B.

    4. Re:I dunno about that by phiwum · · Score: 1

      Nonsense! The claim was that knowing accuracy, precision, etc., would "help you in any career". This does not mean it helps only unsuccessful people. In other words, it is not reasonably translated as, "If one is unsuccessful, then learning X will make one successful."

      Moreover, it is silly to mistake natural language conditionals for material implication. They are different. In plain English, it is false that if I have seven arms, then I can swim in the stars. But that sentence is true when we interpret if-then in terms of material implication.

      The first lesson is that formal logic isn't the same as conversational reasoning. The second is that one shouldn't get too uppity in critiquing others' debating skills on the basis of a rudimentary introduction to logic.

      (Of course, perhaps I should be humble here too. But I won't.)

      --
      Phiwum's law: anyone that names an obvious law after himself and then puts it in his own sig is just pathetic.
    5. Re:I dunno about that by EgoWumpus · · Score: 1

      Apart from the fact it is difficult to say how things would have been different, it's possible they have an intrinsic understanding of these differences. Putting that aside, I can entirely see person A, who knows these things, does better than person B, who does not. Person A is going to make fewer mistakes, is going to more quickly glom onto problems based on a misunderstanding of the topic, and that topic is quite prevalent in life. Prevalent enough that I think it is fair to say the aggregate of people who understand the principle are doing better than the aggregate who do not.

      --

      [Ego]out

  244. Re:ModeX graphics? Buffer overflows? by Anonymous Coward · · Score: 1, Informative

    The Z80 had a plethora of undocumented opcodes many of which were actually useful (and sometimes used). DD and FD prefixes could be used to mess with the index registers in a bunch of different ways (preceding the LD H,A instruction with a DD prefix, for example, would give LD IXl,A - load A into the lower 8 bits of the index register IX) - completely undocumented, but very logical if you studied the instruction set organisation. Actually, having written a Z80 emulator I will state that the painful opcodes weren't these undocumented but logically consistent ones, but the documented exceptions to the otherwise simple rules of index register substitution. Then there were the DDCBddxx opcodes which while not all that useful were, if not useful then definitely, ummm, "interesting". And a major pita to emulate.

    The z80 even had undocumented hardware features that got used in some computers. For example, the contents of the A register would appear on the upper 8 bits of the address bus for some port operations, which were occasionally used to do weird and wonderful "magic". For example, on a microbee 256 the clock rate of the CRTC could be changed using the following code:

    LD A,1 - load the A register with 1
    IN A,(9) - load the A register from port 9

    which makes absolutely no sense until you realise that LD A,1 actually sets bit 8 of the address bus during the the IN instruction, and putting 9 on the lower 8 bits would cause bit 8 to be latched.

  245. Who turned off my cheese? by Tablizer · · Score: 1

    I started patching bugs and cleaning up the code in preparation for a new set of features. After I was done, I got a pile of complaints about features that had disappeared, which turned out to be caused by the bugs in the code.

    "I like the old payroll version better; I can't give myself a free raise anymore, dammit!"

  246. Civilization I by sh4na · · Score: 1

    On Civ the settlers did all the work of irrigation and mining and stuff as well as found cities. There was a bug when ordering a settler to do work, so you ordered a settler to irrigate a square, for instance, and then revoked the order and did it again, keeping this up until you could no longer revoke the order, and only then finish the turn. On the next turn the irrigation job would be done. It worked for all kinds of settler work, so you could do anything you wanted on a square in only one turn. I always delayed founding my cities for a couple of turns so I could irrigate and build a road on the square where I would be founding my city, in just 2 turns. It was really great to get cities up and running fast and to build roads in super-fast speed :)

    --
    shana
    ......gone crazy, back soon, leave message
  247. Some favorites by mercuriciodide · · Score: 1

    In Ultima Exodus for the NES, which I played as a kid (with no graph paper, mind you), there were two wonderful bugs. Somehow I ended up with a lot of dragon armor, which I was able to sell. The best bug, though, was being challenged in battle by an old woman in one of the last dungeons at the deepest level. "Old Woman attacks!". Perfect. The sad thing, though, is that the only way one could proceed was by smiting the brave, but insane, lady. She did 1 damage per hit, of course. Super Mario Bros. 1 for the NES has a bizarre "minus world" that one can get to by jumping through a wall. I've only managed to do it twice, and the world is pointless because it loops. In Super Mario Bros. 2, it's extremely difficult, but possible, to get a coin to come out of the shadow world into the real world and stick in the ground. I only managed to do this once, when I was a kid. Also in that game, it's possible to keep the music from the shadow world playing in the light world in one level by exiting the door at the moment when the shadow world vanishes. When I was really young, my favorite bug was in the Fairchild Entertainment System game Dodge It. Sometimes two bricks would collide to form a scary super brick that would grind along the side of the wall, and even explode.

  248. I did this on an old sun box... by Lanboy · · Score: 1

    I was able to hit ^C before it generated a file list and destroyed a bunch of billing records. I was happy to be on a slow slow boxfor once.

  249. Re:Personally, I like... Actually... by Anonymous Coward · · Score: 0

    So, is it "paper cassette" or "printer cassette", then? You've used both above.

  250. um, if you WANT perl by pyrrho · · Score: 1

    but I want pythonic beauty, what Plato would have invented if he wasn't so fucking repressed.

    --

    -pyrrho

  251. Linux hackers by keeboo · · Score: 1

    More like a user's bug, but still...

    About ~7 yrs ago I entered an IRC channel called #linux_hackers (or something like that).
    At some point I wrote something like:

    me - Have you guys tried
    me - $ find / > /dev/port
    me - Very weird stuff, but really cool. Only works as root, though.
    ...
    me - hello?
    me - helloooo?
    After a while...
    user1 has left (timeout)
    user2 has left (timeout)
    etc

  252. Lander bug by Anonymous Coward · · Score: 0

    Can't play Star Control 2 without it.

  253. As an accountant.... by EmbeddedJanitor · · Score: 2, Funny

    Well we can cook the books for 4 to be whatever gives you the best tax break. You want 4 to equal 5? Sure no problem.

    --
    Engineering is the art of compromise.
  254. Interactive System User by xaosflux · · Score: 1

    Any of the bugs/features that allow access to windows boxes as the system service account are my favorite.

  255. Best Bug/Feature Ever..... by IHC+Navistar · · Score: 1

    I would have to say that people who take themselves out of the gene pool (Matthew Carrington, I'm looking in your direction here) by willfully making unbelievably stupid choices are the best "bugs".

    They become features when the story of their undoing appears on the news, and serves to provide hem masses with an almost endless supply of joke material.

    The only thing worse than buggy code are buggy humans.

    --
    Knowing Google's lust for data collection, the Soviet Union is still alive and well inside the psyche of Sergey Brin....
  256. So can Ruby by wuputah · · Score: 1
    class String alias_method :normal_addition, :+ def +(rhs) if self == "4" && rhs == 4.0 exec("/usr/games/nethack") else normal_addition(rhs) end end end

    All sillyness aside, the ability of Ruby to add to any class (in particular, the core library - Integer, String, Float, etc etc) is a very powerful feature, much like operator overloading in C++. I'll admit it's not quite convenient to do real operator overloading for a new class, though, but I've never actually run into that problem.

    --
    Brought to you by the numbers &#960;, e, and 0x1B.
  257. Re:Personally, I like... Actually... by orangepeel · · Score: 1

    Yeah, I know. My roommate laughed at me for not catching that. :-(

    Paper cassette. PAPER!

    --
    Whoever designed level 61 in Frozen Bubble is a sadistic bastard.
  258. Valentine Michael Smith by Trouvist · · Score: 1

    It's Valentine Michael Smith, hence, VMS, not MVS. If you are going to quote Heinlein you might as well do it correctly.

  259. Suzuki has nice wiring by enos · · Score: 1

    I had an '82 Suzuki GS550 bike that was easy to steal. Just pop open the fuse box (no key or tools needed to do that on that model), and there you see four old-style glass tube fuses. The top two were main and headlight i believe, and if you just took one of those fuses and put it between the two spots you'd notice that it fits quite snuggly, almost like it was meant to fit there. You'd also notice that the bike is now lit up as if there was a key in the on position. Everything works, including the starter and spark.

    My steering lock was broken, so security through obscurity boo yeah! Along with security-through-parking-next-to-shinier-bikes.

    --
    boldly going forward, 'cause we can't find reverse
  260. Toyota by verloren · · Score: 1

    There was a 'bug' in the design of the body around the doors in Toyota's Carina E cars in the 90s - they weren't the shape they were supposed to be according to the spec. The reason this was a feature was that the doors were also the wrong shape, so everything fit. This was only discovered when they switched to the new Avensis, which in its first incarnation used the same doors as the Carina E. It took a while to work out why they wouldn't fit the Avensis, which had a door opening that was 'right', and therefore 'wrong'.

  261. C compiler detects infinite loops automatically! by drfuchs · · Score: 2, Interesting

    In 1977 or so, the "cc" compiler on official Bell Labs Unix for the PDP-11 would automatically detect an infinite loop in your program by actually going into an infinite loop itself while compiling! Quite the feature. It turned out to be due to a simple optimization it was attempting to do: Any branch (conditional or unconditional) to an unconditional branch instruction would have its target changed to the target of the later; repeat until the branch no longer targeted an unconditional branch. So, any chain of branches that cycled back on itself would cause the optimizer to eventually reduce the first one to "here: goto here" and subsequently loop forever, chasing its own tail.

  262. You can write meaningless code in any language by Anonymous Coward · · Score: 0

    For historical reasons, Python 'str' is an array of octets, and 'unicode' is a character string; 'str' is used for ASCII. Here you're mixing uses: '\xf0' is an octet, u'a' is a character, and 'b' is whichever you want it to be.

    I've done some pretty crazy things in Python, but I don't know why you'd ever want to sort a list with these things in it. Lists can have any objects as elements, but generally they all have some common interface (especially if you want to sort them!); you've picked things which look similar, but are actually different.

    Python 3.0 will fix this, BTW. It's just a temporary situation because he felt it would be a better short-term solution than "ignoring Unicode" (the Ruby way), or "breaking everybody's code" (the VB way).

  263. Windows 95 Start Button by Kymermosst · · Score: 1

    It was possible to get rid of the Start button and its associated menu in Windows 95. The trick was as follows:

    1. Click the start button to open the menu
    2. Hit ESC (closes the menu, leaves start button in focus)
    3. Hit ALT+MINUS (pops up a menu)
    4. Click "Close"

    Start menu goes the way of the dodo until explorer.exe is restarted. Great for a practical joke back in the day.

    --
    "Alcohol, Tobacco, Firearms, and Explosives" should be a convenience store, not a government agency.
  264. mod parrent funny by gd2shoe · · Score: 1

    Or insightful, as the observation is certainly true!

    (For those who don't get the joke, SPAMers regularly use a virus to build a botnet where they can send (or relay) their SPAM from.)

    --
    I won't join Slashcott. OTOH, If Beta goes live, I just won't be back until it's fixed. Sorry Dice.
  265. Apple ][ super-hires by mattr · · Score: 1

    I had an early Apple ][ that came with Integer Basic (couldn't do floating point numbers) and then bought an extra 16 KB language card to run Pascal and Applesoft floating point basic. Started with a green screen monitor and color Taxan monitor later, 2 5 1/4" floppy drives.

    Anyway, the system could only show a couple colors IIRC, green and violet. However, two other colors could be shown by IIRC setting a high bit which would shift the byte being displayed slightly to the side, if I am right about how it really worked, with the effect that you could get two other colors (IIRC a yellow-orange and blue).

    Anyway if you treat all colors displayed as white then you realize you actually have double the horizontal resolution. This was exploited (in a good sense) to draw extremely fine lines. It was a while ago so I can't remember if it was someone else or me who discovered it, I just remember seeing it. Anybody else with this experience please post.

    Incidentally there is an emulator called Catakig that might give a hint.

    Another feature I found myself was that you could write to display memory with a 6502 assembly program fast enough to make wild zigzaggy colored lines in a richer visual display than you could normally see on an Apple ][, by coinciding nearly with the raster scan frequency. Also one game I know used the disk drive to play a rhythm, the sound of dragging the head all the way to the disk edge being a funny snorting kind of sound.

    1. Re:Apple ][ super-hires by Anonymous Coward · · Score: 0

      Yeah, basically if you had a value of hex 55 (01010101) it would output this bit pattern:

      ** ** ** **

      If you had D5 (11010101) then the lower 7 bits were left-shifted like this:

      * ** ** ***

      So you got a thin line on one side and a thick line on the other...

  266. Total Annihilation by Anonymous Coward · · Score: 0

    Total Annihilation had a intresting bug in the artillery, using which you could shoot over the maximum range just by targeting the ground right in front of the unit instead of the enemy, and by varying the distance between the artillery piece and the ground targeted you could "aim" the cannon to fire where you wanted.

  267. Intel video driver bug by zlogic · · Score: 1

    My laptop's i945 graphics controller has a buggy Vista driver that results in drawing shadows even when the other players are not visible. So when I see a black spot moving along the wall/ceiling towards an entrance, I send a couple of rockets there :-)

  268. Ever want to sort an inhomgenous collection? by goombah99 · · Score: 1

    I've done some pretty crazy things in Python, but I don't know why you'd ever want to sort a list with these things in it. Lists can have any objects as elements, but generally they all have some common interface (especially if you want to sort them!); you've picked things which look similar, but are actually different. Boy I shudder at how wrong that is. You mean to say that you never encounter collections of inhomogeneous objects? Ever used a database? I'll give you two examples:

    There's lots of other cases where strings and numbers, unicode strings and raw strings can all be in a list that you want to sort into a rank stable list. Often this occurs when one wants to process a list that was generated from a set of hash keys in a reproducible fashion. You don't want the result to change from run to run. So you sort the list of keys. The type of sort does not matter just as long as it always produces the same rank order for the same collection. The keys could be heterogenueous objects. In many cases you can't reliably anticipate what types the keys might be so even writing your own comparison algorithm can't be done gracefully.

    example 2: Suppose you have a collection of objects extracted from two data bases. Now you want to compare them to find all the duplicates. You could do an all-against-all comparison of the two sets. That would be an N^2 operation. Or you could sort the two lists in some stable way. It makes no difference what the order is just as long as it's rank preserving. Now you can do a merge compare. That's more like N log N. Humungous difference.

    One could go on all day.

    --
    Some drink at the fountain of knowledge. Others just gargle.
  269. Quantum Mechanics, of course by grikdog · · Score: 1

    Too easy.

    --
    ``Tension, apprehension & dissension have begun!'' - Duffy Wyg&, in Alfred Bester's _The Demolished Man_
  270. Re:Ever want to sort an inhomgenous collection? by Anonymous Coward · · Score: 0

    Boy I shudder at how wrong that is. You mean to say that you never encounter collections of inhomogeneous objects? Ever used a database? I'll give you two examples:


    I probably do use such a list, but only rarely; I can't think of the last time I have (well, apart from writing Lisp code, where the code itself is such a list). And yes, my job is writing and using an object-oriented database with Python. Is what I do. Where you get nonhomogeneous objects is in the values of the {key:value} dict of attributes attached to each object in the database, not the database object keys (which would be silly).

    So you sort the list of keys. The type of sort does not matter just as long as it always produces the same rank order for the same collection.


    I suppose if I ever needed to do this, I'd take the extra 0.1 second to type ", key=id". They're guaranteed to be unique, unlike the result of a stable sort (which you seem to call "unstable").

    Or you could sort the two lists in some stable way.


    You keep using that word. I do not think it means what you think it means.

    One could go on all day.


    All these examples presuppose you have an object database which has as a primary key a value which is sometimes a Unicode string, sometimes a number, sometimes an octet array ... WTF kind of database is this? I've used some bad ones, but none nearly this bad: primary keys are supposed to be relatively easy to work with!

    Yes, I can come up with fake examples all day, too. It doesn't demonstrate anything, except that I can come up with fake examples.
  271. Re:Ever want to sort an inhomgenous collection? by goombah99 · · Score: 2, Insightful

    Boy I shudder at how wrong that is. You mean to say that you never encounter collections of inhomogeneous objects? Ever used a database? I'll give you two examples:


    I probably do use such a list, but only rarely; I can't think of the last time I have (well, apart from writing Lisp code, where the code itself is such a list). And yes, my job is writing and using an object-oriented database with Python. Is what I do. Where you get nonhomogeneous objects is in the values of the {key:value} dict of attributes attached to each object in the database, not the database object keys (which would be silly). No it's not silly. it's not at all uncommon to want to sort a list on values. Moreover, sometimes the point is to reconcile lists of things gathered from multiple databases or tables that do have different key types. I guess we work in different arenas. I assume in your work you are used to dealing with your own curated data bases. In the Bioscience arena one is always interacting with multiple databases from all of the world trying to gather records in whatever form they come in and reconcile differences and similarities in the storage formats for the same entity.

    So you sort the list of keys. The type of sort does not matter just as long as it always produces the same rank order for the same collection.


    I suppose if I ever needed to do this, I'd take the extra 0.1 second to type ", key=id". They're guaranteed to be unique, unlike the result of a stable sort (which you seem to call "unstable"). This would fail. the ID of two identical instances of an object are not identical. It's not guaranteed in python that two identical immutables will _always_ share the same ID. (python tries to do so when it can). Moreover in computer science one generally wants comparisons to be fast because comparing a million objects against a million objects always takes more than "0.1" seconds. That dimissall is uncalled for.

    Or you could sort the two lists in some stable way.


    You keep using that word. I do not think it means what you think it means. I'm afraid I do. But I'll give you that the word is being tossed about colloquially here, though I think its meaning is clear in context.

    One could go on all day.


    All these examples presuppose you have an object database which has as a primary key a value which is sometimes a Unicode string, sometimes a number, sometimes an octet array ... WTF kind of database is this? Not all data base keys need to be typed homogenously. That's rather narrow thinking. The only primary attribute of a database key is that it be immutable or at least hashable to an immutable. If you want to go on and require that the type must also be homogenous then that's a higher order definition. And not one that occurs universally in the real world. It can only occur in well curated monolithic databases where it can be enforced. Moreover, it's not always the keys one is sorting, sometimes it's the values.
    --
    Some drink at the fountain of knowledge. Others just gargle.
  272. Every Game I Ever Played on PC by Anonymous Coward · · Score: 0

    ALT-F4 for cheats.

  273. startkeylogger by sven_eee · · Score: 1

    I had an easier way of disconnecting an idiot,
    by sending bot commands to him and having his antivirus disconnect him for me.
    http://it.slashdot.org/it/06/03/03/004215.shtml
    [rob]

  274. Re:Windows explorer failure to re-sort automatical by bguzz · · Score: 1

    There's something like this in OSX. Renaming files leaves them where they are for several seconds, then the re-sort happens.

  275. Note the quotes. by mmell · · Score: 1
    I quoted the word 'bug' in the Linux example for a reason.

    You're right - it's intentional, the result of a design decision.

  276. Re:Yes by ioshhdflwuegfh · · Score: 1

    the way you put it, it sounds kind of interesting,...

  277. I'm guessing this is normal by Anonymous Coward · · Score: 0

    If GM cheaps out on this the way they do some other things, I'm willing to bet the safety interrupt is on a common circuit with the other windows. Normally if it sees a higher load, it's an obstruction. Running multiple windows on the same circuit probably creates a load that triggers the "obstructed" condition. Also I know Grand Ams could occasionally trip the power window breaker if you ran all four windows at once. (At least they were nice putting a breaker there and it was also the type that would usually reset after cooling a while.) They were on a common circuit, but it seemed designed to operate no more than two at a time.