Slashdot Mirror


Debug your Code, or Else!

Trevor Lovett writes "I ran across a collection of famous software bugs that have caused large scale disasters including the explosion of the Ariane 5 rocket due to integer overflow and the misfiring of a US Patriot missile that caused 28 deaths because of accumulated floating point error. "

485 comments

  1. but dont forget by rosewood · · Score: 5, Funny

    Remember that time when that kid dialed into NORAD and used that security exploit to get into the Thermo-nuclear war simulator and everyone thought it was real until he and the inventor were able to trick the computer into playing Tic-Tac-Toe? I see a LOT of bugs in the software there but no one ever seems to care about that...

    1. Re:but dont forget by btellier · · Score: 2, Redundant

      Also, I remember hearing about this good looking hacker chick who used extremely large fonts and a camoflaged computer. Due to Penn Jillette's incompetance he failed to notice this good looking individual's ability to literally fly through the network, superman style, before crashing into the garbage file. Teller had neglected to take out the trash and was summarily beaten. In the resulting hilarity, more large fonts are exchanged and a virus is disassembled via Matrix-style code-fu. Near the end of this caper one of the hax0rs in question has sex with another human being, possibly as a result of his cult following of thousands of IRC kiddies boasting knockoffs of his nick.

    2. Re:but dont forget by Anonymous Coward · · Score: 0

      Um, that was a movie. NORAD's critical systems aren't connected to the outside world.

    3. Re:but dont forget by 0x0d0a · · Score: 1

      Nah. Sooner or later they'll hire the lowest bidder for some sort of networking work, who will build something on top of 802.11b, neatly connecting them. :-)

    4. Re:but dont forget by coolgeek · · Score: 2

      Ummm I believe two-way communication with guided ordnance qualifies as a "connection to the outside world"

      --

      cat /dev/null >sig
  2. Missing From The List by BiggestPOS · · Score: 5, Funny
    1) 1999 - Buffer Overflow causes Half-Life to crash while I'm in an important clan match (counter-strike) we lose the match, and I lose many friends.

    2) 2000 - Poorly coded garbage collection causes Word 97 to crash, lose last 2 hours of research paper. Class was in 30 minutes, paper was late. I lost my scholarship.

    3) 2002 - IE Crashes while writing AWESOME first post for /., My karma never recovered.

    --
    What, me worry?
    1. Re:Missing From The List by Anonymous Coward · · Score: 0

      Dude - you lost 2 hours of work? Ever heard of saving. I mean even on the most stable system in the world there is always for a power outtage and your UPS failing. I really don't think you deserved that scholarship if you couldn't figure that out. Plus, Word 97 has an autorecover feature, too.

    2. Re:Missing From The List by Anonymous Coward · · Score: 0

      FYI, Word 97 keeps a temp copy of everything automatically. So, you coulda probably saved your silly report and scholarship.

      Oh well!

    3. Re:Missing From The List by jeffy124 · · Score: 1

      shock moment: Word has garbage collection!?

      --
      The One Rule Of Chess You'll Ever Need: Don't play someone who carries a kit in their bookbag.
    4. Re:Missing From The List by Novus · · Score: 5, Funny

      shock moment: Word has garbage collection!?

      Yes. It collects megabytes of garbage in files with the extension ".DOC".

    5. Re:Missing From The List by Anonymous Coward · · Score: 0

      Now would be a good time to come up with some snappy EverQuest post about bugs, killing my char again and so on.

    6. Re:Missing From The List by liquidsin · · Score: 3, Funny

      If we can attribute the buffer overflow to be a problem with directx and not with half-life itself, then all three of your most horrific moments ever are the direct result of MS negilgence. Try to collect damages...they should be available for more court dates sometime around 2017 ;)

      --
      do not read this line twice.
    7. Re:Missing From The List by GafTheHorseInTears · · Score: 5, Funny

      4) 2002 - Windows Media Player freezes up while I'm whacking it to porn. Unfortunately, it freezes on one of those annoying shots where they cut away to the dude's face, and I'm too close to the finish line to be able to stop. Afterwards, I feel embarassed and uncomfortable, yet strangely aroused.

      --
      "You're just scared like a little white pussy. I'll fuck you till you love me, you faggot!"
    8. Re:Missing From The List by bpfinn · · Score: 1

      So I guess that Word 97 uses a copy collector?

    9. Re:Missing From The List by envelope · · Score: 0, Troll

      Mod parent up!! Damn funny!

      --

      appended to the end of comments you post, 120 chars
    10. Re:Missing From The List by Anonymous Coward · · Score: 0

      A half hour before class and you're still writing with no backup and a scholarshiop depends on this? Sounds like you didn't deserve the scholarship, Dude!

    11. Re:Missing From The List by forged · · Score: 2

      Damn, does it remember me the last time I spanked the monkey. Funny eh, like people will repeat the same scenes over and over again. Must be in the genes :->

    12. Re:Missing From The List by 1in10 · · Score: 1

      Except that Half Life uses OpenGL not DirectX ...

      But not self respecting slashbot would let facts get in the way of a Microsoft bash, I'm sure. ;)

    13. Re:Missing From The List by TheOnlyCoolTim · · Score: 2

      It actually can use either OpenGL or Direct3D, and of course it still uses the other parts of DirectX even if you use OpenGL rendering.

      Tim

      --
      Omnia vestra castrorum habetur nobis.
    14. Re:Missing From The List by 0x0d0a · · Score: 1

      Well, if your workstation is a nice stable Linux box in an urban area (i.e. no pickup truck drivers ramming over the only power line) running emacs, I don't see much of a reason to save for days.

      And Word has plain idiotic handling of temp files. Microsoft, who pushes everyone else to use the bloody TEMP directory, can't manage to do so themselves.

      I'll trust emacs' auto-backed up plain text. I dunno about some semi-saved partly binary stuff.

    15. Re:Missing From The List by jsse · · Score: 1

      Yes. It collects megabytes of garbage in files with the extension ".DOC".

      Some nice dudes wrote a garbage collector for Word. Open a .DOC file with it and re-save it, you'd be surprise how the original file shrunk without losing any content. :)

    16. Re:Missing From The List by coolgeek · · Score: 1

      Great troll, dude. 5 pts. and everyone fell for it too.

      --

      cat /dev/null >sig
    17. Re:Missing From The List by Anonymous Coward · · Score: 0

      2) 2000 - Poorly coded garbage collection causes Word 97 to crash, lose last 2 hours of research paper. Class was in 30 minutes, paper was late. I lost my scholarship.

      Your own fault. Word is extremely frustrating, agreed. But you knew that. Finishing a paper that could make or break a scholarship 30 min before class is inexcusable for anyone who is computer savvy or even "life savvy." Printers jam. Disks crash. Power Fails, and Windows burps. You knew all that. Why run it right up to the edge?

  3. especially important in healthcare.. by pstreck · · Score: 0, Redundant

    This is quite amusing, but a software bug in my field can result in patients lives being lost. It's kind of scary sometimes :)

    --

    Later,
    Phil
    1. Re:especially important in healthcare.. by Malc · · Score: 1

      Ummm, why's it "quite amusing" when "a software bug [...] can result in patients lives being lost"?

    2. Re:especially important in healthcare.. by pstreck · · Score: 1

      misunderstood, the bug page was quite amusing not the patients lives being lost.

      --

      Later,
      Phil
    3. Re:especially important in healthcare.. by sisukapalli1 · · Score: 3, Insightful

      I believe more patients' lives are lost because of mistakes by doctors/hospitals/nurses, or sheer negligence. In some parts of India, for example, private hospitals are afraid to admit victims of accidents or crimes because the hospital itself might get into some trouble. Personally, I have seen doctors giving stupid advice, and people losing lives.

      To put things in perspective, fatalities caused by human errors (non programming related) outnumber those caused by software errors by orders of magnitude, in many fields (except, say in launching unmanned space vehicles).

      S

    4. Re:especially important in healthcare.. by servanya · · Score: 1

      Ok, I will explain.
      He was talking about the /. story being amusing....then he went on to say "but it's not amusing in my field". Comprende?

    5. Re:especially important in healthcare.. by Anonymous Coward · · Score: 0

      Couple of years ago, I heard about a bug in an X-ray machine that caused the beam to be full on and it caused massive burning on some poor woman, all because the operator pushed a few buttons at the same time or something lame like that.

      Unbelievable!

    6. Re:especially important in healthcare.. by Tsian · · Score: 1

      Personally I would find it hard to have any loss of life from a unmanned spacecraft...

    7. Re:especially important in healthcare.. by jweatherley · · Score: 1

      Ok here's a scenario: Bug in software causes craft to explode shortly after take-off a la Ariane 5 but unlike the real Ariane 5 the debris lands on a populated area.

      Also unmanned launches may be carrying payloads with nuclear reactors - the Voyagers for example - and you wouldn't want one of them to be in your exploding launch vehicle.

      --

      --
      Reverse outsourcing: it's the future
    8. Re:especially important in healthcare.. by Anonymous Coward · · Score: 0

      It's true that more patients' lives are lost because of human error in absolute terms, but I'd be interested to see what the ratio of human decisions/patient loss is compared to computer decisions/patient loss. Is human error more of a culprit simply because humans make most of the decisions in healthcare?

    9. Re:especially important in healthcare.. by D43m0n_C0d3r · · Score: 0

      Ahh yes, the good old fear-mongering about "nuclear reactors" in space... You do realize that the Voyagers didn't have reactors, they had radioisotope generators. Basically, this is a *small* radioactive heat source drives the generator. Not a large flakey reactor. This small generator can be made pretty damn indestructable (blackbox anyone?)

      --
      ^_^x
    10. Re:especially important in healthcare.. by ComaVN · · Score: 2, Funny

      Yes, crashing planes and scuds hitting army barracks are funny, but patients losing their lives is not.

      --
      Be wary of any facts that confirm your opinion.
    11. Re:especially important in healthcare.. by Twisted+Mind · · Score: 1

      For this reasons, Rockets are always launched above unpopulated areay like a desert or above a ocean. The Ariane also had a mechanism that automatically self-destructed it automatically when it began to drop.

      --
      (-% TwistedMind %-)
  4. 15 out of 44 by FortKnox · · Score: 0, Funny

    Lets see I was on 15 out of the 44 projects there. Not bad, eh?

    Currently, I'm working on a system to contain virus outbreaks so scientists can study virii within major cities...

    --
    Good quote, too many chars. Seriously, the slashdot 120 char limit sucks!
  5. can it be made mandatory and legal by Anonymous Coward · · Score: 0

    debugging
    (fp)

    1. Re:can it be made mandatory and legal by krujos · · Score: 1

      then we would have to put sergon genral warnings on software boxes...
      "Using this software impose a serious health risk. Do not use while pregnant"

  6. Looking over the list by SplendidIsolatn · · Score: 3, Interesting

    The surprise isn't how many situations have cropped up because of software bugs, but rather how few. If you think of all the things that code is written for, and yet there hasn't been any major 'disaster'. Yes, the deaths and accidents are tragic, but on the grander scale of things, it's amazing that nothing truly catastrophic has happened.

    --
    sig--we don't need no goddamn sig
    1. Re:Looking over the list by krujos · · Score: 1

      How many things could really happen that would qualify as major? Most huge disasters are the natural disasters. Glad I work on a project that cant possibly kill people

    2. Re:Looking over the list by Anonymous Coward · · Score: 0

      If you think of all the things that code is written for, and yet there hasn't been any major 'disaster'.

      Some code is more thoroughly debugged than other. Ideally the probability of failure times the cost of a failure should be a (low, acceptable) constant. So the code running your local nuclear reactor is better tested than the code animating your office assistant.

    3. Re:Looking over the list by jgerman · · Score: 2

      Umm define catastrophic, because I define it as loss of life. I'm sure the fly-by-wire Airbus passengers who went down would consider it catastrophic, or the medical patients that recieved lethal doses of radiation. If you don't think death due to a bug is catastrophic send me your resume, I have some dosage control software I need a test subject for.

      --
      I'm the big fish in the big pond bitch.
    4. Re:Looking over the list by spectecjr · · Score: 1

      So the code running your local nuclear reactor is better tested than the code animating your office assistant.

      ... you hope :-)

      Si

      (actually, I should take that joke back... I know a few people who write code to run nuclear reactors... :-))

      --
      Coming soon - pyrogyra
    5. Re:Looking over the list by Drachemorder · · Score: 2
      actually, I should take that joke back... I know a few people who write code to run nuclear reactors...

      Homer Simpson?

    6. Re:Looking over the list by tumbaumba · · Score: 1


      Glad I work on a project that cant possibly kill people

      Never say no. :)

    7. Re:Looking over the list by Anonymous Coward · · Score: 0

      No?

    8. Re:Looking over the list by Anonymous Coward · · Score: 0
      Also missing:
      • 2002 - Lameness filter allows three (3) letter post.
    9. Re:Looking over the list by (outer-limits) · · Score: 1

      I think that as much as possible, software bugs are covered up. There are a lot more we never hear about, plus many applications are so buggy they never see the light of day.

      --

      Microsoft - Where would you like to go today, Maybe Jail?

    10. Re:Looking over the list by Anonymous Coward · · Score: 0

      Actually, this is probably because many critical software applications that deal with human safety also have mechanical/electrical failsafes built into them.

    11. Re:Looking over the list by Tony-A · · Score: 2

      Define catastrophic.
      (Any) loss of life doen't work unless you are willing to ban automobiles, and even then you have problems, even with walking.
      Methinks that catastrophic carries the sense of a profound change in the choices of the survivors. If the odds are better with computer than manually administered dosage, unfortunate is maybe a better term than catastrophic. Would it be any less "catastrophic" if it were administered manually and the patients died because it wasn't quite accurate enough. Not an excuse for the bug, but catastrophies are big in scope.

      Black Death maybe qualifies.
      Smallpox II.
      Another asteroid, like 65 million years ago.
      Yellowstone blows its top again.
      Time bomb in (almost all) antivirus software. Clobbers BIOS and runs monitors so they burn up.
      Something small but the effects keep getting bigger as they cascade. For want of a nail type of thingee.

    12. Re:Looking over the list by Tony-A · · Score: 2

      I know a few people who write code to run nuclear reactors...
      But do you know the people who wrote code to run Clippy?
      Now really, would you trust Clippy to always open that valve on time?

  7. wha? by Anonymous Coward · · Score: 0

    the scud caused the deaths of the soldiers. the patriot just failed to stop it. fool.

  8. use my excuse... by bje2 · · Score: 1, Offtopic

    but it worked on my computer...

    --

    "Facts are meaningless. You could use facts to prove anything that's even remotely true." - Homer Simpson
  9. Millennium Bridge by rde · · Score: 4, Interesting

    I'd take issue with the inclusion of the London Millennium Bridge; that wasn't so much a failure of software, but a flawed model, that failed to take into account the effects of swaying pedestrians. After it was rectified, there were new data - never used in any bridge model - incorporated into such models so that it won't happen again. That's science; not a bug.

    1. Re:Millennium Bridge by slittle · · Score: 1

      Why is it not a bug if it's hardware? Software that fails to protect against the unknown is still labelled as buggy - you don't complain about society because someone did something the programmer(s) didn't expect.

      --
      Opportunity knocks. Karma hunts you down.
    2. Re:Millennium Bridge by rde · · Score: 2

      you don't complain about society because someone did something the programmer(s) didn't expect.

      This looks like it could turn into one of those really annoying semantic arguments. But what the hell.

      I don't consider flaws in mathematical models to be bugs; models, after all, simulate reality; this is something they can never do perfectly. Therefore all models are flawed. Are they all buggy? I'd contend that they aren't. Any model is continually in a state of refinement. When something that never occured to you actually happens, you include it. Until that unanticipated phenomenon happens, it's unreasonable to expect its inclusion.
      You could maintain that the model was buggy because it didn't predict the swaying. I don't think that this is the case, however; the model was complete as far as the state of the art at the time was concerned. That state of the art has since moved on; any models that now fail to take the new phenomenon into account may be described as buggy, but I still prefer 'incomplete'.

    3. Re:Millennium Bridge by dachshund · · Score: 2, Funny
      I'd take issue with the inclusion of the London Millennium Bridge; that wasn't so much a failure of software, but a flawed model, that failed to take into account the effects of swaying pedestrians

      Pedestrians were also asked not to sway anymore.

    4. Re:Millennium Bridge by not_cub · · Score: 2
      That's science; not a bug.

      Actually the phenomenon of resonance is well documented in science. Engineering involves disgarding the pieces of science that are unimportant. For example, most of quantum theory can be ignored when modelling a bridge, which simplifies things a bit. In the case of the millenium bridge, they oversimplified, and ignored the horizontal force exerted by people walking, which is what caused the swaying. So this is not science, not software, just an engineering error.

      not_cub

      --
      q='echo "q=$s$q$s;s=$b$s;b=$b$b;$q"';s=\';b=\\;echo "q=$s$q$s;s=$b$s;b=$b$b;$q"
    5. Re:Millennium Bridge by morbid · · Score: 0

      There are too many of us drunk Jocks in the London area for that to be practical.

      --
      I'm out of my tree just now but please feel free to leave a banana.
    6. Re:Millennium Bridge by naasking · · Score: 1

      For example, most of quantum theory can be ignored when modelling a bridge, which simplifies things a bit.

      lol. Just a bit? :-)

    7. Re:Millennium Bridge by Anonymous Coward · · Score: 0

      I don't consider flaws in mathematical models to be bugs; models, after all, simulate reality; this is something they can never do perfectly. Therefore all models are flawed. Are they all buggy? I'd contend that they aren't

      Well, when you say models are "flawed", we're really talking about two totally different types of "flawed". Yes, all models are "flawed" in the sense that they are simplifications of reality. But the key here is error margins. In engineering, models are measured by their output error, i.e. the difference between their output values and actual values that would be produced in reality. A model is not *considered* flawed if the error margin is understood, is predictable, and is small enough to be negligible. If your model can be shown to have an error margin of less than some specific percentage, then the model is an acceptable one, and engineers are aware of the existence of the error, but they understand that it doesn't matter (and why it doesnt matter). It does not mean thought that the model is 'incomplete', because the model is there to serve some purpose with some allowable error, and it does exactly that - there is no desire to further refine the model because there is no point (i.e, if your models allow you to build skyscrapers without factoring quantum theory or relativity into the equations, then there is no desire or purpose to including these things, you'll just be doing a lot more work to get your error from say 0.00001 to 0.0000001, when really it can anyway be shown that the building will stand safely with an error of 0.001).

      The *other* type of "flaw" is really the only one considered a "flaw" generally, and thats when the model is either missing something entirely ('incomplete'), or is simply incorrect (has a 'bug'). In the millenium bridge case, it would seem that their model was incomplete.

    8. Re:Millennium Bridge by a_n_d_e_r_s · · Score: 1


      For example, most of quantum theory can be ignored when modelling a bridge, which simplifies things a bit.

      lol. Just a bit? :-)


      Well maybe two bits.

      --
      Just saying it like it are.
    9. Re:Millennium Bridge by Anonymous Coward · · Score: 0


      >>> For example, most of quantum theory can be ignored when modelling a bridge,
      >>> which simplifies things a bit.

      >> lol. Just a bit? :-)

      > Well maybe two bits.

      How about qu-bits?


    10. Re:Millennium Bridge by Anonymous Coward · · Score: 0

      Actually they did not ignore the horizontal force, they just presumed that on average it would cancel out as some people would have their right foot down as others had their left one, etc. In fact it was found that when the very slightest sway started, everyone began to walk in step with it, which obviously increased the effect - positive feedback.

      Although the bridge was still safe it was not very comfortable to walk on apparently.

  10. That's expected by essiescreet · · Score: 1

    Yeah, I work on projects for some big companies, and they expect bugs. It's a given fact when you get software, you get bugs, period. Your reputation depends on how you deal with them, and how severe they are. Do any of you get surprised about a bug in something that you get?

    1. Re:That's expected by jeffy124 · · Score: 1

      they're expected yes, but some of these were so easily avoidable and were also in high profile applications. You're right about the reputation - the MArs Explorer several years ago went off course or something due to an english/metric conversion problem. The bug was known to exist before takeoff (ie, it was in a bug tracker).

      --
      The One Rule Of Chess You'll Ever Need: Don't play someone who carries a kit in their bookbag.
    2. Re:That's expected by Vanders · · Score: 1

      Do any of you get surprised about a bug in something that you get?

      As a software tester, I'm not. In fact, my manager gets downright nervous if I don't find at least 5 bugs in a release. She thinks I havn't been doing my job...

  11. Re:And no one will ever know... by Anonymous Coward · · Score: 0

    I seem to remember PowerBook 3500C was known to catch fire. Not a bug, per se, but it could have killed somebody. I know I almost threw mine out the Window and that could have caused serious damage.

  12. Translation? by teslatug · · Score: 1

    Anyone got a translation? Altavista choked on it.

    1. Re:Translation? by univgeek · · Score: 1

      May be cos it IS in English? ;-)

      --
      All bow to his Noodliness!! His Noodle Appendage has touched me!
    2. Re:Translation? by teslatug · · Score: 1
      "17. Thunderstorm "Lothar", Berliner Morgenpost, 27.1.2000 Kaum ein Lueftchen regte sich am zweiten Weihnachtsfeiertag des Jahres 1999 am Bodensee..."
      English is not my native language, but the above does not appear to be english.
    3. Re:Translation? by Anonymous Coward · · Score: 0

      engineers only argue when we know we're right, its entertaining to watch people dig themselves in deeper.

  13. Good, it's got my favorite! by Anonymous Coward · · Score: 0

    The Therac-25. Now THAT was a scary machine. I'm willing to put my life in the hands a doctor, but a bunch of underpaid, undertrained programmers who don't understand how critical a bug can be? No thanks!

  14. speaks more to TESTING by teambpsi · · Score: 5, Insightful

    It really amazing how many software project managers that don't fully understand what regression testing is all about.

    Software engineers simply cannot be trusted to do more than small unit level testing! We get into a pattern of behavior, we know what to expect, and simply do not stress test the system.

    Thats why I like hiring sales people and 2-year olds to test my code at the unit/integration level.

    --

    Old age and treachery almost always overcome youth and skill.
    1. Re:speaks more to TESTING by huckda · · Score: 1

      During college I was the tester-of-code
      for a CS friend of mine. Each time he had
      an assignment I would be fruitlessly hanging out in his room and volunteer to see if his code was "bug-proof".

      All this did was to make him an even MORE anal programmer...and thus when teaching me how to code, making damn sure I knew how to do it CLEANLY.

      --
      "Just Smile and Nod." --Huck
    2. Re:speaks more to TESTING by fruey · · Score: 1
      Thats why I like hiring sales people and 2-year olds...

      Be careful. Employing 2 year olds is illegal in many states.

      --
      Conversion Rate Optimisation French / English consultant
    3. Re:speaks more to TESTING by dgb2n · · Score: 3, Informative

      Testing is critical.

      Others would argue that testing alone may not suffice. Particularly for these kinds of mission critical applications, nothing short of formal methods of software engineering will suffice. Formal as opposed to natural language specifications can reduce ambiguity. Safety conditions can then be derived and verified through rigourous mathematical proofs.

      Of course none of this obviates the need for testing but it can lead to a more predictable system.

    4. Re:speaks more to TESTING by billnapier · · Score: 5, Funny

      Thats why I like hiring sales people and 2-year olds to test my code at the unit/integration level

      You didn't need to repeat yourself

    5. Re:speaks more to TESTING by Junks+Jerzey · · Score: 4, Insightful

      It really amazing how many software project managers that don't fully understand what regression testing is all about.

      Not in important fields like telecom. In those fields you live and die by testing, and you can be held accountable for bugs found in your code. If there are too many, you might be in for it.

      What's shocking to me is that almost no open source authors or advocates give a hoot about automated testing of any kind. The only free software I've found with a test suite is gcc. As much as I hate to say it, there's a good chance that the relative inexperience of most open source authors is a factor here.

    6. Re:speaks more to TESTING by Anonymous Coward · · Score: 0

      I give a hoot. I just don't do it. It takes discipline to keep a good test suite.

    7. Re:speaks more to TESTING by slamb · · Score: 5, Informative

      What's shocking to me is that almost no open source authors or advocates give a hoot about automated testing of any kind. The only free software I've found with a test suite is gcc. As much as I hate to say it, there's a good chance that the relative inexperience of most open source authors is a factor here.

      Perl is really good about this. The Test::Harness and Test::More modules make it very easy to write test suites, so CPAN modules have lots of automated tests. It might even be a requirement to get a module into CPAN; I'm not sure.

      PostgreSQL has regression tests.

      There's a really nice test environment for Java code called JUnit. Lots of stuff is using it. Lots of articles about how to write effective tests. There's a project to develop mock versions of common objects (servlet requests, SQL queries) that fail in interesting, predefined ways. I'm using a C++ workalike called CppUnit in one of my projects.

      The Boost code has automated testing.

      There's a project called qmtest.

      The Wine people have recently started using regression tests.

    8. Re:speaks more to TESTING by Zueski · · Score: 1

      Actually, I was installing some Perl modules for my mp3 jukebox (gc netjuke) and found many of them had 'make test' as part of the standard installation instructions.

      --
      please don't feed the monkey
    9. Re:speaks more to TESTING by qslack · · Score: 5, Funny

      What do you have against 2-year-olds!? That was simply uncalled for.

    10. Re:speaks more to TESTING by Kidbro · · Score: 3, Insightful

      What's shocking to me is that almost no open source authors or advocates give a hoot about automated testing of any kind. The only free software I've found with a test suite is gcc.

      Bullshit

    11. Re:speaks more to TESTING by rutledjw · · Score: 2
      Not in important fields like telecom
      Really? I knew a person who worked on the DSL project at Qwest (when DSL was BRAND new). She told me they did integration with another portion of the system and rolled it out without testing it since Qwest had told customers that DSL would be rolled out on that day. Then it was the standard process:

      • Deveopers protest
      • Developers ignored
      • System crashes (within 5 minutes, although the fact that it came up I thought was impressive)
      • Developers blamed
      I'm sure that wasn't a common occurance. Although as a Qwest DSL customer it cleared up a lot for me...

      ;)

      --

      Computer Science is Applied Philosophy
    12. Re:speaks more to TESTING by Anonymous Coward · · Score: 0

      why don't they have this kind of humor in newspapers? sigh.

    13. Re:speaks more to TESTING by Fweeky · · Score: 2

      > Perl is really good about this. The Test::Harness
      > and Test::More modules make it very easy to write
      > test suites, so CPAN modules have lots of
      > automated tests.

      Ruby also has a number of unit test frameworks which are used by a surprising (or not, depending on your PoV) amount of software written in it.

      ruby <name_of_library.rb>, and fairly often you'll see it run some unit tests that were wrapped in an if ARGV[0] == __FILE__ block.

    14. Re:speaks more to TESTING by chromatic · · Score: 1
      It might even be a requirement to get a module into CPAN; I'm not sure.
      It's not a requirement, but it is highly recommended (and easy) . If you add a new feature to Perl or fix a bug, tests and documentation are both required.
    15. Re:speaks more to TESTING by 0x0d0a · · Score: 2, Insightful

      Regression tests are no fun. Open Source is about having fun writing software.

      The easier the test-suite-making-tools are, the better.

    16. Re:speaks more to TESTING by Anonymous Coward · · Score: 0

      Not in important fields like telecom. In those fields you live and die by testing, and you can be held accountable for bugs found in your code. If there are too many, you might be in for it.

      This is funny (i.e. it is sad and did not happen to you).

      Here are my notes about "test time" from when I was working at a small telecom company. If they get boring, skip to the end for the punch line.

      Me - me
      SuperDude - my boss
      WhipIt = my boss' boss
      WiseGuy - a telecom guru
      CowBoy - a lab person
      Shaman - a database guy
      Pearl - a web mistress
      DrKnow - a really smart lab guy

      I'm not listing all of the frustrations I encountered, just the camel-back-breaking straw ones.

      Episode I: I Am Tested

      Testing is important. They tell us testing is very important. We have a single test harness.

      Three months ago there was a meeting where we WhipIt told us we weren't testing, and that we needed to test more. I wrote him with the reasons why we needed a testing protocol (signup, configuration, restoration, etc.).

      Two weeks ago my testing got impacted and I wrote to WhipIt again.

      This morning I went to test. Somebody called me on the way I was setting it up. I went and checked with WhipIt. Surprise! The "rules" have changed. I had previously and explicitly asked "Do we keep a 'blessed' configuration (that you save around your own testing)?". The "no" answer I got then was now a "yes" answer. I was destroying the "blessed" configuration because nobody had told me the "protocol" changed.

      So I have to check the configuration to see if I can use it as-is, or to know what to restore it to. There is no record of the "blessed" configuration. Why don't the blessed people doc their config so that everybody else doesn't have to discover it anew each time back-level testing is done?

      Let's start with the wiring to/from the machine SOMENAME. The first cable bundle I track down has no identification on it. It goes under the floor. I assume it goes to the part of the patch panel labelled SOMENAME. There are FIVE cables in the machine's bundle and FOUR cables on the patch panelette. Where's the fifth cable?

      Give up. Go get help. It turns out that the cables no longer go to the labelled panel. They now go to an unlabelled part.

      I want to cry. Improvise, adapt, overcome. Fuck it. I'm going to send the customer untested code.

      Episode II: Et Tu, Bluto?

      I went and put post-it note labels on the panels so that others are not confused.

      This morning I had to test again. Let's trace down the wiring and see if I can use it as-is. I go ask CowBoy if I can put labelling on the unlabelled cables that I encounter as I trace them down. Again, this is so that others are not confused. He says "sure".

      There's a matrix that is configured over a serial line. I trace the line to where it goes into a box named BLUTO. Good, now I can get on BLUTO and fire up a terminal emulator and look at the matrix config. I set the Keyboard/Video/Mouse switcher to BLUTO.

      Time passes. So does my cheery disposition. You can't talk to the matrix over the serial port.

      I give up. As I am cleaning up after myself, I see an error message pop up saying that the box is duplicately licensed. Might as well track it down.

      So it turns out the duplicate license is on a machine whose uname/DNS is (sigh) BLUTO2.
      The box I need has BLUTO stickers on the front and back.
      If you switch the K/V/M to BLUTO, you get the box NAMED BLUTO, but not the one with the BLUTO stickers.
      There is no button on the K/V/M switch labelled BLUTO2.
      It turns out that to get to the BLUTO labelled box (which is really named BLUTO2), you press the K/V/M button that has the notation SHEMP.

      This revolts me. Tell me. Tell me. Tell me. Is it me? Is it them? What?

      Episode III: I Am Debased

      I fixed the K/V/M button labelling. WhipIt sets up a test configuration that will work. Okay, testing fidelity is not my responsibility now.

      Test.

      Gotta change some entries on the database server named "Dcmt21bee". You use a browser for doing this.

      Point the browser to "http://Dcmt21bee". Nogo.
      Try variations. None work.
      Try "Dcmt21". This works. Update. Test. No sign of the change. Ergo, web server must have been for a different database.
      Search e-mail archives. The only hit is a message that says "don't use Dcmt21 for Dcmt21bee maintenance".
      Ask Shaman. He says "Dcmt21bee". I bite my tongue and go try it again. Still no joy.
      Go back to Shaman. He says ask Pearl. But Pearl had to leave early today.
      Ask Superdude. He says use the low-level utilities. I say I will if he will tell me in what table the stuff I need is kept. I point out that if he doesn't know either, we can get the info from the web server IF WE KNEW WHERE THE WEB SERVER WAS!
      So Superdude says try "devdeebee". I do. This seems to work. I try to apply my update.
      I get a web server internal error.

      I give up. Ship under-tested code or call it off? Luckily somebody else calls it off for some reason.

      Episode IV: Horrible Mentions

      WhipIt asked everybody "What do you need?". I replied with a written request for some sort of order/discipline/structure/protocol/process/manage ment/control be placed on the test facilities.

      Episode V: Belief in an Uninterruptible Power

      We had a power failure last night. The machines got cycled.
      I went in to run a test this morning. Couldn't get one part of the system up in order to test. Tried a bunch of stuff.
      Need to track down the cabling to see where the fault lies. Quelle surprise, they cables aren't labelled.
      I go get DrKnow for help. He tracks down lines and says "Here's your problem - you are going through a part of the rack that got knocked out by the storm - it's been broken all day". No, no sign, no e-mail, no notice.

      I immediately went to my desk and sent Superdude an inquiry as to the proper job code for "totally fuckin' wasted my damn time".

      My primary theory is that I am working off karma debt. Secondary theory available upon request.

      Episode VI: The Mouse that Roamed

      Somebody asked me a question about how something worked. Since we were in the lab, I took him over to the big test machine to show them the answer.
      There was no mouse on that machine. There used to be one. Somebody grabbed the mouse from the big test machine.
      There are free mice in this building. There are mice on less critical machines. It was more convenient to break the test equipment, regardless of impact on multiple others.

      I got a phone cord, two pushpins, a whiteboard eraser, and a magic marker. I assembled them into a pseudo-mouse and wrote MOUSE on it. I placed it where the missing mouse belonged. I wrote everybody that my "0 dpi" mouse was a temporary measure until the real one got returned.

      Nobody ever said anything. That's a lie - one person sent me instructions on how to use the accessability keyboard features. The real mouse never got returned. This was not a fumbled repair. This was evil.

      Episode VII: Blessed people were testing using two-week old telnet sessions with two-week old configuration settings. Then somebody went and changed the config. If you were using the two-week old session, everything worked. If you started a new session you got the new config and it did not work. Much hilarity was had by me until I figured out what the problem was. When I e-mailed it around, the config got silently changed back.

      Episode VIII: Can't test because I can't build. Can't build because the "good" souce in version control is "bad".

      Episode IX: Are You Talkin' To Me?

      Each time I encounter testing problems, I write WhipIt about them.

      One day he sends an e-mail to everyone. Part of it says "everybody asking about getting policies and procedures, please be patient, these things take a long time". I assume he is talking about me, and accept the gag order. No more e-mails about testing from me.

      Episode X: Lock Mess Monster

      WhipIt said "As far as I'm concerned, if you walk into the lab and nobody is standing in front of the test machine, it's yours". I started instituting using the Windows screen lock so you could take a bio-break and not lose your test setup. People were actually starting to adopt and honor it.

      One of the programmer's added a joke person to what turned out to be a customer's production database. It was traced to the test machine. Marketing went and had Development put screen saver locks on the test machines so that they wouldn't be left "open" all the time.

      Yes, we know the password. But now it is impossible to distinguish between an available test machine that's been idle for 10 minutes and an engaged test machine whose operator is temporarily answering the call of nature.

      Episode XI: I Am Stupid

      I told WhipIt that I was having trouble getting test time and might have to skew my shift to get things done.

      I stuck my head into the lab yesterday and found the test machine unmanned. I went to my cube for my walkman and binder. When I got back, someone had grabbed the test box. My own fault.

      Went to my cube. Read slashdot. After awhile I heard the guy who had been testing return to his cube. So I headed back to the lab. Passed by WiseGuy. Heard him say something about going to test. I informed him that, no, he was not. We compared duties, and sonofagun, he had the larger priority.

      I released my claim in exchange for an agreement that he wouldn't let anybody else get it except me. WiseGuy said he expected to be done near the end of the day (yesterday).

      This morning he told me he wasn't done yet because he was waiting for somebody else to finish THEIR testing. I pointed out that this means that I had gone from the front of the line to third place.

      I then asked WiseGuy to tell WhipIt about this screwed-up situation and try to get some sort of resolution. He needed to do it, I told him, since I was gagged (I think I might be, not sure). He said he would.

      A short time later everybody got an e-mail from WhipIt with the subject "Test Facilities". I got really excited. It looks like some order is going to appear in the chaos. I read it. It says "if you want to skew your shift to do testing, tell your boss". Again, my own fault.

      That afternoon, a bad customer bug showed up. Resolution top priority. I was only about 20 minutes into what appeared to be a long debugging session, when WideGuy walked into my cube. He told me that the test machine was now available for me to use. Perfect.

      Episode XII: There actually are test sessions where everything goes smoothly (or at least relatively so).

      Episode XIII: Two More Pages of Notes That I Am Not Typing In

      Episode XIV: Truce and Consequences

      I wrote WhipIt a surrender letter. Basically, I said I had a very negative reaction to the choices allowed under the current testing setup. I didn't think there was anything good for anybody in that, so I was working on my reaction. I asked for something that would be helpful to me. I would react better if I understood the principles at work in our current setup. Help me see the payoffs in this organization's behavior. Yada yada blah.

      WhipIt then sent an e-mail to everybody that said he was going to give another try to the problem of how to test.

      For months I generate "this is screwy, we need to fix this" messages, and nothing happens.
      I say that I give up, and they say "we're gonna fix this".

      Then I get laid off.

      THE END

    17. Re:speaks more to TESTING by nygeek · · Score: 1
      Back in the mid-80s I started a project to reimplement a testing system for a major semiconductor manufacturing company. They'd built their test language interpreter 25 years before in mainframe assembler and relied on it heavily. Unfortunately, between the bizarre network of micros and minis and the weird batch scheduler on their mainframe, the turnaround time to analyze a megabyte of test data was about six hours. They called me in to evaluate a plan to put micro-mainframes out on their manufacturing floor to run the test system to speed things up.

      I noted that the micro-mainframes would cost them a million dollars each and that they could run their testing language on a $5,000 PC (a PC-AT the way they did them cost that in those days). All they had to do was rebuild the test language interpreter using Lex and Yacc.

      So they hired me to implement their test language interpreter in Lex and Yacc on a little UNIX system that they got for me, which took about a month. Once I had it basically working, I went over to the head of the development team that supported the mainframe implementation and asked her for her regression test suite.

      She didn't understand my question, but I wasn't fazed, since the company was very big and had its own terminology for everything. So I explained the use of a regression test suite and how I wanted to use it to validate my implementation of her test language. I figured she'd say, "Oh, you mean the ZXZ Box," or something like that and I'd have what I needed.

      She said, "Gee, what a great idea!"

  15. another bug page by blooher · · Score: 5, Insightful

    Software Horror Stories linked from the post's link

    1. Re:another bug page by Mr.+Marabou+Man · · Score: 1

      Yikes, nasty colors .... besides, half of the links are dead :/

    2. Re:another bug page by misfit13b · · Score: 1

      Aaag! Nothing's more horrible than the color scheme on that page!

    3. Re:another bug page by Anonymous Coward · · Score: 0

      Speaking of software bugs, what bug lead to that
      color scheme. It can't possibly be intentional.

    4. Re:another bug page by Fizyx · · Score: 1

      One of my faves, "94. Rumor has it that a military plane flipped over when crossing the equator." Imagine the pilot, "WTF!..." According to this list, not a rumor, but it "was caught in simulation".

    5. Re:another bug page by Dr.Ruud · · Score: 1
  16. Hi-tech toilet swallows woman by DeadSea · · Score: 5, Funny
    Of all of them this is my favorite. It doesn't say if it was a software bug or not though.
    [Source: Article by Lester Haines, 17 Apr 2001, via Brian Randell]
    A 51-year-old woman was subjected to a harrowing two-hour ordeal [on 16 Apr 2001] when she was imprisoned in a hi-tech public convenience. Maureen Shotton, from Whitley Bay, was captured by the maverick cyberloo during a shopping trip to Newcastle-upon-Tyne. The toilet, which boasts state-of-the-art electronic auto-flush and door sensors, steadfastly refused to release Maureen, and further resisted attempts by passers-by to force the door. Maureen was finally liberated when the fire brigade ripped the roof off the cantankerous crapper. Maureen's terrifying experience confirms that it is a short step from belligerent bogs to Terminator-style cyborgs hunting down and exterminating mankind.
    1. Re:Hi-tech toilet swallows woman by stephanruby · · Score: 1

      The same thing happened in France. A guy was stuck in there for three days until a maintenance crew found him.

  17. Remember - terrorism is just a NOP away by WillSeattle · · Score: 0, Troll

    In which case Microsmurf should be on the Most Wanted list right up there with the al-Qaeda ...

    It's only FAIR ...

    -

    --
    --- Will in Seattle - What are you doing to fight the War?
  18. Pain & Suffering caused by fatal VxD errors an by mcwop · · Score: 2, Redundant

    the BSOD. I still have nightmares.

    --

    "I don't think it's selfish, to eat defenseless shellfish." -NOFX

  19. Much is very iffy to beaf up list by stoolpigeon · · Score: 1

    A lot of these are not confirmed software problems and there is very, very little in the way of any kind of proof or explanation on the sites linked.

    The shooting down of the Iranian airliner being attributed to a software problem is supported by nothing more than some guy's claim. (I've spent time in the Combat Control Center of a carrier and I think this is bull)

    While looking for the info. on that, I read the airbus crashing at an airshow stuff - no proof just allegations by the person who lost his job because of the incident.

    All ready looking at the other posts I can see this is the case for many other 'bugs'. Interesting but not all too accurate.

    .

    --
    It's hard to believe that's how Micronians are made. Why don't we see it right now by having you both kiss one another?
    1. Re:Much is very iffy to beaf up list by jgerman · · Score: 3, Informative

      Go check out the Risks Forum, links are available from the ACM webpage. There is plenty of proof and explanation for hundreds of software related mishaps. You're obviously looking in the wrong places.

      --
      I'm the big fish in the big pond bitch.
    2. Re:Much is very iffy to beaf up list by blamanj · · Score: 3, Informative

      Blatant karma whoring...

      The risks forum is available as a moderated newsgroup, or you can subscribe to the e-mail version. See the Risks info page.

    3. Re:Much is very iffy to beaf up list by stoolpigeon · · Score: 1

      All I'm saying is the very first 2 items I looked at were completely unsubstantiated. I'm not saying software bugs don't cause problems.
      But when I go to a site and the items that I have personal knowledge of, are in error, that makes me wonder about the others.

      .

      --
      It's hard to believe that's how Micronians are made. Why don't we see it right now by having you both kiss one another?
    4. Re:Much is very iffy to beaf up list by jgerman · · Score: 2

      That may have more to do with the source of your facts than the situations themselves. My mistake though, you came across a little cavalier in your attitude toward potential damage due to bugs.

      --
      I'm the big fish in the big pond bitch.
  20. Re:And no one will ever know... by ultramk · · Score: 2, Funny

    I seem to remember PowerBook 3500C was known to catch fire. Not a bug, per se, but it could have killed somebody. I know I almost threw mine out the Window and that could have caused serious damage.


    I know a lot of people who threw out Windows when they got their Macs...

    Michael-

    --
    You catch enchiladas by picking them up behind the head and holding them underwater until they don't kick anymore -VeGas
  21. Pentium bug in perspective by Alomex · · Score: 5, Informative
    Just to be clear, all processors out there have bugs. The pentium bug is in no way exceptional. The only reason it deserves to be there is beacuse the list is called "a collection of famous software bugs that caused large scale disasters".


    The pentium bug is certainly famous because every idiot and its brother think it is rare for a CPU to be buggy. The second condition in the list is "caused a large scale disaster". This condition is, sadly, also met. It caused a large scale public relations disaster for Intel because once again said idiots thought that a CPU bug is rare.

    1. Re:Pentium bug in perspective by speedy1161 · · Score: 1

      True that all processors have bugs, hell the Ultra Sparc II had One, just one, fixable with a software patch. The key is that Intel rushes commodity stuff out to the consumer market whereas Sun is expected to deliver top-notch carrier class chips, not matter how long it takes.

      Yes, I love Sun.

    2. Re:Pentium bug in perspective by jrstewart · · Score: 3, Informative

      Just to be clear, all processors out there have bugs. The pentium bug is in no way exceptional. The only reason it deserves to be there is beacuse the list is called "a collection of famous software bugs that caused large scale disasters.

      What is exceptional is that instead of just announcing a new erratum (which is what Intel and most cpu makers normally do in such a case), Intel tried to bury the problem, initially denying that it existed and then denying that anyone would ever run into the problem. This really pissed off the numerical computing community and destroyed confidence in the accuracy of intel's floating point unit. That's why it was a public relations fiasco.

      see:

    3. Re:Pentium bug in perspective by Anonymous Coward · · Score: 0

      Ahhh, baseball season has started. The crack of the bat, the taste of a hot dog, and the smell of fresh astroturf in the air...

    4. Re:Pentium bug in perspective by Anonymous Coward · · Score: 0

      Well, I would say it was more than just a public relations disaster for Intel, because they decided to do a recall. That must have been pretty costly.

    5. Re:Pentium bug in perspective by pete-classic · · Score: 1, Offtopic

      GNU is a free (beer) system with a not-free (speech) viral license. Go figure!

      I usually resist the urge to respond to people's sigs, but yours just begs it.

      How could software distributed under the GPL be any more free? Have you read the GPL? Are you aware that it is not an end user license? Are you aware that one needn't agree to the terms in order to use GPLed software in any way he chooses? Are you aware that anyone may sell any peice of GPLed software? Are you aware that the FSF actively encourages people to do so?

      The only "freedom" that the GPL takes away is the "freedom" to restrict other users freedom if you choose to redistribute it.

      Finally, let me address the use of the term "viral" to describe the GPL. The common case is for someone to take a substantial GPLed work and make a few changes and redistribute.

      All the arm waving about a small piece of GPLed code "infecting" a larger work is a smokescreen created by people who don't like the fact that they can't take GPLed software, make minor modifications then sell it as software that restricts users. It is well known that Microsoft took the BSD IP stack (under its "non-viral" license) and used it in several of their distinctly non-free OSes.

      -Peter

    6. Re:Pentium bug in perspective by L1nUx+h4x0r · · Score: 0, Funny

      Then don't use GPL code you stupid fuck. If you want to take my stuff, you better give me your stuff in return. If you don't want to give me your stuff, you should write the whole thing yourself because you are obviously exteremly l33t, or self-delusional.

      --
      The GPL makes software more like your mom. Free and open to all.
    7. Re:Pentium bug in perspective by Alomex · · Score: 2

      How could software distributed under the GPL be any more free?

      Simple: remove the condition that all mods have to be made public.

      Finally, let me address the use of the term "viral" to describe the GPL.

      Let me quote from devlinux.org: The GPL is "viral" in the sense that one cannot combine GPLed work with other work governed by different licenses. If one were to enhance a GPLed work, then your enhancements would also fall under the GPL terms. Like viral marketing.

      One last thing. Please note that I'm not saying Open Source code or even the GPL are bad (in fact I have contributed to Open Source projects myself). My .sig simply points out that the marketing by-line of RMS is, shall we say, inexact.

    8. Re:Pentium bug in perspective by pete-classic · · Score: 1, Offtopic
      Simple: remove the condition that all mods have to be made public.

      There is absolutely not any such requirement. Again, I ask, have you read the GPL? You can check it out at http://www.gnu.org/licenses/gpl.html.

      Furthermore, this is a FAQ.

      To repeat myself, any use of software distributed under the terms of the GPL, to include modification, is not only not disallowed by the GPL, but is explicitly outside of the scope of the GPL.


      Let me quote from devlinux.org: The GPL is "viral" in the sense that one cannot combine GPLed work with other work governed by different licenses. If one were to enhance a GPLed work, then your enhancements would also fall under the GPL terms.


      You certainly can "combine" GPL software with non-GPL, and the use of the word "viral" is clearly pejorative.

      It is true that code covered by the GPL cannot be lifted and distributed under conflicting terms. Is there any license this isn't true of? Can you lift BSD code and remove the authors indemnification or the "advertising clause" protection if there is one? Of course not. The only thing that makes the GPL different than the BSD license in this way is that the GPL vehemently protects the users freedom as well as the(original) authors.

      You can, however, "combine" GPL code by linking, to include compile time linking, with any software under a GPL "compatible" Free license.

      Furthermore, and remembering that your sig levels its accusation at GNU as a whole, a significant portion of GNU's distribution is licensed under the LGPL which may be linked with anything.

      So, if it seems that the "irony" is lost on me, it is only because that irony only appears to exist if you base your perception of GNU on false presuppositions.

      -Peter
    9. Re:Pentium bug in perspective by rabidcow · · Score: 1

      Just to be clear, all processors out there have bugs.

      Now, it's not necessarily true that all processors have bugs. It's much the same as how you can have a "Hello World!" with no bugs a lot easier than you can have, say, an OS with no bugs. You could probably build an OISC processor with no bugs.

    10. Re:Pentium bug in perspective by fishebulb · · Score: 2

      The GPL is giving the right and responsibility that you must make any public modifications available in source. The priviledge the original author gave to the modifier, must in turn be given to the user of the modified software.

      It is a privilege to be allowed to modify source and redistribute it. But you must give that same oppurtunity then. A person complaining about the GPL wants to use someone elses hardwork without restriction. Other licenses exist that allow that. Modify software under those licenses then, and ignore GPL software

    11. Re:Pentium bug in perspective by danro · · Score: 2

      Well, call me old fashioned, but I want my processor to count both faster and more correct than me... ;)

      --

      "First lesson," Jon said. "Stick them with the pointy end."
    12. Re:Pentium bug in perspective by Anonymous Coward · · Score: 0


      You certainly can "combine" GPL software with non-GPL,

      False. You can link intact libraries. You cannot combine code. This is done on purpose, to ensure that Open Source code can only be added not reduced. RMS said so himself.

    13. Re:Pentium bug in perspective by pete-classic · · Score: 2

      AC, you have never been good with details.

      You certainly can "combine" GPL software with non-GPL. That is a true statement. You may link (run or compile-time) with any software under any GPL compatible Free Software license.

      You certainly can "combine" GPL software with any non-GPL. That is a false statement.

      You certainly can "combine" GPL software with proprietary. That is also a false statement.

      Furthermore "You can link intact libraries." is also false when using the assumption that we are talking about proprietary software (which you seem to be), UNLESS the copyright holder has made a "clarification" (commonly known as an "exception") as L. Torvalds has done for the Linux kernel.

      It might help you in the future to 1. read the GPL 2. work on your reading comprehension skills and 3. study the fundamentals of rational though.

      Good luck AC. We're all pulling for you!

      -Peter

    14. Re:Pentium bug in perspective by Reziac · · Score: 2

      AMD also "buried" some bugs, most notably a whole bad batch of K6-2 300MHz CPUs from Sept. 1998. That one, I have personal experience of, and had inside information that it was indeed a known issue. Even so, to this day AMD denies it ever happened, and won't warranty the chip. (Got a K6-2 that linux inexplicably won't run on? That's one of the symptoms.)

      Then there was that recent bug AMD tried to blame variously on nVidia, VIA, and [I forget who the 3rd victim was] before finally owning up to it.

      Anyway, don't think Intel is alone in trying to deny when they have a problem product, or that just because a company is the geek-approved "underdog" they must be 100% honest.

      --
      ~REZ~ #43301. Who'd fake being me anyway?
  22. Uranus by truthsearch · · Score: 1, Offtopic

    Wrong Starting Estimate of Uranus mass

    But I thought Uranus is a hole...

    (Sorry, I just had to)

    1. Re:Uranus by Anonymous Coward · · Score: 0

      Sometimes a massive black hole :-o

    2. Re:Uranus by red_dragon · · Score: 1, Troll

      >>Wrong Starting Estimate of Uranus mass
      >But I thought Uranus is a hole...

      What comes out of it is definitely massive, though.

      --
      In Soviet Russia, Jesus asks: "What Would You Do?"
    3. Re:Uranus by Magisnetworks · · Score: 1

      If you have a mass on Uranus it's usually A Bad Thing (tm).

    4. Re:Uranus by tswinzig · · Score: 3, Funny

      Wrong Starting Estimate of Uranus mass

      But I thought Uranus is a hole...


      Any hole sufficiently big enough is bound to have some mass in there, somewhere.

      --

      "And like that ... he's gone."
  23. One that we did - killing long distance nighty by mesocyclone · · Score: 5, Interesting
    Back in 1973 we built a system for hotel reservations that had over 1000 mini-computers distributed in hotels all over the US. These computers periodically dialed an 800 number in to get outstanding messages (it was cheaper for them to dial in than for us to dial out to them).


    I wrote the algorithm that scheduled the dialins. It used a pseudo-random approach during the day, weighted by outstanding traffic.


    But at night, there was period during which we had to unload all messages before the next day's processing. During this time, the pseudo-random algorithm was replaced by a deterministic one that assigned computers time slots.


    The computers also had auto-rety in the case of failure, so each call could result in several if it were blocked.


    Unfortunately, during coding I had put in the number of modems answering phones at 20 (as an arbitrary number for testing). During the hectic rollout, this never was changed to the actual number which was much smaller.


    Once the system came on line, every night at 1AM portions of Omaha (which included lots of call centers) would lose all long distance service for a couple of hours, as all these computers called in and retried several times.


    Eventually the phone company figured it out and contacted us, and we discovered and corrected the discrepancy.


    Another issue was that we had a number of hotels that were using pulse dialing (this was a long time ago in a galaxy far far away). Sometimes these would be off by one due to the inherent unreliability of pulse dialing, and the result was a lot of calls to certain numbers related to the 800 number, all in the middle of the night.


    BTW... as far as I know, this was the first large widely distributed commercial computing system to use switched telephone circuits for communications (but no doubt some other grey-haired slashdotter knows of another).

    --

    The only good weather is bad weather.

    1. Re:One that we did - killing long distance nighty by tswinzig · · Score: 1

      One that we did...

      And by "we," you mean "you."

      --

      "And like that ... he's gone."
    2. Re:One that we did - killing long distance nighty by mesocyclone · · Score: 3, Informative

      No, it was a we. Someone else knew about the number of lines. They didn't give me the number.

      --

      The only good weather is bad weather.

    3. Re:One that we did - killing long distance nighty by edibleplastic · · Score: 3, Interesting
      We had a similar situation where we accidentally ddos'd our university's engineering school. We were working on a file-sharing service that had over 600 people sharing at any one time. The lead programmer made a change to how the clients and main server pinged each other in order to make it more compatible with firewalls. The way he did it was that the client would send out a ping, the server would catch it, and throw it back, and so on. The problem was that he forgot to set a delay for this.

      One night our system vanished from the web. Our clients couldn't connect, the website was gone, and we couldn't ssh in. Later on we found out what happened. As more and more clients auto-updated to the new version they began pinging the server to alert it to its presence. It in turn responded, and soon it was doing nothing but sending and receiving pings. To over 700 computers. As fast as it could.

      Somewhere between 700-800 clients the router died, bringing with it the internet connection to the entire engineering school. Somehow we were never disciplined and everything was brought back online within the next day or so. Now that's something to put on a resume: Effectively launched a 700+ system DDoS on own university. Now remember kids, make sure you trust the company that makes your P2P software!

    4. Re:One that we did - killing long distance nighty by fantastic · · Score: 1

      Its not just engineers, testers can screw up too.

      We had a similar system, for automated call recovery to stores. Now when testing you don't normally have real phone numbers to experiment, so
      for one test the test guy gathered up numbers
      from folks in the office that would be unanswered during the day.

      Tests fail, test guy goes home.

      Automated software systems redials at a random
      later time. Random time was within 24 hours of last call, ie the early hours of the morning next day.

      Test guy makes lots of new friends when the word
      goes around why they got a 4am phone call from
      a modem.

  24. sure blame the code geeks by Anonymous Coward · · Score: 0

    bah sure this is another attempt from the goveremnt to blame us nerds for doing somthing heh. maybe if theypaid us more they wouldnt get buggy code ahhaha.
    eric

  25. I found the REAL Arianne problem! by saider · · Score: 0, Troll

    They're coding in Ada. Jeez, man use a real language like BASIC.

    --


    Remember, You are unique...just like everyone else.
    1. Re:I found the REAL Arianne problem! by Anonymous Coward · · Score: 0

      Ada is still one of the most powerful, forward thinking OO programming languages around. Just because it has been around for a while, and not as prestigous as prone to standards non-compliance like C++ doesn't mean it is bad.

      I mean, mandatory standards compliance is a good thing.

      Ada has gotten a raw deal. More people need to program in Ada.

  26. NORAD bug by Anonymous Coward · · Score: 0

    Far and away my favourite:

    NORAD defense radar system mistook the Moon for a hostile incoming missile

    They don't say why, but I've heard that it was because they forgot to program in leap years, and thus the moon was in the "wrong" position. Anyone have anything further on this?

  27. links by Lord+Omlette · · Score: 2

    Click on the links, otherwise you don't get all the details. French-friendly exocet missile? Huh? Unless you click through you don't realize that the British radar thought the exocet missile was a friendly munition since the British arsenal included exocets. Any munition headed straight at you is probably not friendly.

    --
    [o]_O
    1. Re:links by scott1853 · · Score: 3, Funny

      Incoming missile sir! What do we do?
      <officer> Don't worry, it's one of ours.
      <private> But sir, it's still going to HIT us!

      This not only sounds like something that belongs in a Dilbert strip, but also the basis for the logic that allows the spreading of all these e-mail viruses.

    2. Re:links by gurudyne · · Score: 1

      From the Laws of Combat:

      The only thing more accurate than incoming enemy fire is incoming friendly fire.

      --
      Hey, Mom! Is it beer, yet?
  28. My prof at Georgia Tech stressed this a lot by delphin42 · · Score: 5, Informative

    He was considering making Fatal Defect required reading for the C programming course I took. From Amazon.com:

    In Fatal Defects: Chasing Killer Computer Bugs, Ivars Peterson describes dozens and dozens of hoary computer bugs and gives biographical sketches of the bug detectives who located and fixed them. This book, which reads like a novel, is both entertaining and informative. Many of the bugs that Peterson discusses are not in computer programs per se but in the human systems that run and operate the computers. Very often the operator fails to understand what the computer program requires as input and types in an incorrect command. The computer then executes the command, with potentially disastrous results. Fatal Defects has important lessons for both those who design computers and those who use them.

    He also insisted that we not call them bugs. "They are ERRORS, calling them bugs makes it sound like they are cute little accidental things that pop up when actually they are programming mistakes."

    --
    -- Adam
    1. Re:My prof at Georgia Tech stressed this a lot by Peyna · · Score: 2

      I bet he's one of those people that refers to automobile accidents as 'collisions'. It's just a term that has been in use so long that we still use it. I'm sure most people know that nearly all automobile 'accidents' are preventable at some point, just like we all know that a bug is the result of a human error. It's just the origin of the word that made it the way it is today. 'Bug' more defines how it appears from the user's perspective. They are seen as odd quirks, etc. It is notable that most people still know where to place blame for them, most of the time (i.e. blaming Windows for a bug in a particular piece of software running on it).

      --
      What?
    2. Re:My prof at Georgia Tech stressed this a lot by Anonymous Coward · · Score: 0

      calling them bugs makes it sound like they are cute

      I don't know how the bugs in Georgia look, but here they are NASTY!

    3. Re:My prof at Georgia Tech stressed this a lot by l810c · · Score: 1
      Hmmm, I Think:

      Nasty little bug

      -not-

      Cute little bug

    4. Re:My prof at Georgia Tech stressed this a lot by Anonymous Coward · · Score: 1, Insightful

      There is a myth that if we were really good at programming, there would be no bugs to catch. If only we could really concentrate, if opnly everyone used structred programming..., if we had the right silver bullets, then there would be no bugs. There are bugs, the myth says, because we are bad at what we do; and if we are bad at it, we should feel guilty...For failing to achieve inhuman perfetorn, For failing to be telepathic, for not solving human communications problems that have been kicked around...for forty centuries. (Mythical Man Month)

    5. Re:My prof at Georgia Tech stressed this a lot by cornflux · · Score: 2
      along the same lines, but aimed at the design and requirements phase of software is The Case of the Killer Robot by Richard Epstein.

      it was required reading in my CS department's capstone class at college... good book, good requirement.

    6. Re:My prof at Georgia Tech stressed this a lot by Waffle+Iron · · Score: 2
      He also insisted that we not call them bugs. "They are ERRORS, calling them bugs makes it sound like they are cute little accidental things that pop up when actually they are programming mistakes."

      When my boss comes around and pesters me about problems with the code, I tell him: "They are FEATURES, calling them bugs makes it sound like they are accidental things that pop up when actually I never make programming mistakes."

    7. Re:My prof at Georgia Tech stressed this a lot by Anonymous Coward · · Score: 0

      I thought the term bug actually arose from problems with large computer systems when insects took up residence, or maybe that's just a geek urban legend...

    8. Re:My prof at Georgia Tech stressed this a lot by Tablizer · · Score: 2

      (* [professor] also insisted that we not call them bugs. "They are ERRORS, calling them bugs makes it sound like they are cute little accidental things that pop up when actually they are programming mistakes." *)

      That is not very good training for the real world. They should teach *more* BS and euphemisms, not less.

      BS is a matter of survival, not luxury. I wish I had more BS classes and less geek classes. The geek technology changes and becomes mostly irrelavent, but BS skills have been nearly the same since Grog tricked Lork into being dinosour bait.

  29. Just a matter of time and growth by sperris · · Score: 1

    As computer systems become larger and take on more important roles, software bugs will cause much larger destruction and loss of life.

    Civil Engineering has been around almost the longest of all engineering and a glitch can wipe out entire towns/cities with floods.

    As the CS field matures and more ambitious projects are undertaken there will be mistakes. But we learn from each one and the advances always outweigh the risks.

    1. Re:Just a matter of time and growth by Anonymous Coward · · Score: 2, Insightful

      Not in todays world.

      You write a program that designs a building that suddenly collapses, but since you copyrighted your program, and patented the logic, I will make the same mistake, since I can't learn from your mistakes.

      People will "learn from other's mistakes" less and less, as more and more become trade secrets, and suits get settled, etc.

    2. Re:Just a matter of time and growth by cicadia · · Score: 2, Funny

      You'd better not -- I patented the logic behind those mistakes; if you even think about making the same mistakes, I'll see you in court!

      --
      Living better through chemicals
    3. Re:Just a matter of time and growth by Tony-A · · Score: 2

      ...undertaken there will be mistakes. But we learn from each one ...
      Do we?
      With Open Source and well publicized bug lists, maybe, some of the time.
      With Closed Source, surely you jest.

  30. Read comp.risks by kzinti · · Score: 5, Informative

    Make reading the ACM's RISKS digest a part of your regular routine, and you'll hear about these kind of software-related problems and many others - usually shortly after they happen. The RISKS digest is available on Usenet as comp.risks, as a mailing list, and on the WWW at http://catless.ncl.ac.uk/Risks. A new issue is published on a semiregular basis, every one to two weeks. It's not only informative but interesting too.

    --Jim

    1. Re:Read comp.risks by lfourrier · · Score: 1

      It's not only informative but interesting too.

      and even if they are too much aircraft oriented at time, they are often tragically comic.

  31. Happy to hear it... by Anonymous Coward · · Score: 3, Insightful

    Sure, some people here gripe about this not being newsworthy. But as a hardware guy, I am happy to see that software guys are finally going to be held to some sort of standard.

    In electronics, if your hardware has ONE little problem, it's almost bankruptcy time. Remember the Pentium FP bug? And how it would have affected very little? Remember the hoopla, people wanted new processors, etc..

    But software bugs? Who cares! It's NORMAL, it's EXPECTED. Well, geeks and nerds, time to get your asses in gear and live up to the same standards mechanical and electrical engineers have been living up to for decades.

    I'm tired of being held to a standard of perfection that the software people (who make more money than me!) don't even KNOW about.

    1. Re:Happy to hear it... by natersoz · · Score: 1

      Absolutely agree. You tape out with a bug and they'll have you hanging by the nearest tree. You ship a software bug and its expected.

    2. Re:Happy to hear it... by jc42 · · Score: 5, Interesting

      There is one highly relevant difference between the way that we deal with hardware and software. With hardware, inner details, schematics, and the like are usually easily available. Often this is required by law in any critical applications.

      With software, most programmers are writing code to run on systems (kernels, runtime libraries, and the like) that are usually proprietary. The inner details are not just neglected; the companies intentionally keep them secret and prosecute people who leak them.

      As a result, software can't be made reliable, not even in principle.

      We do have a few exceptions, e.g. linux and all the GNU stuff. If *everything* underneath your code is Open Source, then in principle you can examine it and find problems. (It ain't easy, but at least it's doable if your employer will permit the time that it takes).

      But we're facing a major battle just getting Open Source software accepted by a tiny part of the market. In most jobs, you are required to write code for systems whose inner working you are not permitted to know.

      The US government is even using proprietary, binary-only computer systems in secure and mission-critical situations. Anyone who expects the code in such situations to be reliable is either utterly ignorant or actively malicious.

      Myself; I'd welcome rules that make me and other software developers responsible for bugs in our code. If there were such a legal requirement, I could point to it when someone denies me access to the information that I need, and say "I can't possibly write correct code when you are keeping vital information from me. Show me the inner details of these parts of the system, and I'll agree to write reliable code for it."

      Of course, in a couple of cases, when I've gotten my hands on such details, I've proceeded to write a proof that certain things could not be done reliably on that system. "Fix that bug in that library, and I'll vouch for my code. Until then, here's my bug report describing exactly how it will fail."

      Unfortunately, when I've done this, the usual result was that I was looking for another job soon thereafter.

      (One such lost job was when I proved that certain sensors in a nuclear power plant could not be made to work reliably due to their software. But that was 20 years ago; maybe they've fixed it by now. ;-)

      --
      Those who do study history are doomed to stand helplessly by while everyone else repeats it.
    3. Re:Happy to hear it... by Anonymous Coward · · Score: 0

      Hear hear. And I say that *as* a software developer. There seems to be an incredible lack of professionalism in the software industry. Software developers seem to think its cool to just do whatever they want, and that its OK to check in changes without bothering to test them at all (because they're too damn lazy to even test their changes, and end up letting other developers do their work for them - sometimes checking in changes that don't even compile, let alone run!). Fscking cowboy coders.

      If engineers were a tenth as sloppy as software developers, buildings would be collapsing around us, cars would be falling apart, planes would drop out of the sky every day.

      I think its a cultural problem, partially created by Microsoft, who have "set the substandard" for the industry, making it "OK" for software to be shit. But I think Universities and colleges etc could be doing a LOT more to inculcate a culture of carefulness amongst code creators. I suppose though most of the lecturers come from the same cultural cookie cutter as the others.

    4. Re:Happy to hear it... by alouts · · Score: 1

      Ah, but the difference is obviously that with most software if is sucks you can fix it (sometimes in realtime with OSS) and reload it without physically swapping/manufacturing anything. With a processor problem, you've no only got to redesign around the problem, but then fire up the chip fab, and start up the process of replacing physical parts. In other words, software is easily replacable, hardware is not. It may suck, it may be unfair, but to a free market, one is forgivable, one is not.

    5. Re:Happy to hear it... by Anonymous Coward · · Score: 0

      If someone uses your hardware in a way that is not recommended or expected, then you are not normally expected to support it's use in that fashion. Many (if not all or most) software bugs arise from the same problem, people using the software in a way that is not recommended or expected. Sometimes it's just a programming error (by one side or another) and can be fixed. Sometimes it's user error and the programmer can take some steps to make it less likely to occur. Other times you just have to slap someone around and go 'hey, you cant do that!'.

    6. Re:Happy to hear it... by rabidcow · · Score: 1

      If every programmer needs to understand every piece of code in the entire system, the size of systems that can be developed is severely restricted.

      This is why there are defined interfaces between sections of code. You don't need the code behind the interface if the interface is fully documented.

      If the code behind the interface doesn't match the documentation, it's not for you to fix. (ideally) Bugs fixed on the wrong end of the interface just causes more headaches when it eventually is fixed.

      So if you can trust the other guy to fix discrepancies between code and documentation, you have no reason to need the source code. Closed source works fine if the developer will maintain responsibility for errors.

    7. Re:Happy to hear it... by Anonymous Coward · · Score: 0

      OK - No more software for you! Well, actually you
      can still have it, it'll just cost a little bit
      more. Bug free version of Office (Single User Licence): $15,000

    8. Re:Happy to hear it... by jc42 · · Score: 2

      > If the code behind the interface doesn't match the documentation, it's not for you to fix.

      Hey, thanks! That's an incredibly elegant summary of what I was saying. It explains exactly why I can't vouch for the correctness of any of my software.

      (Yeah, I know; you didn't intend it that way. But the fact is you're exactly right. In many cases, even when I know where the bug is, I'm not permitted to fix it. That's the way commercial software development works. It explains a lot.)

      --
      Those who do study history are doomed to stand helplessly by while everyone else repeats it.
    9. Re:Happy to hear it... by Darth_Burrito · · Score: 2

      that its OK to check in changes without bothering to test them at all

      Sometimes it is temporally impossible to test all possible areas your change could have impacted. I've almost never seen anyone actually not do any testing. By the way, you used its when you should have used it's. Sometimes it is more important to get your changes into the source base so someone else can start their work. You don't always have time to check everything.

      sometimes checking in changes that don't even compile

      The vast majority of the time I have encountered a problem like this it is a result of dll hell. Do you have all the latest stuff, have you re-registered any new typelibs? Did some goof register some 2000 specific dll so now it won't work on NT? When you are developing software, you can usually only be sure it will compile on your own configuration.

      If engineers were a tenth as sloppy as software developers,

      In my experience, some of the worst programmers are engineers who routinely have to do a little coding. They tend to write stuff their own way, often reinventing the wheel in the process. They also tend to be overly optomistic. Furthermore, I suspect that Engineers are every bit as sloppy as Software Developers, it's just that they are given enough time to correct their mistakes before release.

    10. Re:Happy to hear it... by Tony-A · · Score: 2

      If every programmer needs to understand every piece of code in the entire system, the size of systems that can be developed is severely restricted.
      That's a bit like having to know every street in a city to be able to go back and forth from home to work. The basic problem is that which subset of the code must be known belongs to the power set, exponentially more complex if you set arbitrary barriers.

      You don't need the code behind the interface if the interface is fully documented.
      It never is. Not fully.
      In say FORTRAN, 2+2 should be 4, but after calling a subroutine with a parameter 2 that gets changed to 7, the result is now 14. I think Ada puts a stop to at least some such, at a price. There's no substitute for being able to find out EXACTLY what is being done.

      Bugs fixed on the wrong end of the interface just causes more headaches when it eventually is fixed.
      Actually I quite agree. Of course you're SOL until (and if) whoever finally fixes the problem on the right side of the interface. If the two sides are never allowed to see on the other side, there's a good chance it will never be fixed. Might as well quit now before you get even further behind.

      So if you can trust the other guy to fix discrepancies between code and documentation, you have no reason to need the source code.
      Bought any bridges lately?

    11. Re:Happy to hear it... by rabidcow · · Score: 1

      That's a bit like having to know every street in a city to be able to go back and forth from home to work.

      Hmm, well I guess it is...

      There's no substitute for being able to find out EXACTLY what is being done.

      Yes, but usually there's a lot of time wasted finding that out which could have been better spent if there were proper specifications and if those specs were met. And what happens if you expect code to work EXACTLY the way it does at one point in time, then it changes?

      If the two sides are never allowed to see on the other side, there's a good chance it will never be fixed.

      Ok, it would be useful to see the conditions that cause the code to fail to meet up with the documentation. Other than that, well obviously there has to be communication between developers, but not necessarily exchange of code.

      Bought any bridges lately?

      Yes, and I gotta tell ya, the shipping charges are outrageous!

    12. Re:Happy to hear it... by sql*kitten · · Score: 2

      The inner details are not just neglected; the companies intentionally keep them secret and prosecute people who leak them.

      As a result, software can't be made reliable, not even in principle.


      I don't see how you can get from your first point there to your second. Take the software in a typical phone switch, for example, it's proprietary and rock solid. If a phone switch goes down, it's most likely a hardware fault, in my experience. The same could be said for any amount of embedded code, when did the software in your cellphone last crash? Your VCR?

      The reason commercial software has bugs is very simply because people (i.e. the market, the people spending dollars on software) have indicated by their purchasing behavior that they are willing to accept a level of unreliability in exchange for shorter version cycles. The same purchasing patterns don't apply to hardware or embedded systems. The fact that the software is proprietary or not is neither here nor there.

      I will also point out that in the high-end software market, the customer will hold the proprietary source code in escrow, just in case.

      If *everything* underneath your code is Open Source, then in principle you can examine it and find problems

      In theory, you're right, but in practice, how many bugs have there been in sendmail or bind? Open source lulls people into a false sense of security, because everyone assumes everyone else has checked it, and no-one actually does! But again, that fact that the source code is available is irrelevant to reliability - properly designed and implemented software, whether it's open or closed source, can be made as reliable as you are willing to invest resources (time, money, people, etc) in.

    13. Re:Happy to hear it... by Rogerborg · · Score: 2
      • But as a hardware guy, I am happy to see that software guys are finally going to be held to some sort of standard.

      As a software engineer, I for one would be delighted to see mandatory legal requirements on software engineering.

      That way, when my latest Bungie Boss swings into the office shrieking that we have to forget everything we've been doing and hack the product completely differently for a new potential customer, I can suck my teeth and say "Ooh, love to, but if you change the requirements, I have to go back to design stage and re-write my test suites. It's the law".

      Or when a module turns up from an Indian sweatshop with uncommented code, one character variable names, no design and no test suite or results, I can just laugh softly and send it to /dev/null.

      I would love to have those protections. But until it happens, I'll go right on doing what I've been doing, which is to hack and slash away in good faith, with no requirements, wrong requirements and changing requirements, and building systems that the sales guys insist on giving to customers, sometimes before we've even done unit testing let alone integration or regression. Yes, I do mean that. I mean a sales guy and my Bungie Boss stand over my shoulder, and when the code compiles and passes a basic sanity test, they take it and integrate it, because dammit, they have stock options on the line here.

      Believe me, I really don't want to write bad software, but right now I'm left with two choices: write bad software to meet the artificial short term goals of my latest Bungie Boss, or join the "mobility pool". I'd love to have legal protection for sticking to my guns. Bring it on.

      --
      If you were blocking sigs, you wouldn't have to read this.
    14. Re:Happy to hear it... by duffbeer703 · · Score: 2

      Perhaps if you took a more mature approach in bringing up problems to management you wouldn't have been fired 20 years ago, the bug would have been fixes, and you probaly would have found others.

      There a few things more annoying than a techie primadonna.

      --
      Conformity is the jailer of freedom and enemy of growth. -JFK
    15. Re:Happy to hear it... by geoskd · · Score: 1
      With software, most programmers are writing code to run on systems (kernels, runtime libraries, and the like) that are usually proprietary. The inner details are not just neglected; the companies intentionally keep them secret and prosecute people who leak them.
      Thats just plain crap. Anyone can read the contents of a bit of code, and reverse engineer it a great deal more easily than reverse engineering the hardware without source code. Additionally, the source code for hardware does not translate into a garanteed working system, since the behavior is modified by all kinds of real world effects which are implementation specific. In theory, Hardware should match the design schematics, but in practice, the last step is allways to build it and cross your fingers.

      With software, the option to read the raw assembler may in fact make more sense than reading the raw source (ever try reading source code written by japanese programmers who don't speak english??? I'll bet you haven't.) In any case, the simple fact is that programmers tend to build smaller projects in far less time, and make a lot of clumsy mistakes because there isn't a good software debug paradigm the way there is for hardware. Programmers chalk hard to track errors down as being just too hard to debug, and leave it at that. If a hardware engineer told his boss that he couldn't figure a bug out because it was too hard, he'd be fired for being too damn lazy to do his job.
      --
      I wish I had a good sig, but all the good ones are copyrighted
    16. Re:Happy to hear it... by Tony-A · · Score: 2

      And what happens if you expect code to work EXACTLY the way it does at one point in time, then it changes?
      Well, .... you could switch to Ada. I'm not at all familiar with it except that the original intent was to stop exactly that kind of thing without overspecifying implementation details.

    17. Re:Happy to hear it... by Anonymous Coward · · Score: 0

      That's simply not fair. I've designed both hardware and software. Including doing some robotics. Software gets more complicated because the complexity of the system if usually pushed onto the software, and the hardware gets the well defined parts. Part of it is that people change software specs a lot more rapidly than hardware specs, because its software.

      Don't get me wrong, programmers have their fare share of the blame. In hardware, you don't dare do something without a good unit test, an integration test, and a system test --- and that's for an FPGA that you can reprogram! Programmers are a lot closer to "it compiles! ship it."

      I've done both commercially, its what I've seen. The people sending up military satellites were a little more concerned than average, mind you, (they're so darn hard to reboot,) but hey, its still software.

    18. Re:Happy to hear it... by Anonymous Coward · · Score: 0

      sometimes checking in changes that don't even compile

      The vast majority of the time I have encountered a problem like this it is a result of dll hell

      Actually, I was literally talking about things like missing semi-colons at the end of a statement, which has happened several times to me at work when getting a latest version. In this case they obviously didn't even bother to see if the change even compiled. I almost never have DLL problems. One other very common problem is checking in changes, but forgetting to add new data files that the changes require to the DB. So I get latest version, am missing some files, and the program *crashes* typically, because their code doesn't even try to handle the lack of that file gracefully (sometimes it is reasonable to check, sometimes its silly to, but in many cases a simple little if statement is enough). Anyway, that is really sloppy, how difficult can it be to learn to remember to add data files? I can understand occasional slip-ups, but when it happens *regularly* thats something else.

      It is often obvious that the person did only extremely rudimentary testing (i.e. compile, run, gee looks OK, close program, check in). I don't buy the "no time to test" argument: if you don't have time to do things PROPERLY, do less, period. Why? Because the problems you CREATE when you don't do things properly (a) cause delays which make the program take longer in the long run to develop and (b) have to be fixed by someone else. (b) annoys me the most, because we have people at work who refuse to work one single second more than 8 hours in a day, will quickly rush in some last-minute changes at 5 o clock, without testing them properly, and leave. And I'm normally the one who ends up working 12 hour days to do THEIR work, fixing their bugs, because they refuse to do any more than the required 8 hours. And *someone* has to do it.

      Sorry, its just plain sloppy and unprofessional.

      I wasn't referring to engineers that do software development by the way, they are often as sloppy as any other coder, and in my experience often worse. I was referring to the engineers that "build stuff", be it electronics hardware, or mechanical stuff. When you send your PC board design to the printers, and its wrong, you can't just change a couple lines and hit "recompile" - so you have to be a lot more thorough.

      What exactly did my incorrect use of "its" have anything to do with anything?

  32. GPL by lostchicken · · Score: 2, Insightful

    GPL raises this to new levels of concern. You can never know where your code will be used. It might just find itself in an cruise missile.

    --
    -twb
    1. Re:GPL by Anonymous Coward · · Score: 0

      Yeah, but at least the source code to the cruise missile would be public!

      Woohoo!

    2. Re:GPL by Anonymous Coward · · Score: 0

      You ignorant fuck. You are wrong. YOU ONLY HAVE TO DISTRIBUTE THE CODE IF YOU DISTRIBUTE THE BINIARY. I hope you hate the GPL, and were making a joke, because, seriously, you are inexcusably stupid.

    3. Re:GPL by Capt.+DrunkenBum · · Score: 1

      Fortunately I don't have to worry about that... My code is too bad to ever be used by anyone for anything... :)

      --

      Not everyone deserves a 320i

    4. Re:GPL by WNight · · Score: 1

      Actually, you could think of the missile as a high-speed binary-distribution system...

  33. ObFrogSlam by Anonymous Coward · · Score: 0

    French-friendly exocet missile?

    The French are NEVER friendly. Rude, yes, but friendly, never.

  34. See..none of its caused by Code written in VB by cOdEgUru · · Score: 2, Funny

    So much for poor Visual Basic Programmers :)

    Damn, they never get to do fun stuff like this.

    1. Re:See..none of its caused by Code written in VB by felipeal · · Score: 3, Funny

      Actually, those caused by VB left no survivors to tell the story...

  35. I can relate by TheGreenLantern · · Score: 2, Funny

    This one time I missed closing an /a tag on a post, and missed getting a wicked killer First Post.

    --

    It hurts when I pee.
    1. Re:I can relate by Anonymous Coward · · Score: 0

      This one time I missed closing an /a tag on a post, and missed getting a wicked killer First Post.

      Rookie.
      That's what you get for showboating.
      You gotta get your "frost pist" in there and get out right away.

  36. Debugging by yintercept · · Score: 2

    I hope you don't mind a little nit-picking. The thread is titled "Debug Your Code." A lot of the problems listed in the article were for errors that occurred in situations outside the parameters that the programmers were expecting.

    I personally see debugging is the art of making sure the code works and is fulfilling the logical expectations of the programmer.

    These problems show that there is a need to go way beyond traditional debugging, and do aggressive testing outside the programmer's box. Debugging ain't enough. Those dregs toiling away in the testing department might be worth their skin afterall.

    kd

  37. Phoenix by The+Bungi · · Score: 2, Interesting
    It's interesting the list includes the Denver airport baggage system breakdown but not the Phoenix Sky Harbor one. A system designed by I forget which consulting firm over the course of three years at a cost of millions of dollars finally had to be scrapped and replaced with custom software done by IBM.

    It delayed the re-opening of the airport for about seven months or so. After it did finally open the system wasn't working yet so the baggage system had to be operated manually for a couple of months.

  38. Worst I've seen in my work by l810c · · Score: 2, Funny

    I was a consultant at a major bank 3-4 years ago. An FTE made a one line error in a Cobol program for printing bank statements. Everyone in a small town of about 6000 got Their first page of statement and pages 2,3,4 etc. of someone else's statement.

    1. Re:Worst I've seen in my work by frozenray · · Score: 1

      My electricity bill (normally about US$40) is debited to my bank account monthly. Imagine my surprise one month last fall when I found myself billed for the equivalent of US$ 12 million according to the debit slip mailed to me by the bank.

      Turns out someone at the bank had messed around with the printer form so that the running total of the credits to the power company got printed instead of the debit to the individual customer (the charges to the accounts were correct, only the debit notices were screwed up). I heard they had a really busy week in the customer service department of that bank after that incident.

      And then there was the programming team responsible for the same bank's ATM code maintenance who thought that December 24 would be a good date to distribute a new version of the software nationwide. Of course, this release had a serious bug which caused all ATMs of that bank to go belly-up on the year's busiest shopping day, with customers screaming bloody murder because they could not pay for their last-minute Christmas shopping (in Switzerland, the ATM card is used for online point-of-sale transactions and not everybody has a credit card).

      --
      "There are already a million monkeys on a million typewriters, and Usenet is NOTHING like Shakespeare." - Blair Houghton
  39. Also Missing: by goldspider · · Score: 2
    Ultima IX: Ascension

    What other piece of buggy software in history ever caused as much widespread collective apoplexy? :)

    --
    "Ask not what your country can do for you." --John F. Kennedy
    1. Re:Also Missing: by FortKnox · · Score: 1

      Ouch! Agreed. Although, after MONTHS it was eventually fixed.

      --
      Good quote, too many chars. Seriously, the slashdot 120 char limit sucks!
    2. Re:Also Missing: by mobets · · Score: 1

      Mechwarrior 2 Mercenaries. If you could make it trhought th horribly buggy interface, and get to the game without crashing, it was really nice. I can't remember how many times it died on me half way through loading the mision. It took them a year to get the patch out.

      --

      It was me, I did it, I moved your cheese
    3. Re:Also Missing: by WeedMonkey · · Score: 1

      It's been fixed?

      <drool>

      I carefully stayed away from it because I didn't want to get pissed off by an Ultima game after years of enjoyment... should I give it a go?

    4. Re:Also Missing: by FortKnox · · Score: 1

      Well, I was a bit disappointed in it, and here's why:

      Because they went third-person 3D, the towns and world are kinda small (compaired to the other Ultimas). I was used to having to TRAVEL to get somewhere, in Ultima IX, it wasn't much of a travel as much as a small walk... And there aren't that many "side quests" to work on, either...

      Other than that, the game was relatively long, and the story is pretty good. Graphics are great, but I woulda accepted worse graphics for a bigger world...

      I say give'r a go. The last in the story, so might as well wrap it up...

      --
      Good quote, too many chars. Seriously, the slashdot 120 char limit sucks!
    5. Re:Also Missing: by WeedMonkey · · Score: 1

      Nice one, thanks for that. The lack of side quests seems a bit of a shame after playing things like BG2, and I'm a bit upset that they've made the map smaller.

      Never mind - it's a three day weekend here in .uk, so it looks like I might take a stroll down to the games exchange after work and see if I can pick up a copy :-)

  40. Whole System Testing by lostchicken · · Score: 1

    Many of these bugs on long range probes and other stuff could be prevented with whole system debugging.

    Just test your software in situ, meaning that you take your final code, running in your final product (like the entire spacecraft, ready to be loaded), with all the sensors and comm links, and you just falsify sensor data. For example, you could heat a temperature probe, and put a pressure sensor in a compressor. The system thinks it's getting real data, and if the thing mis-converts something, it'll do it on the ground before launch. This tests EVERYTHING from cables to interfaces.

    --
    -twb
  41. 32. Therac-25, X-ray by wiredog · · Score: 3, Interesting

    The Therac-25 was an automated x-ray machine that overdosed patients. Fatally. It was a UI bug rather than a software bug. It's dissected in "Killer Defects" (IIRC) by Negroponte (again, IIRC).

    1. Re:32. Therac-25, X-ray by DrSkwid · · Score: 1

      can't find that book. Is it "Unleashing the Killer Application - By Larry Downes, Chunka Mui, Nicholas Negroponte"

      --
      There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
    2. Re:32. Therac-25, X-ray by irix · · Score: 4, Informative
      The Therac-25 was an automated x-ray machine that overdosed patients. Fatally.

      Well, not exactly. It was used for cancer treatments, not x-ray imaging. And not all of the radiation overdoses were fatal.

      It was a UI bug rather than a software bug.

      Again, not exactly. The problems with the Therac-25 included hardware issues and some UI problems that lead operators to do some interesting things. They also included some race conditions that were definately software bugs.

      You can check out a reprint of an IEEE article discussing it in depth here.

      Just for some history: AECL, the Canadian government crown corporation who made the Therac-25, spun off its medical operations into private companies in the 1980s. The first was Nordion, where I worked for a summer as a co-op student, produces radioisotopes for medical use. Nordion was bought my MDS. The other company was Theratronics, which was responsable for devices like the Therac-25. It went without a purchaser for many years becuase of the stigma of Therac-25, but it was eventually (IIRC) bought my MDS as well.

      Both companies are in my hometown, and the fallout from the Therac-25 (like the IEEE article) was front-page news when I worked at Nordion in the early 1990s. I just worked on sofware to measure how much of a given isotope to dispense to fill an order, but the whole Therac-25 incident was definately on everyone's mind.

      --

      Do you even know anything about perl? -- AC Replying to Tom Christiansen post.
    3. Re:32. Therac-25, X-ray by ahde · · Score: 3, Funny

      It's not a UI bug, just that some people don't surive the mutation:

      X-RAY METER:
      [Off--Low--Med--High--Glow--Kill--Mutate]

  42. It's Worse: The Patriot Never Worked by GuyMannDude · · Score: 5, Informative
    The Patriot missle defense system never worked -- the bug mentioned in the article is a red herring. The main problem was that the Iraqis had modified the scud with additional fuel tanks. The resulting missle was unstable and would start to break apart in flight. The Patriot couldn't lock on to the missle because it of all the schrapnel. In addition, the scuds are poor missles to begin with. When they fly, they do so with a wobble -- like a poorly thrown football. The Patriots had been tested prior to the war on good-quality American missles which flew in a smooth trajectory. The Patriots simply couldn't deal with a missle that "danced around" in midflight. Bottom line: the Patriots simply do not protect against scuds because of poor design -- not some floating point error. The floating point explanation is analogus to that Coriolis-effect-causes-water-to-swirl-in-the-toile t myth that you find in so many physics textbooks (the Coriolis effect only works on planetary scales). It looks good on paper but if the "experts" had bothered to perform a test they would see that the explanation is dead wrong. The failure of the Patriots to intercept scuds (and the fact that the media never mentions this) has grave implications for our anti ballistic missle shield.

    Don't take my word for it. Do a web search and see for yourself. Here are some references to get you started:

    http://www.fas.org/spp/starwars/docops/rp911024.ht m

    http://www.csmonitor.com/durable/1997/09/08/opin/l etters.1.html

    GMD

  43. my favorite by Libertaine · · Score: 1

    in the one talking about the denver airport. "Airport opened in February 1995....1 airline used it..Others used an alternative carbon-based neural network system."

  44. Anyone remember this book? by ThinkingGuy · · Score: 1


    The Day the Phones Stopped, by Leonard Lee.
    Some of the incidents on the page are covered in this book, which mainly addresses the problem of becoming overly dependent on software for real-life, mission-critical applications.
    Unfortunately the book, published 10 years ago, appears to be out of print, but as I recall, the issues it covered are even more relevant today.

    1. Re:Anyone remember this book? by mccalli · · Score: 3, Funny
      ...this book...mainly addresses the problem of becoming overly dependent on software for real-life, mission-critical applications. Unfortunately the book, published 10 years ago, appears to be out of print

      Ah well you see, that's the problem of becoming overly dependent on paper-based systems for mission-critical applications.

      Cheers,
      Ian

  45. Slashdot bug by HEbGb · · Score: 2

    How about that horrid bug that extends the width of the window data by a factor of 8, making it impossible to read?

    Does Slashdot want me to just waste more time at work or what?!

    1. Re:Slashdot bug by fractaltiger · · Score: 1

      I have seen a bug in Netscape 4, making the posts extend beyond the window, if that's what you mean. I haven't seen it at home since I switched to Opera, but at school the posts fall a bit off the edges.

      --
      "Wireless : LAN :: Laptop : Desktop"
    2. Re:Slashdot bug by RustyTaco · · Score: 1
      Does Slashdot want me to just waste more time at work or what?!

      No, Microsoft does. It's an IE "feature" that doesn't effect recient Mozilla version, nor Konqueror.

      - RustyTaco
  46. The buggs that didn't happen by MountainLogic · · Score: 5, Funny

    I'm sure we all have those bugs that we catch in bench testing. Mine was forgeting to add a cancel button to the following dialog box:

    "OK to delete database"

    When I caught that one I had visions of a user who had his/her million dollar database deleted charging into our office with a shotgun and ... well, you read the papers. Glad I caught that one before I released it to test.

    1. Re:The buggs that didn't happen by spruce · · Score: 1

      I had one that I didn't catch, and upon delivery to the client I had to quickly remove a line of code that printed "You are an idiot."

      My debugging messages have since been altered.

    2. Re:The buggs that didn't happen by T3kno · · Score: 1

      What my clients fail to understand is that when my software prints "You Suck" or "You are a loser" I am referring to myself, and not the idiot who found the bug ;)

      --
      (B) + (D) + (B) + (D) = (K) + (&)
    3. Re:The buggs that didn't happen by Tony-A · · Score: 2

      Use something like "Programmer is an idiot" unless you are the only possible target regardless of circumstances.
      Pronoun problem. Who is the "you"? Depends on context. And the code will be relevant in contexts other than when it was initially written, being run for starters.
      O.T. Who is the "My" of "My Computer"? I didn't put it there. It's not mine.

  47. Don't forget the Hubble by thermopile · · Score: 1

    Remember when the Hubble first came out and everything was fuzzy? The mirror was ground perfectly -- except they had missed a "sin" term in the curvature equation. Result: the outer edge was mis-ground by 1/80th of an inch.

    --

    "Diplomacy is something you do until you find a rock." --Richard Pound

    1. Re:Don't forget the Hubble by Anonymous Coward · · Score: 0

      No, it wasn't a sin error, it was an extra washer
      in the null corrector for the twinnings-green
      interferometer test.

  48. Patriot Scud Time Error by cnaumann · · Score: 1

    Let me get this straight... the resolution of the internal clock of the Patriot is 0.1 seconds, and yet an error of just 0.34 seconds caused the system to fail completely... Isn't that is cutting things a bit close right there?

    And this error 0.34 second error occurred after nearly 4 days of uptime... The clock was off by less than 0.34/100hours*60*60 ~ 1ppm. That is a pretty dang good clock yet not good enough.

    This does not sound like a software bug to me, this sounds like a poorly designed system.

    1. Re:Patriot Scud Time Error by Kintanon · · Score: 5, Informative

      That system just wasn't designed for that purpose. It was VERY well designed for its actual purpose, which was tracking AIRCRAFT going WAY slower than that missile. And it was only rated for 14 hours of continuous usage, not 100. So it wasn't a fault in the program per se, but a misapplication of a system designed for a different use.

      Kintanon

      --
      Check out JoshJitsu.info for Brazilian Ji
    2. Re:Patriot Scud Time Error by micq · · Score: 1

      So does this mean the Patriots are run off Windows boxes? My windows boxes need a reboot every 14 hours too...

    3. Re:Patriot Scud Time Error by rob_from_ca · · Score: 1

      And perhaps not even a pure misapplication. Since there wasn't really a system designed and deployed yet to shoot down missiles, and you've got missles flying at your troops and friendly cities, but you have a system that's very close to the mission you need...

      Why not give it a shot. So it didn't lend itself well to the purpose, and it was way out of the original design spec which caused major problems with it's effectiveness. However, if I'm sitting around in the bunker, I'd rather have someone trying to shoot down an incoming missile then sitting on their ass thinking "Damn, too bad this missile system was designed to shoot down airplanes and not missiles."

      Of course, battlefields are notoriously improvisational environments, so it pays to add as much flexibility and robustness to your designs as possible...

    4. Re:Patriot Scud Time Error by 0x0d0a · · Score: 1

      Naw, they just contain IBM hard drives.

  49. Many of these are NOT bugs... by alouts · · Score: 2, Interesting
    A good number of these incidents are NOT due to bugs in software but in faulty assumptions input into that software.

    If I misestimate the mass of a planet, is that a software bug?

    If my software sells stock when a certain threshold is hit and yours does the same, and that least do a financial industry meltdown, did my software not work as planned, or is the issue more the dynamics of the market being somewhat unpredictable?

    The tacoma narrows and london milennium bridges are both listed here, yet neither one is a software issue - hell the tacoma bridge collapsed in 1940!


    That said, it is a pretty interesting list, but calling it a list of software bugs and using it to underscore the importance of regression testing software is a bit of a stretch. If anything, it underscores the importance of editing and proofreading your content.

    1. Re:Many of these are NOT bugs... by fermion · · Score: 1
      Software should do at least three things. Software should reliable execute the task it was designed for. Software should protect against unexpected inputs. Software should be fault tolerant and if it fails, should fail gracefully.

      Your first assertion that faulty assumptions are not bugs may or may not be correct. If the design of the code allowed the on the fly change of these values(i.e. without recompiles or reloads), then these assumptions may not be bugs. That is, if the design of the code was fault tolerant, we could blame the numbers. Otherwise, it is a design flaw. This is why many people consider the constant reloading of windows every time some system variable changed to be a bug.

      Likewise, algorithms that trade stock and interact in such a way that a crash can occur are buggy algorithms. We do not want a crash, which is why we now stop trading under certain conditions. In effect, we know that software out there is buggy and will not protect against cascading inputs, so we have a gate watcher that will stop these buggy programs from causing havoc.

      Although you are correct that not all items listed are in fact "bugs", your narrow definition is typical of programmers who wish to minimize their responsibility. These are the programmers who feel there is no need to check for overflow, non-terminating loops, and the like. It is unlikely that these programmers would even take a little time to actually design an algorithm rather than just type some crap into the Visual Studio. Bad design, philosophy, and logic are extremely difficult to fix by proofreading or editing..

      --
      "She's a scientist and a lesbian. She's not going to let it slide." Orphan Black
    2. Re:Many of these are NOT bugs... by rob_from_ca · · Score: 2

      Amen. The term "Bug" is usually meant to mean software errors. Software errors can creep in during requirements gathering (missing or erroneous information about the intended application), specification development (erroneous assumptions), or actual implementation (off-by one errors, buffer overruns, etc. or for that matter any of the above also).

      All of the process and infrastructure surrounding software development (ESPECIALLY with mission critical apps) is just as important as the coding itself. Until more colleges and education programs start pounding that into students heads, we are going to continue to have the same problems.

    3. Re:Many of these are NOT bugs... by alouts · · Score: 1
      I couldn't agree with you more that there are a whole host of things that programmers frequently write off as "features" or expected conditions or simply do not check for in their code. Maybe I wasn't clear enough in my original post. I am not trying to create an overly narrow definition of bug. I fully agree with your three precepts. Design flaws are on the fence for me depending on their severity, and aren't necessarily included in your three things.

      As for the mass estimation being off, I did make an assumption from the little that I read that the estimation was an input to the software and that it wasn't off by orders of magnitude where the software should have caught it as not being reasonable. It could go either way, agreed.

      The stock thing though, I'm not so sure I agree with. I think you're confusing the "we" who don't want a market crash (the exchanges and the general public) with the "we" who were running the software to get out of the market given an impending crash (the large brokers and institutions). From the point of view of the brokers who were running the software, it worked exactly as expected, and saved their asses in the market. The people who really lost out were the ones NOT running similar software. The market itself was the system that was shown to have vulnerabilities, not the software interacting with it, and the rules that were subsequently put in place in order to avoid this in the future didn't change the software running in the brokerages, but altered the behavior of the market system as a whole so that systematic trading on thresholds wouldn't have the same effect. If there were humans performing all the trades strictly in accordance to the same thresholds, a similar meltdown would have occurred. It's the equivalent of having software expose a flaw in your business and altering your business to get around that flaw more so than a problem in the software itself.

      Honestly, I'm the most anal programmer I've ever worked with, and it bugs me to no end to look at or try to deal with sloppy formatting, poorly designed algorithms, etc., all in the name of "programming style". The more I work in the field, the stronger my belief that if you really care about writing good code, you can't at the same time care about branching out with your own "style". It's usually a euphamism for sloppiness/laziness.

    4. Re:Many of these are NOT bugs... by T.E.D. · · Score: 1
      Likewise, algorithms that trade stock and interact in such a way that a crash can occur are buggy algorithms.


      The "buggy algorithm" in this case is Wall Street itself, because this can happen (and has in the past happened) with or without software. All the software did in this one case was help nature along a bit, if indeed it had any effect at all.

      Now it might be nice to add "market crash detection" features to the software. But there is no evidence that the software in this case was taking any actions that its users (the individual traders) would have disagreed with at the time. Calling this a software bug is like calling a slashdotting a software bug.
    5. Re:Many of these are NOT bugs... by hughk · · Score: 2
      I have known programmers who faithfully follow the specifications presented to them. Unfortunately, they didn't understand enough to be able to do a sanity check. Often a spec written by someone without a real computer background gets to the point of hand-waving when it covers an award point. A Business Analyst with a real technical bacground would normally try to dig to the bottom of the issue, but many who are not technicaly trained would not realise that the problem hasn't been properly defined.

      The end result is that the programmer implements a system that can not work. The system is tested against the faulty spec, and sure they agree. With luck, the bug will be caught in simulation before it goes into production.

      It often isn't.

      --
      See my journal, I write things there
  50. Re:It's Worse: The Patriot Never Worked by GuyMannDude · · Score: 1

    I don't understand why there are spaces in the URLs I wrote in my message, but here they are, sans spaces:

    http://www.fas.org/spp/starwars/docops/rp911024.ht m

    http://www.csmonitor.com/durable/1997/09/08/opin/l etters.1.html

    Note: I am NOT a regular reader of the Christian Science Monitor. I included that link because the author is from MIT. And before you mod my previous post as off-topic, I'm just pointing out that it's easy to dismiss something as a software bug. It's much harder to do some real thinking and make sure that the concept is valid to begin with.

    GMD

  51. NO! It is called responsibility. by www.sorehands.com · · Score: 3, Interesting
    Why do you think there are 1000 page EULAs?

    Half of it boils down to, We are not responsible for anything bad, even if we were warned about it and have a fix for it that we are holding on to sell as part of an upgrade.

    1. Re:NO! It is called responsibility. by Dave_bsr · · Score: 1

      So what you're saying is, until we rethink EULA's, computer science won't become more responsible because it doesn't HAVE to?

      --


      Who is this Anonymous Coward character, how does he post so much, and why is he always such a whore?
  52. Software bugs...NOT! by T.E.D. · · Score: 5, Insightful
    I'd call it a bad sign when the first two entries on a page that proports to show famous software bugs are not, in fact, software bugs.

    The bug that caused Airane explosion was a requirements analysis bug. The Pentium FP bug was a hardware bug.

    A quick skim of the rest nets me at least 6 more non-software software bugs
    • 4. Mars Climate Orbiters, Loss (Mixture of pounds and kilograms, 1999) - Specification bug
    • 27. Distributed denial-of-service attacks - Malicious people
    • 31. Florida Voting Chaos - not a damn thing to do with computers
    • 34. Wall Street Crash, October 1987 (Acceleration of the crash) - computers did precisely what their users wanted them to do
    • 42. Great Concert Disasters - WTF?!
    • 43. Tacoma Bridge (not a computer bug)(collapse, 1940) - he said so himself

    After seeing that, I can't really trust the list on things I don't have a good knowledge about.

    Here's a challenge for someone: Go through the list and find out how many (if any) of the listed software bugs are actually software bugs.
    1. Re:Software bugs...NOT! by Anonymous Coward · · Score: 0

      The specifications bug is a software bug. We, as programmers, should make sure that our software are comunicating properly.

      If we have more than one team, then each team needs to insure that their piece integrates properly.

      I really do think this one is a software bug, and a terribly silly one at that.

      The rest are human (user, not developer) error mostly.

    2. Re:Software bugs...NOT! by T.E.D. · · Score: 1
      The specifications bug is a software bug. We, as programmers, should make sure that our software are comunicating properly.


      Errr...no. This problem had nothing to do with how well the software was communicating. The problem was that some initial data was entered into the system (by human beings) using the wrong units. That was done because the data came from the contracting agency without any notion of units attached to it, and the contracting agency assumed the wrong units. The system that had the "bug" was not the software, it was the human system of communications between the contractor and the contracting agency.
    3. Re:Software bugs...NOT! by tswinzig · · Score: 2

      The Pentium FP bug was a hardware bug.

      Was it really a hardware bug? (I mean, a bug related to the physical hardware?)

      After all, most computer hardware is just frozen software.

      --

      "And like that ... he's gone."
    4. Re:Software bugs...NOT! by 10am-bedtime · · Score: 1
      probably you need to realize the distinction between software, hardware and wetware is superficial. the bugs lie in the system design.

      thi

    5. Re:Software bugs...NOT! by Tony-A · · Score: 2

      Errr...no. This problem had nothing to do with how well the software was communicating.
      Seems very much like a problem with how the software are communicating. The software, however indirectly, reads the wrong units. This sounds exactly like a communication problem, and anything else being involved doesn't make the software right. There was a "bug" between the contractor and the contracting agency. That bug caused a bug in the final software. There's more than one bug.

    6. Re:Software bugs...NOT! by el_chicano · · Score: 2
      * 31. Florida Voting Chaos - not a damn thing to do with computers
      Florida has everything to do with computers.

      How are the votes counted? What exactly is "chad"? If you don't know by now that they are the little holes punched in an IBM computer punch card then you have not been paying very much attention!

      While it is true that the whole Florida situation is not strictly about buggy software, it could have been averted with better hardware (punch card readers that spit out incorrectly punched cards for manual counting) or better training (have election personnel ensure that there are no hanging chad on the voters' ballots). It also pointed out the importance of well designed User Interfaces, because if some of those ballots had been better designed, the number of errors committed by confused voters would have gone way down.

      IMO Florida pointed out some of the major weaknesses of the current computer voting scheme. Computer vote counting is intended to reduce human intervention in order to reduce fraud. If humans have to handle voters' punch cards more or conduct manual counts then it leads to potentially more opportunities for election fraud by unscruplous election personnel...
      --
      A man who wants nothing is invincible
  53. Patriot and Scud by vondo · · Score: 3, Interesting

    The claim for this one is that a Patriot during the Gulf War failed to intercept a Scud missle and the Scud missile killed 26. Ergo, a software bug killed 26 people.

    Considering that even the military now admits that no Patriot *ever* intercepted an Iraqi scud, this inference is unfounded.

    1. Re:Patriot and Scud by jilles · · Score: 2

      What was going on in this case was that the launching system had a minor but cumulative rounding error in its time measuring. After cumulating for several days, the deviation was big enough to let the launched patriot completely miss its target (timing is essential when traveling at several times the speed of sound) and slam into the ground at the wrong place.

      Whether is a direct consequence of the bug is debatable. But it would maybe have hit its target if that bug had not been present and not slammed into the ground on the wrong side of the front-line.

      --

      Jilles
    2. Re:Patriot and Scud by Fulcrum+of+Evil · · Score: 2

      What was going on in this case was that the launching system had a minor but cumulative rounding error in its time measuring.

      What's interesting is that this isn't a bug. The system in question was designed for a maximum duration of 48 hours between resets, and they ran it for a week.

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
    3. Re:Patriot and Scud by Anonymous Coward · · Score: 0

      More like designed for 8-12 hours .... the governement spec'd it out for a max of 12 hours ...

    4. Re:Patriot and Scud by Anonymous Coward · · Score: 0
      What's interesting is that this isn't a bug. The system in question was designed for a maximum duration of 48 hours between resets, and they ran it for a week
      Wrong, wrong, wrong. A system that can only run 48 hours between resets yet allows launch after more than 48 hours is broken. This is most definitely a software bug - a software design bug most likely, but still a bug.

      Blaming the user for using the product in a way that the programmer did not intend is bullshit because all interfaces used by humans should be designed for human behaviour!

      Back when I helped build the Peacekeeper launch system we didn't allow crap like that... it's a goddamn weapon, and it will be used in any way necessary (or possible). Failing to include safeguards against misuse is stupid.
    5. Re:Patriot and Scud by Fulcrum+of+Evil · · Score: 2

      A system that can only run 48 hours between resets yet allows launch after more than 48 hours is broken.

      You would rather the missile launcher shut itself down?

      Blaming the user for using the product in a way that the programmer did not intend is bullshit because all interfaces used by humans should be designed for human behaviour!

      In this case, it was the product requirement.

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
    6. Re:Patriot and Scud by wageslave · · Score: 1

      The SCUD hit the barracks and killed 28 people, not the Patriot. Also, the Patriot missile never slammed into the ground, it blew up in the air. The article is blaming the loss of life directly on the Patriot, when as previously noted, it is highly doubtful that the Patriot would have destroyed the SCUD even if it had perfect software.

      --

      darrell

    7. Re:Patriot and Scud by pdqlamb · · Score: 2

      Maybe it would have hit its target without that bug. But the OP's point, I think, is that that Scud would have been the first one intercepted by a Patriot. Unfortunately, it seems there's a lot more than blind luck required to hit a bullet with a bullet. Why weaken the list, and the impact of the "fix your bugs" message, with this highly questionable item?

    8. Re:Patriot and Scud by Anonymous Coward · · Score: 0

      Not shut itself down, reset the clock, or at least notify the operator that the system needs to be reset SOON.

    9. Re:Patriot and Scud by Rogerborg · · Score: 2
      --
      If you were blocking sigs, you wouldn't have to read this.
    10. Re:Patriot and Scud by duffbeer703 · · Score: 2

      Destruction of targets with proximity fuses is an accepted method of intercepting aircraft and cruise missiles.

      One of the big problems we encountered was that the Patriot fuses tended to direct the force of detanation towards the center of mass of the target. In the case of a SCUD missile, this is a rocket motor. Unfortunately, the warhead typically survives and drops like a rock to the ground.

      The bad thing about this is that somebody is going to have a SCUD warhead falling on his head. The good part is that the missile will not hit it's intended target.

      --
      Conformity is the jailer of freedom and enemy of growth. -JFK
    11. Re:Patriot and Scud by duffbeer703 · · Score: 2

      I should have added that depending on the interception, ballistic missiles which are travelling at mach 6-20 are sometimes able to escape the damaging part of the blast with little damage.

      Missiles in development like THAAD use smaller missiles with no warhead that attempt to score a kinetic kill by striking the warhead. So far, these missiles are not very reliable at all.

      --
      Conformity is the jailer of freedom and enemy of growth. -JFK
  54. Remember the Therac-25? by Len · · Score: 2, Interesting
    This is quite amusing, but a software bug in my field can result in patients lives being lost.
    And it has! Here's Leveson and Clark's fascinating investigation of the Therac-25 incidents.

    (A former Theratronics employee is standing right behind me, but he denies having worked on the Therac-25.)

  55. The Ariane blowup was especially amusing by Beryllium+Sphere(tm) · · Score: 1

    According to the writeup in Aviation Week, the overflow was in code from a previous version which was still being called but whose results were never used.

    Then to make it funnier, turns out the system engineers had decided that since software is infallible, any exception condition would indicate a hardware failure(!), so instead of a reset they shut the affected computer down altogether.

    Funnier yet, they felt free to shut the computer down because there was a backup, but the backup was running identical software, so in no time at all it experienced an identical failure.

    1. Re:The Ariane blowup was especially amusing by T.E.D. · · Score: 4, Informative
      Then to make it funnier, turns out the system engineers had decided that since software is infallible, any exception condition would indicate a hardware failure(!), so instead of a reset they shut the affected computer down altogether.


      Not quite. The software was built for the Arianne 4. On the Arianne 4, it was physically impossible for that value to ever get high enough to overflow. So on the Arianne 4 the assumption that an overflow could only be due to a hardware failure was entirely correct.
      If they had known that years later an Arianne 5 would come along, and those engineers would stupidly reuse the Arianne 4 code without testing it once, then perhaps they would have made a different decision. But I think the blame goes on entirely on the Arianne 5 guys, who were *not* the ones who wrote that code.
    2. Re:The Ariane blowup was especially amusing by Beryllium+Sphere(tm) · · Score: 1

      T.E.D. is correct.

  56. I blame this all by Anonymous Coward · · Score: 0
  57. Patriot time bug worse than represented. by Ungrounded+Lightning · · Score: 2

    The patriot missile failure was blamed on a roundoff error causing an accumulating time error, resulting in a miss.

    But the bug was more fundamental: The missile and radar computers synchronized clocks when the system was booted, then drifted apart. After a hundred hours the drift from the roundoff was enough to make it lose a target.

    But had the missile synchronized its clock upon launch (or better: target acquisition, to give it time to settle), the tiny roundoff error accumulated in flight wouldn't have mattered. Meanwhile, had the calculation been perfect, differential clock speeds still would have caused a drift.

    --
    Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
    1. Re:Patriot time bug worse than represented. by Anonymous Coward · · Score: 0

      They where designed to be rebooted every 12 hours. Thats what the DOD requested. You want to blame someone blame the ARMY they knew about the bug before the accident happened and yet they still used it for more than 100 hours at time. There was even a patch to fix it but they never applied it and people died.

      Its a bad case of opperator error, do you blame the car make for your car breaking down when you haven't changed the oil in 100K miles?

  58. Positive debugging by saphena · · Score: 1

    "debugging" is an unfortunate word, it suggests that when a program is created it *somehow* contains "bugs" or "gremlins" and that these have to be removed.

    The bugs don't get there by themselves, in my experience they are usually the result of some (often understandable) assumption on the part of the system designer or programmer.

    A trivial example is a subroutine designed to add to integers and return the result failing to check that 1) it was called with *two* parameters and 2) that both parameters contain integers.

    The design of the program should incorporate code to positively check that all possible assumptions are true.

    The techies can't be responsible for drawing up the complete list of assumptions, the user or customer must be involved in this process also.

    If an accountant has told me how to prepare a balance sheet, he must also tell me the complete list of checkable assumptions that must be tested. I'm not an accountant (engineer, architect, whatever), the relevant expert must take responsibility.

    Nor can we rely on "experts" (computer or otherwise). All of us practising some skill, sooner or later, start taking things for granted. Not only do we need expert debugging, we need dummy debugging to mind the bits that the experts will take for granted.

  59. Not Bugs, Time Bombs by willij3 · · Score: 1

    I had a prof who was stressing someone else's opinion that we change from the word "bug" to the phrase "time bomb" so that people would get a better feeling for what they really were -- incorrect sections of code just waiting to mess you up.

    1. Re:Not Bugs, Time Bombs by Tony-A · · Score: 2

      I had a prof who was stressing someone else's opinion that we change from the word "bug" to the phrase "time bomb" so that people would get a better feeling for what they really were -- incorrect sections of code just waiting to mess you up.
      I'd vote for Booby-Traps. There's lots of boobies waiting to be trapped.
      Possibly, an accident looking for a place to happen.
      But seriously folks, the problem with bugs is that they sometimes get together with other bugs and then produce spectacular results. I've even seen a triple. Three bugs. Any one of them absent, it would be impossible to find anything wrong.

  60. Nice by pete-classic · · Score: 4, Insightful
    The actual article links to http://www.byte.com/art/9509/sec7/art20.htm which says:

    THE BUG THAT KILLED

    1985-1987: At least four people died when they were exposed to lethal doses of radiation from Therac-25 linear accelerator machines (made by Atomic Energy of Canada Ltd.), used for radiation treatment of cancer. Software errors caused the machines to incorrectly calculate the amount of radiation being delivered to the patient. The most tragic incident to date of death or injuries to human beings due to defective computer software, [emphasis mine] this incident is a reminder that, as we entrust human lives and health to computers, the seriousness of eliminating bugs becomes a life-or-death proposition.


    and goes on to say:


    SIN OF OMISSION

    1991: American Patriot missiles were fairly successful. However, the failure of some Patriot missiles to track and destroy Iraqi Scud missiles during the Persian Gulf War may have been due to a software problem of the system. During one such Iraqi missile attack, 28 American soldiers were killed in their barracks in Dhahran, Saudi Arabia.


    seven times the loss of human life, but less of a tragedy? I guess they are soldiers so fuck 'em, eh?

    This story is over two years old, so they have had ample opportunity to correct it. The "comment" button on that page just takes me to the front page. Nice.

    Also on that page, "The DoubleSpace automati hard disk comparision software included in Microsoft MS-DOS 6.0 [. . .]" WTF is "automati"? "Comparision" isn't even a word as far as I know, but it looks a lot like comparison. DoubleSpace is disk compression software.

    Ironic that there are such glaring errors in an article about buggy software.

    Well, I wasn't particularly a fan of Byte before, but now I'm convinced that they suck.

    -Peter
    1. Re:Nice by MrHat · · Score: 1

      Umm. Nailing everyone you treat with a lethal dose of radiation and failing to shoot down a missle are two very different things.

      I don't know how you could actually compare the two. I guess you could say the cancer patients were pending death as well, but that seems to discount the immediacy of a falling missle.

    2. Re:Nice by pete-classic · · Score: 2

      The point isn't the value of the bug, it was the point of the value of human life. Yes the soldiers were in harms way, and the patients were supposed to get better from the treatment, not die, but I think that explicitly saying that the deaths of four cancer patients is a bigger tragedy than the loss of 28 soldiers is pretty sad.

      Note that I didn't "compare the two", Byte did. That's precisely my point.

      -Peter

    3. Re:Nice by Anonymous Coward · · Score: 0
      seven times the loss of human life, but less of a tragedy? I guess they are soldiers so fuck 'em, eh?
      A voluntary soldier is a voluntary killer. If he's defending his own home, or even his own country against the actual attackers (not just people of the same race, a la Israel), then I'd have sympathy. No such circumstances existed in this case. Britain's made-up state of Kuwait was being protected to prevent a hike in oil prices.
    4. Re:Nice by Anonymous Coward · · Score: 0

      The "to date" part may suggest that up until 1987, the miscalculated radiation dosages caused the most tragic loss of life due to software errors.

      The deaths in 1991 were after 1987, and my calculator tells me they were 48 years after. That doesn't seem right...

      Maybe the grammar checker the author used has some software bugs in it?

    5. Re:Nice by Anonymous Coward · · Score: 0
      I guess they are soldiers so fuck 'em, eh?

      You are looking at this the wrong way. These soldiers are the college jocks that got all the girls when you didn't. See, so much less of a tragedy...

    6. Re:Nice by cburley · · Score: 1
      I think that explicitly saying that the deaths of four cancer patients is a bigger tragedy than the loss of 28 soldiers is pretty sad.

      But Byte didn't say that, according to your own emphasis on the quote you supplied!

      Take another look at that. They said it was the most tragic instance "of death or injuries to human beings due to defective computer software".

      The cancer patients died entirely due to defective computer software -- had the software been correct, they would have not died at that time.

      The soldiers died entirely due to an Iraqi missile attack -- had the missile attack not been launched, they would have not died at that time.

      Further, had the Patriot software been 100% correct, it is not assuredly the case that the soldiers would not have died, since that would not have implied 100% guaranteed success intercepting the Iraqi missile. (I'm basing this on the general truth that, in the real world, there is no such thing as a 100% guaranteed defense against such attacks -- I'm no expert on Iraqi scuds, Patriot missiles, or even BB guns.)

      So, the Byte article, to the extent you quoted it (and I'm basing my comments entirely on your quotes), is correct. The cancer patients died due to software error, the soldiers died due to other causes that might have been prevented except for software error, and, in my book, that certainly makes the deaths of the former rate high as a "tragic incident" of that sort, while the latter rates as a "tragic incident" of a different sort.

      You might have a legit complaint if a software error caused the Iraqi missiles to launch accidentally -- put more simply, if 28 soldiers died due to "friendly fire" stemming directly from a software bug, then I'd say it might be legit to question calling the deaths of 4 cancer patients "more tragic" than that. (Though, as someone else points out, at least the soldiers know and accept the risks of friendly fire to a greater degree than cancer patients; change the 28 victims to innocent civilians and you've really got a case -- a hypothetical one, of course.)

      In short, you have provided no justification for your statement that they, the authors of the Byte article, "suck", since it is apparent, at least to me, that they were not comparing the deaths of the 4 to the deaths of the 28 in their "tragic incident" language. The world already has plenty of people who go emotionally overboard in the face of rational characterizations of historical events; I suggest you try a different approach, one less prone to aggravating tensions between people and organizations, especially the press.

      (Not that I even read Byte, I just find it frustrating to see people publically bash others based on half-baked interpretations of pretty clearly written prose.)

      --
      Practice random senselessness and act kind of beautiful.
    7. Re:Nice by pete-classic · · Score: 2

      I see that you are trying to be funny, but the fact is that 1. I am a geek (if the fact that I'm posting on /. isn't enough, how 'bout the fact that I'm an out-of-work UNIX consultant?) who used to suffer at the hands of jocks and 2. I served four years in the US Army, including a stint in the Bosnian combat theater.

      So I hope you can appricated how unfunny your comment is to me.

      -Peter

    8. Re:Nice by pete-classic · · Score: 2

      When I write "to date" I usually mean "up to the current date as I write this." But the proximity of the "dateline" to the phrase puts this in doubt in this case.

      Damn vage language!

      -Peter

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

      yeah. there's also the FACT that the DOD *was* claiming near 100% success. years later, of course, it's been revealed this was an outright lie and the actual success rate was much closer to say, ZERO.
      this is NOT a conspiracy theory. neither is gulf war syndrome; neither is NATO losing more than 100 planes in the Balkans (not just the one they were forced to admit because news crews caught locals celebrating in the wreckage); etc. etc.
      and now we're supposed to beleive that no mistakes were made in afghanistan. or the war on terror. or the war on drugs. both on our own citizens.
      but anyway...

    10. Re:Nice by Etosoerc · · Score: 1

      As Josef Stalin said: "The death of one is tragedy, the death of a million is statistics."

      --

      "What's in the public interest, isn't what the public is interested in" - Terry Pratchett
  61. If you ask me, by Anonymous Coward · · Score: 0

    lack of proper validation of input data is a BUG!

  62. We have a difficult battle ahead ... by jc42 · · Score: 5, Informative

    Some years back, as a grad student, I saw a bunch of colleagues do a rather unnerving experiment. Much of the number crunching was, as usual, done in Fortran. So they instrumented the compiler to silently test for integer overflow, report when it happened, and also report whether the program tested for it.

    Their result was that roughly 50% of the Fortran programs on the mainframe computer produced at least one number in the output that was wrong due to undetected integer overflow.

    This itself would be bad enough. But a bunch of us followed this up by asking Fortran programmers about it. What we did specifically was to point out that, unlike floating point, where there's an interrupt, integer arithmetic required a separate instruction to test the overflow flag. So testing for integer overflow took extra cpu cycles. Then we asked them whether they thought that software should be modified to always test for integer overflow, as is done with floating point.

    The answer was overwhelmingly that if it took extra cpu cycles, the software should not check for overflow.

    When we pointed out that this introduced the risk of programs producing incorrect results, the Fortran programmers invariably said that didn't matter. Faster is better, even if some of the results are wrong.

    I think of this whenever I read about computers used in medical, transportation, or other areas where malfunctioning software could put lives at risk.I don't believe that the "software culture" has changed significantly in this respect since then.

    --
    Those who do study history are doomed to stand helplessly by while everyone else repeats it.
    1. Re:We have a difficult battle ahead ... by Wandering+Instructor · · Score: 1

      Not all "software culture" is derived from Fortran. Look at languages like Perl, execution speed is not the ONLY concern. Concerning safety-critical applications such as medical instrumentation and transportation, there are rigorous design, testing, documentation, and coding standards for those areas. The most stringent software design standards in the world are used by the USA Federal Aviation Administration for on-board avionic systems. Performance is still one of the requirements, but performance without safety is not allowed. These systems are not allowed to perform "unsafe" operations such as dynamic memory allocation. Every line of code must be checked, not only the source code, but also the machine code emitted by the compilers. Unhandled numeric overflows and underflows are REQUIRED to be fixed.

    2. Re:We have a difficult battle ahead ... by T.E.D. · · Score: 3, Informative
      I think of this whenever I read about computers used in medical, transportation, or other areas where malfunctioning software could put lives at risk.I don't believe that the "software culture" has changed significantly in this respect since then.


      That's precisely why people developing safety-critical apps should be (and quite often are) using Ada, rather than Fortran or C. Not only does the languge put in all the checks you mention (and more), but the "software culture" among Ada programmers is significantly better where bugs and safety are concerned.

      Take a look at Praxis' SPARK for a look at how responsible people develop safety-critical software. The approach takes more effort than the typical "hack something together then bash it into shape with the debugger" approach. But in many cases, it is well worth the cost.
    3. Re:We have a difficult battle ahead ... by greg_barton · · Score: 1

      I don't believe that the "software culture" has changed significantly in this respect since then.

      One word: Java.

    4. Re:We have a difficult battle ahead ... by Anonymous Coward · · Score: 0

      Dude. If new onboard avionics are running frickin Perl then I'm *walking* to Hawaii before I get on another 777.

    5. Re:We have a difficult battle ahead ... by jc42 · · Score: 2

      Ummm ... I've used a number of java apps in recent years. So I'm not convinced. The people who designed the language clearly had safety and correctness in mind. But a *lot* of the java programmers don't. Or their bosses don't permit it.

      --
      Those who do study history are doomed to stand helplessly by while everyone else repeats it.
    6. Re:We have a difficult battle ahead ... by Tony-A · · Score: 2

      Sir, methinks you are an optimist.
      Faster is better, even if some of the results are wrong.
      IIRC, Boroughs(sp?) had problems with their hardware running a lot of programs. Seems that a lot of the programs read or wrote memory where it the programs shouln't be accessing anything, and the programs just wouldn't run.

    7. Re:We have a difficult battle ahead ... by greg_barton · · Score: 1

      The people who designed the language clearly had safety and correctness in mind.

      Yep.

    8. Re:We have a difficult battle ahead ... by Wandering+Instructor · · Score: 1

      I agree. Perl is completely inappropriate for the development of avionics. The same can also be said for Java. Just look at the license agreement attached to the Java development kit. Sun makes you promise you will not use Java to develop control systems for avionics or nuclear power plants. My point was that the Fortran model of performance before all else is not the only model for software development. Given the FAA restrictions, even Fortran falls short of the requirements for avionic control systems. Fortran has long been optimized for in-memory numerical analysis. This is good. It is not, however, sufficient for all the needs of hard real time control systems. Most of the avionic systems currently in use were written with a subset of Ada known as SPARK.

  63. Re:PENTIUM PROZESSOR? by klocwerk · · Score: 1

    Hmmm...
    so you're saying a Pentium chip is software?
    Why dont you read the article.

    --

    "You worthless post!"
    -Shakespeare, 2 Gentlemen of Verona, 1. 1. 147
  64. Not exactly a bug but... by ComaVN · · Score: 1

    I once worked (temporarily) in a hospital, where the entire patient information system was made in Clipper by one of the surgeons in his spare time. He had a custom version for every user: when someone wanted some new function, he coded it on the spot for that person. No version management, no design, nothing.

    This guy was approaching 65, and he was the only one who knew how it worked, so it was an accident waiting to happen. No-one wanted a new system however, *because* it was tailor made for everyone.

    As it turns out, there have been a lot of screwups in the operations performed there. (Wrong bloodtypes, unnoticed allergies, etc.)

    Didn't exactly surprise me

    --
    Be wary of any facts that confirm your opinion.
  65. Re:It's Worse: The Patriot Never Worked by Lord+Omlette · · Score: 2

    Christian Science Monitor is usually a reputable paper, if only because they have their own reporters doing the work instead of tacking stuff onto ap/reuters stuff.

    The spaces are due to the slashdot lameness filter. Yay perl.

    --
    [o]_O
  66. Bugs? Typos? by Tower · · Score: 2

    So is it a webpage bug when you see:
    "Pentium Prozessor" and "Pentium Porcessors" in the writeup... [rant] This is the same kind of sloppy work that causes cars to explode, missiles to veer off course, and a busload of nuns to get blown up by a rogue robot (Nun Soup?) [/rant]

    Oh well :)

    --
    "It's tough to be bilingual when you get hit in the head."
    1. Re:Bugs? Typos? by Permission+Denied · · Score: 1
      [Regarding the atrocious English on the web page] This is the same kind of sloppy work that causes cars to explode, missiles to veer off course,

      More has been screwed up on the battlefield and misunderstood in the Pentagon because of a lack of understanding of the English language than any other single factor.

      attributed to Gen John W Vessey Jr, US Army, Chairman, Joint Chiefs of Staff

    2. Re:Bugs? Typos? by Tony-A · · Score: 2

      It's the scope of the bug/typo/error/whatever.
      Pentium Porcessors is harmless enough (limited scope) unless I start down some association of processing five hogs in an abatoir.
      Sloppy work causes problems. Thankfully, most are limited in scope.
      I understand your rant, but the real problem is that minor errors have big consequences. There's no silver bullet, but the key is to somehow drastically curtail the bad consequences of errors that will inevitably occur.

  67. Not on the list? by WWWWolf · · Score: 1

    Javascript's misuse of Date.getYear().

    Well, the method itself (and similar methods in server-side web scripting languages) was not the buggy part - it was just that people didn't realize it returned year-1900 and not year without centuries part...

    I remember that the New Year's Day in year 100 (or 19100, depending on website) was ocassionally a very happy one.

    1. Re:Not on the list? by SETIGuy · · Score: 1
      Well, the method itself (and similar methods in server-side web scripting languages) was not the buggy part

      The method and definition was not the problem. Many of the implementations had problems. Netscape 3 and 4 returned different values. Internet Explorer returned another. In 2000, you could expect getYear() to return 0, 100, or 2000.

      Here's how my web site has been altered to handle the complaints from those using noncompliant browsers:
      var fyear = 1900 + dateObj.getYear()

      if (fyear<1980) {
      fyear += 100;
      }

      if (fyear>2050) {
      fyear -= 1900;
      }
  68. Re:Debugging by Anonymous Coward · · Score: 0

    And for the life of me when will programmers realize
    that just because the software works on their
    box it may not work on another machine.

    If you don't have a clean fresh install of a MS
    operating system you have no idea what kind of crap
    is on the box.
    Just installing Visual Studio,Source Safe etc, makes
    testing useless on your main machine.
    Program on your main machine.
    Test on a clean machine.
    Its easy. And then maybe QA would not feel you are
    a bunch of overpaid jerks.

  69. Anyone remember this one? by Anonymous Coward · · Score: 1, Funny

    A few years ago, I remember reading an article about a US Navy warship that ran WinNT and the system got a BSOD and left the boat crippled for at least a few days...

    Can you just imagine the following situation?

    Mr. President: Fire the nukes!
    NORAD: Firing now, sir....wait...

    MS Nuke has caused a general protection fault at address 0x0324324h:8901. The application will now close. Please contact Microsoft Support.

    (a few seconds later after the crash)

    An annoying popup message comes up:
    "Register your userid at Passport.NET!"

    I think the situation speaks for itself. :)

    1. Re:Anyone remember this one? by Anonymous Coward · · Score: 1, Funny

      yorktown
      nt 4
      divide by zero
      MS salesman later fired from 16 inch gun of battleship
      Poor bastard posthumously set a new record.

  70. Coupla Notes by StormyMonday · · Score: 4, Informative
    1. The Patriot time-drift was caused by the system being operated outside of its dsign parameters. It was designed to operate during a Soviet invasion of Western Europe, and expected to have to relocate every 8 hours or so. The spec, therefore, assumed that the software would reboot every 8-12 hours. From my experience with the military, if a programmer had put in a clock algorithm that would track indefinitely, he or she would have been ordered to take it out. (Been there. Done that. Broke the coffee mug.)
    2. The Yorktown crash was the result of mixing mission-critical and non-mission-critical programs on the same box. Big no-no.

    So we have a specification problem and a system design problem. Neither is a pure "programming problem".

    Software crashes are like airplane crashes -- blame the lowest guy on the totem pole. In air crashes, it's the pilot. In software, it's a coder.

    --
    Welcome to the Turing Tarpit, where everything is possible but nothing interesting is easy.
    1. Re:Coupla Notes by brer_rabbit · · Score: 2
      From my experience with the military, if a programmer had put in a clock algorithm that would track indefinitely, he or she would have been ordered to take it out.


      Any particular reason why? Is it just because the specs assume a reboot every 8-12 hours?

    2. Re:Coupla Notes by Anonymous Coward · · Score: 0

      Airplane crashes - in the military, anyway - generally get blamed on the last maintenance person to work on the plane. Ooops - Sergeant Smith, you checked the plane okay? Pack your trash, enjoy Kansas...

    3. Re:Coupla Notes by ethereal · · Score: 1

      Probably because "we didn't pay for that". Never mind that it's a perfectly nice clock algorithm, the best that money can buy :)

      --

      Your right to not believe: Americans United for Separation of Church and

    4. Re:Coupla Notes by Anonymous Coward · · Score: 0

      First off you always code to spec ... its considered a bug if it works any other way then spec (this includes features that would be considered worth while).

      As for the patriot he's right the specs where for up to 12 hours. The problem was that they where running them for over 100 hours. The army knew of the problem and continued to use the incorrectly. The company that made them actually put out a patch to fix the problem but the army never patched the software.

      Its never a bug when you code to spec.

    5. Re:Coupla Notes by Anonymous Coward · · Score: 0

      Because No clock is accurate enough to be assumed to be correct forever.

      What blows my mind is that patriot missle system had easy access to a known Good Time based on GPS data.(Data which would have been used to know it's own location in the scheme of things).

    6. Re:Coupla Notes by Tazzy531 · · Score: 2

      In defense contracting, everything has to be followed to the exact requirements. Any deviation pretty much voids the contract.

      I used to work for a computer store that had an order to build computer to be sent to bosnia. The specs included stuff such as which slot certain cards have to be inserted. How the wires must be tied up and which wire to group with which. Location of drives like cdrom..etc.

      --


      _______________________________
      "I'm not Conceited...I'm just a realist..."
    7. Re:Coupla Notes by StormyMonday · · Score: 2

      Two reasons. Minor reason: It Is Assumed that a "better algorithm" will use "more resources", whether it does or not. (Defintions of the terms in quotes are optional.)

      Major reason: Defense contractors cannot make money by building a system strictly as specified. Defense contractors make boxcar loads of money on change orders. The normal sequence here would be:

      1. Build the system strictly to spec.
      2. Write a discrepency report identifying a potential clock problem and outlining a fix.
      3. Get a change order and a boatload of money from the government.
      4. Do it the way it should have been done in the first place.

      Any reasonably sized system will have thousands of these change orders.

      --
      Welcome to the Turing Tarpit, where everything is possible but nothing interesting is easy.
    8. Re:Coupla Notes by Anonymous Coward · · Score: 0

      Any particular reason why?

      You can add the feature later for additional money. Who doesn't want additional money?

  71. This one was deadly: by _ph1ux_ · · Score: 2

    "Wrong Starting Estimate of Uranus mass in
    Iteration, Data Compression, 1986"


    Caused wife 1.0 to go into panic and terminate all sex threads for the next three weeks.

  72. dumbass, the patriot didnt kill anyone by benploni · · Score: 2

    a fucking scud did. The patriot bug prevented it from helping, but it didnt kill anyone. Sheesh.

  73. Always works right on my system by nomadicGeek · · Score: 5, Funny

    My software always works perfectly on my system. Zero bugs.

    I have no idea what the hell the users do to it to screw it up.

    1. Re:Always works right on my system by AresTheImpaler · · Score: 1

      Do you work at Mircosoft? They say that their software is bug free.. It's always the users problem..

    2. Re:Always works right on my system by nomadicGeek · · Score: 1

      I don't work at Microsoft but I do aspire to one day rule the world.

      Currently my bugs only afflict hundreds of users but one day...

    3. Re:Always works right on my system by psykax · · Score: 1

      They turn the system on.

  74. All these stories remind me of the time ... by Aging_Newbie · · Score: 1

    A student in my robotics lab mistakenly inserted a mirror-the-z-axis instruction in a robot program - oops - The robot dutifully attempted to follow and lifted itself on its gripper, almost tipping itself over. It made me glad that I hadn't bolted it down since either the table or the robot would have had to suffer.

  75. SLASHDOTTED by Anonymous Coward · · Score: 0

    leave it alone.... I want in :-)

  76. Reminds me of mine... by thrillbert · · Score: 4, Funny

    When after sitting down for 36 hours straight when I first learned to program in C, I wrote a small, but usefull, payroll program. By the end, during the function that would print out the check, I added "Press any key to continue, any other key to abort". Lucky for me I never released that program.

    ---
    All comments are not factual unless stated otherwise.

    1. Re:Reminds me of mine... by Tony-A · · Score: 2

      "Press any key to continue, any other key to abort".
      Funny, yeah. But it beats a dialog box with just an OK box.

  77. USS Vincennes Incident was NOT software related by kylef · · Score: 3, Informative

    There were many things that went wrong during the incident, but one of the FEW things that worked correctly was the AEGIS weapons system on board the guided missile cruiser. The error lay in the crew's mistaking the range information reported on the radar screen with altitude information. As a result, the CO thought that the incoming contact was flying straight towards his ship and decreasing in altitude (preparing to attack).

    Blaming a "cryptic display" is hardly a software bug if anyone is familiar with radar screens. That's why we train people to read them!

    1. Re:USS Vincennes Incident was NOT software related by kylef · · Score: 1

      I'm referencing here the downing of the Iranian Airbus commercial airliner by the USS Vincennes (Arleigh Burke AEGIS guided missile cruiser) that killed about 300 people in 1988.

      Here's a transcript of the
      Newsweek Story that goes into detail about the entire incident. It's a little biased against the U.S. Navy because of their reluctance to publicize their screw-up, but according to what I learned studying the incident in my Navy ROTC classes, it's fairly accurate.

    2. Re:USS Vincennes Incident was NOT software related by rob_from_ca · · Score: 1

      While it certainly true that software was not solely responsible for this tragedy, in the real world it is rarely one single item that causes a system to fail. Typically it is a complex, almost unforseeable combination/chain of small events, each not possible without the one before it.

      In this case, software contributed to the problem by not sufficiently differentiating between range and altitude information enough. The interface was designed to be used under combat circumstances, and should be layed out as easily and simply as possible. Non-obvious interfaces and information presentation is a common way that software can induce a human error, and systems designed for mission critical deployment should be carefuly and thoroughly usability tested, in an environment as close as possible to it's deployment environment.

    3. Re:USS Vincennes Incident was NOT software related by Anonymous Coward · · Score: 0

      Point of clarification: It was a Ticonderoga Class Aegis Cruiser.. not a Burke Destroyer.

  78. Re:It's Worse: The Patriot Never Worked by hij · · Score: 2
    It is true that many of the scuds broke apart during re-entry. Some of them did not. Even if all of them did break up, the round-off error is still important. Because the timing system uses a relative time the truncation error associated with arithmentic of large numbers is still deadly, and it is still important.

    The bizarre thing is that the fix is that a patriot installation literally has to re-boot on regular intervals in order to reset the internal timers. The bug is real, and it has to be dealt with.

    --
    Believe nothing -- Buddha
  79. MOD THIS UP by Anonymous Coward · · Score: 0

    No discussion of catastrophic bugs is complete without the Therac incident report. Everybody who calls himself or herself a "programmer" should be forced to read that one... twice.

    1. Re:MOD THIS UP by halflinger_n · · Score: 2, Informative
      There is also

      http://sunnyday.mit.edu/therac-25.html

      Which includes links to the author's other papers and publications.

  80. crazy by odyrithm · · Score: 0

    I live with a house mate that loves optimised coding.. along with this he cant stand adding code just to to simple sanity checks.. now this bloke was gonna get a job with some government missile development base.... :/

    I dont see how you can justify speed over reliability to such an extent.. are there lots of you kinda coders out there?

    --
    moo
  81. stairway to heaven by Lepruhkawn · · Score: 1

    I'm picturing this: bridge full of people, I whip out my sound system and lighter and blast out "Stairway" with my lighter held on high.

    I start to sway. Everyone else sways.

    As the bridge comes down and I fall to my death, I think that must be the most original way to flaunt those suicide hotline signs at the end of the bridge.

    --
    Jesus saves....And takes 1/2 damage.
    1. Re:stairway to heaven by rde · · Score: 1

      No better way to get rid of a bunch of ageing zep fans. Now, if only you'd sway to the theme song to Friends, I'd be truly happy.

      Disclaimer: I, to am a zep fan. I really am. But I've always considered whipping out lighters during a gig to be a hanging offence.

    2. Re:stairway to heaven by el_chicano · · Score: 2
      I've always considered whipping out lighters during a gig to be a hanging offence.
      IFF you are not sparking up a doobie of course! :->
      --
      A man who wants nothing is invincible
  82. Software bugs...YES! by wurp · · Score: 2

    We have to accomodate our users and unknown environments. When a reasonable user makes your program do something bad, that's either a user training problem or a software bug. You didn't check input data carefully enough, or you didn't provide a good user interface, or your requirements were bad, etc. All of those are software bugs.

    The Pentium bug, I'll agree with. Florida voting, I'll agree with. DDOS is software bug. Software run in an environment like the web has to accomodate malicious users. Wall Street Crash, software bug. There was a set of conditions in which the software did bad things.

    1. Re:Software bugs...YES! by Anonymous Coward · · Score: 0

      Actually, the Pentium bug was software related not hardware. The "computer hardware" was fine. The burned in microcode was wrong. So, despite the fact that it manifested itself as a hardware error, it was in fact the chip's own software that was wrong.

    2. Re:Software bugs...YES! by T.E.D. · · Score: 1

      "burned in" != Software.

      At best, you can call it firmware.

    3. Re:Software bugs...YES! by ejasons · · Score: 2, Insightful

      Wall Street Crash, software bug.

      If the software performs according to its specifications (which I assume this software did), then it's not a "software bug", it's an error in the requirements.
    4. Re:Software bugs...YES! by room101 · · Score: 2

      Actaully, if you rtfa (I didn't read the entire thing either), it says that it was an improper for loop to generate this lookup table. This I think was a software problem: they used software to generate this lookup table. It doesn't really matter what the did with the data (burned it into silicon or printed it on a report).

      --
      room101 -- how much can you stand before they break you?
      (they always break you eventually)
    5. Re:Software bugs...YES! by wurp · · Score: 0

      An error in the requirements is a software bug, as far as I'm concerned.

    6. Re:Software bugs...YES! by Tony-A · · Score: 2

      "burned in" != Software.

      ROM BIOS

    7. Re:Software bugs...YES! by Anonymous Coward · · Score: 0

      Especially if the software's never written.

  83. He forgot my favourite... by felipeal · · Score: 2

    ...the ice cream bug!

  84. Re:It's Worse: The Patriot Never Worked by Wavicle · · Score: 3, Insightful

    Your first link is a translation of a patriotic Israeli article cheerleading the competence of their military. It doesn't necessarily make what they're saying false, but does make it suspect.

    The second link is way low on content, I'm not sure how to judge it. All it says is "we looked at a bunch of videotapes and arrived at this conclusion". And then goes on to mention the bitter dispute between the U.S. and Israeli military over why the system didn't work so well in Israel.

    I'm not sure I'm going to buy either argument. I know enough about flight characteristics to question the assertion that the scuds were so good at jinking and chaff the patriots (which were originally designed to hit jinking, chaff releasing aircraft) couldn't hit them.

    If the scuds were dropping debris because extra fuel tanks made them unstable:

    1) Why wasn't the wobble a pronounced problem at launch when the extra weight would have completely thrown off the trim characteristics of the missile?

    2) Dropping "debris" is a bad thing, and it's only a matter of time before doing so results in an uncorrectable failure of the missiles flight aerodynamics. Why weren't most of them failing earlier?

    3) Missiles don't fly in smooth trajectories nearly as often as you think. They jink to try and make anti missile systems (like say the Phalanx close-in weapons system) miss them or think they are dead and not worth any more attention.

    Even if the patriots did fail, why would that have grave implications for our anti ballistic missile shield? SCUDs are cruise missiles, not ballistic missiles. Why do you think those big computers at Norad can accurately predict where the warheads will hit just after boost?

    --
    Education is a better safeguard of liberty than a standing army.
    Edward Everett (1794 - 1865)
  85. Re:Millennium Bridge - Kansas City skywalk by victim · · Score: 5, Interesting

    Human effects on bridges is hardly a surprise. Recall in 1981 when the Kansas City Hyatt's skywalk collapsed, killing 114, because the pedestrians were dancing (and the design was altered to ease construction). You'd think that would have been enough of a wake up call to the millenium designers to consider human motion. more info

    Armys break cadence when marching across bridges, at least as far back as Napoleon's time. Presumably they learned that the hard way.

    On a more personal note, I have participated in the unintentional destruction of a gymnasium. 80 or so people crowded together in the middle, bouncing up and down, and then "down and down". We fractured the engineered wooden joists. Fortunately it failed gracefully. Just sagged down about 4 feet in the middle.

    What I'm trying to say, not particularly directly, is "don't give the designers of the bridge a pass because this new phenomenon struct their bridge". Chastise them for risking people's lives and wasting resources by neglecting the loads placed on bridges.

  86. I always liked... by sirgoran · · Score: 1

    The old joke about the coder informing the salesman about the "Bug" in the software.
    To which the salesman replied, "It's not a bug, it's an unexpected feature!"

    Sales people are the bane of the coders existance.

    We have to create the products they already sold to the clients.

    -Goran

    --
    Carpe Scrotum - The only way to deal with your competition.
  87. something bad from an unexpected input is a bug. by systemaster · · Score: 2, Insightful

    In one of my programming classes an instructor had a phrase that applies to this. "Bullet proof your code" Meaning whatever the user enters the program should work right.

    Problems often come up in programing for input. Normally you have an expected range of input, and if your program works at all and the input is in the expected range you get the expected output. BUT what if the use enters the ABSOLUTE maximum value, is your variable size large enough? what about the absolute min, often zero, does it still work right. Your not going to try and divide by that zero or something that will fail. What if a negative number is entered.

    Those are all basic unput checking questions...but its the general idea. Bullet proof your code, or at least try to make it so.

    --
    LinuxWorx
    Spelling errors are intentional as are gramatical error
  88. The Patriot Problem was well known by AppyPappy · · Score: 2

    During live coverage of a Scud attack, one of the Patriots veered sharply to the left and hit an insurance office. The cause was said to be an error due to a time leak. The longer the Patriots were "online", the more leakage occured.

    --

    If you aren't part of the solution, there is good money to be made prolonging the problem

  89. Not really a bug though... by bigmouth_strikes · · Score: 1
    23. Falkland Exocet (Argentinian (French-friendly) Exocet sinks British H.M.S.Sheffield, 1983)

    The British destroyer H.M.S. Sheffield was sunk in the Falkland Islands war. According to one report, the ship's radar warning systems were programmed to identify the Exocet missile as "friendly" because the British arsenal includes the Exocet's homing device and allowed the missile to reach its target, namely the Sheffield. From "The development of software for ballistic-missile defense," by H. Lin, Scientific American, vol. 253, no. 6 (Dec. 1985), p. 48.


    This was perhaps a glitch in the design of the system, but it certainly sounds like the software worked as intended. That's not a bug, is it ?

    --
    Oh, I can't help quoting you because everything that you said rings true
    1. Re:Not really a bug though... by bluGill · · Score: 2

      Works as designed is the excuse for a LARGE number of bugs. Just because it was desgined that way doesn't mean it isn't a bug, just that the bug goes deeper than software, into the design.

  90. Computer-Related Risks by Peter G. Neumann by Malic · · Score: 3, Interesting

    This IS the text on this very sort of thing. I love techno-"oops, that's not right, is it?"-horror stories and this book is filled with them. I REALLY recommend this book! Here's an example of the page after page of entries it contains:

    Making Rupee!

    Due to a bank error in the current exchange rate, an Australian man was able to purchase Sri Lankan rupees for (Australian) $104,500, and then to sell them to another bank the next day for $440,258. (The first banks' computer had displayed the Central Pacific franc rate in the rupee position.) Because of the circumstances surrounding the bank's error, a judge ruled that the man had acted without intended fraud, and could keep his windfall of $335,758.

    Computer Related Risks - Peter G. Neumann - ACM Press - 1995


    The bottom line here is "computing is, in a technical sense, a risk". Actually, technology - of any kind - is a risk. Which I suppose leads us to remember that life is a risk.

    At which point, I'll just stop rambling and point you all to Amazon to buy the book.

    --
    I swear by MacOS X. Although I use to swear *at* MacOS 9...
    1. Re:Computer-Related Risks by Peter G. Neumann by (outer-limits) · · Score: 1
      The ANZ in Australia had a classic case. A chronic gambler, whose bank account was so far in the red due to overdraws, bank fees etc, did not give up.

      He tried to get some money out of the ATM and it worked! A bug in the code meant that even though he had a negative balance, due to code that was designed to stop bank fees piling up on bank fees, the fact that he was withdrawing from an account with a negative balance meant that he could withdraw as much cash as he wanted, it was not debited to the bank account.

      All the bank knew was that ATMs were being drained and they had now idea who it was or how.

      Security guards at a casino actually watched this guy standing at an ATM, slowly draining it for about an hour. That was the only reason they caught him.

      If he hadn't been so dumb, this could have gone on for years.

      Of course, he just blew all the money on gambling and had nothing to show for it.

      --

      Microsoft - Where would you like to go today, Maybe Jail?

    2. Re:Computer-Related Risks by Peter G. Neumann by KernelHappy · · Score: 2

      Eh I've seen worse.

      The first piece of code I ever QA'd back in the day, that was interesting. The long short of the story is my code went in, and people returning stuff were being credited with several million dollars instead of the $20 or $30 they were supposed to get. I was only working at this job for 2 weeks and when I heard about this problem I started gathering my stuff into a pile expecting to be fired on the spot.

      Turns out my code was good someone had changed the configuration during the cutover and the other companies code was so poorly written it was subtracting the return amount from 0 in an unsigned int and putting that amount back in peoples account.

      All said and done something along the lines of $3.5 trillion was accidentally refunded to people but they caught it early enough and were able to undo it. I heard that they only lost about $15K in actual funds (not including panic, man hours to fix, etc).

      --
      -- Button up, your ignorance is showing
  91. Way off Base by Anonymous Coward · · Score: 0
    The authors of this article did not look at the details. I have an aquaintace who worked on ballistic missle programs in the military sector for years, most of the standard more advanced programs out there (Visual Basic 6.0 or .NET being an example) will trap most of these errors for you.

    For example in VB if I say;

    dim strDouble as string

    and say strdouble = strDouble * 0.02

    I will get a run time error trying to compile the code (it is a result of a TYPE CONVERSION ERROR). I don't think that this type of error is possible with the advanced compilers on the market.

    I think this is another example of the government trying to cover up some stuff with a savvy press release. Don't believe everything you read. This mistake with the missles is just a story to cover up a more emberrassing truth.

  92. Code for killing machine by Gray · · Score: 1

    Man I'm glad I can safely say nobodies life will ever hang on my ability to code.

  93. CUI by Ozan · · Score: 5, Insightful

    I think most of the bugs in software are the result of "Coding Under Influence". Wether it is a strict time-limit, ambiguous specifications, no sleep or other disturbances, it leads to blatant dumb assumptions or similar faults. Everyone knows that driving under influence is dangerous and can lead to accidents. Why do "software architects" think this is different when someone writes important programs?
    I think part of the problem is that writing software is a rather new handwork in comparison to e.g. metalworking. Programmers don't have a union, often they work under poorer confitions than workers at conveyor belts if you consider the higher responsibility they have.

    1. Re:CUI by Falrick · · Score: 1

      I think part of the problem is that writing software is a rather new handwork in comparison to e.g. metalworking. Programmers don't have a union, often they work under poorer confitions than workers at conveyor belts if you consider the higher responsibility they have.

      Having done both, I'd have to disagree with you whole-heartedly. Even though I worked 18 hours, staying until 2 AM, Monday, there is no way that I would agree that that was worse then when I worked at the sheet metal factory.

      *looks around* I don't see any 5 ton presses around me. I don't have to wear ear-plugs and safety glasses while writing code. I've never heard about anyone losing their fingers or arms because they set the phone down on them. Being a code monkey might have its downsides but it involves no where near the perils that you encounter working in a factory.

      --
      something clever
    2. Re:CUI by WhaDaYaKnow · · Score: 1

      Everyone knows that driving under influence is dangerous and can lead to accidents. Why do "software architects" think this is different when someone writes important programs?

      Yeah, because driving a car and coding is EXACTLY the same thing.

      What utter crap. Keep on trolling.

    3. Re:CUI by 3am · · Score: 1

      You're right, but I think you also missed the point.

      What if the guy who's programming the 5 ton presses or industrial laser cutter was up for 32 hours straight to meet a deadline?

      --

      A: None. The Universe spins the bulb, and the Zen master merely stays out of the way.
    4. Re:CUI by Reziac · · Score: 2

      As part of a software testing team on a private project, I worked very closely with a set of professional coders for a two year stretch. In my observation (and mind you, I personally found 75% of the bugs listed in the changelogs), bugs came mostly in two types:

      1) Plain old mistakes: "Ooops, I didn't notice that!"

      2) Barn-blindness or hypersensitive ego: "You're crazy, I never make mistakes like that."

      The former were usually relatively trivial bugs, or were blatantly obvious. The latter tended to be serious or fatal with extended use of the program, tho were often not visible in a short test.

      --
      ~REZ~ #43301. Who'd fake being me anyway?
  94. Re:Debugging by Steveftoth · · Score: 1

    But that's exactly what debugging is. Implmenting a spec is one thing, but also being able to handle data that isn't exactly what you expect is what happens after you debug an application.

    As a programmer, you parse through input from a user, if the user does something that they are not supposed to, the program should either ignore the input or prompt the user, possiable an error message.

    You have to throw data at a program that it shouldn't get and the program should only do what it was designed to do, not more or less. Buffer overflows are bugs in software that can be exploited to make to program do something it wasn't designed to do.

  95. more here by 3-State+Bit · · Score: 3, Informative
  96. Re:Millennium Bridge, not quite by tedtimmons · · Score: 1

    The problem wasn't that pedestrians swayed, but that when the bridge swayed, the pedestrians compensated to keep in balance. This caused the bridge to sway more.. you get the point.

    Cars don't do this. But we move our feet to stabalize ourselves. Not too many bridges have to worry about something like this.

    The fix was pretty easy too. They essentially put shock absorbers under the bridge. Just like what a car uses to keep a spring from rebounding incessantly.

  97. F15 equator bug by darkonc · · Score: 2
    The web page has it as being the F14, but I remembered a posting from that time that said it was the F15 (and it makes more sense, since the F15 was one of the first fly-by-wire aircraft, while the F14, is (I think), pretty much fly by cable).

    In any case, the SERIOUS problem was that when you flew over the equator, the computer would suddenly 'realize' that you were upside down from where you wanted to be and try to immediately turn the aircraft over to the 'proper' orientation. It was said that the aircraft would have survived the maneuver, but the pilot's neck would not.

    Luckily this was found during simulations If it had happened during a real flight, it could have taken a long time (and lots of fatalities) to figure it out.

    On a lighter note, there is apparently a subroutine -- phonetically referred to.. It was either wait_on_wheels() or weight_on_wheels(). In either case, it was added after some slap-happy test pilot tried retracting the landing gear while sitting on the runway (resulting in millions of dollars of repairs).

    --
    Sometimes boldness is in fashion. Sometimes only the brave will be bold.
    1. Re:F15 equator bug by Nehemiah+S. · · Score: 2, Informative

      The prototype F-22 was also lost due to a sign error in the code which controlled the thrust-vectoring nozzles during landing. Technically it was chalked up to pilot error, since he was supposed to lock the nozzles down before beginning the landing procedure, but it is something that should have been considered in the code.

      Frm the unclassified accident report:

      "At the time of the crash, Morgenfeld had been carrying out a planned go-around, and he had just switched on his afterburners and had retracted his undercarriage at less than 50 feet off the runway with thrust vectoring active. At a speed of 175 knots, the aircraft began an uncommanded pitchup followed by a severe stick-forward command from the pilot. The aircraft then entered a series of pitch oscillations, with rapid tail and thrust nozzle fluctuations, exacerbated by control surface actuators hitting rate limiters causing commands to get out of synchronization with their execution.

      An investigation later showed that Morgenfeld had ignored a test-card that required that the vectoring nozzles to be locked into position in just such a configuration that he had found himself at the time of the crash. However, most engineers had also ignored this instruction since they thought it to be unnecessary. At the time of the accident, the aircraft had made some 760 flights and had logged 100.4 hours in the air."

      neh
      aero geek :)

      --
      ... and there is no doubt, that one day he will be
      where the eye of his telescope has already been
  98. Re:It's Worse: The Patriot Never Worked by amembrane · · Score: 1
    Here's a link on the Coriolis effect. http://www.sciam.com/askexpert/physics/physics20.h tml

    Of course, no one has ever died as a result of the Coriolis effect, but the rotational frame of reference one of the scientists refers to sounds like the rocket that missed its landing point in the original link.

    --
    They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.
  99. OT: The Christian Science Monitor by Squirrel+Killer · · Score: 2, Informative
    Note: I am NOT a regular reader of the Christian Science Monitor.
    That's too bad, you should be. The CSM is highly regarded non-partisan, non-denominational, very independent paper. It is one of the few sources of quality international news in the US (aside from the internet.) While I won't go so far as to say that it is completely unbiased, it certainly is one of the least biased news sources I know of, and their coverage is usually well-balanced. For more info about the paper, check their About the Monitor page. If nothing else, the page is indicative of how independent of the church is the paper.

    -sk

  100. Lots of testing in source installs by A+nonymous+Coward · · Score: 2
    Not saying they are *good* tests, but many source install instructions have the basic steps
    • ./configure
    • make
    • make test
    • make install

    I always run these.

    I had a job writing regression tests. I have not looked into any of these install tests. I doubt they are as thorough as they could be, but they have failed once in a while, and I have always investigated the failures.
  101. Random Errors can be good by zandermander · · Score: 1, Insightful

    I have read that one advantage we had over the Germans in WWII was that our machine guns were not as accurate as theirs.

    Due to this inaccuracy, our machine gunners were able to hit a larger window, didn't need to shoot as accurately and, as a result, killed more people- kind of like comparing a pistol to a shotgun.

    So, maybe Saddam is on to something by 'copying' good 'ole Yankee ingenuity.

  102. When you finish with bugs by Mr+Guy · · Score: 1

    ... try some intentional stupidity. The Interface Hall of Shame

    1. Re:When you finish with bugs by (outer-limits) · · Score: 1

      I could spend weeks looking at that site, and hanging my head in shame.

      --

      Microsoft - Where would you like to go today, Maybe Jail?

  103. formula1 bugs by hpavc · · Score: 1

    i wonder how long it will be before a f1 driver is lost or something insane occurs with all the new software they have and the ability for the pits to communicate back to the cars now legally.
    i would love to see the bug list that the teams a have accumulated already with the new launch control systems ... 'changed permissions on steering wheel device ... locked driver user out of ability to change back break balance'
    i noticed that BAR/Honda has a job opportunity for NT embedded programmers (Windows CE) with msXML & Soap experience ... oh my i can just see using BAR/Honda as a weapon to take out other drivers on the track. because they use some insecure microsoft shit in their cars.
    homefully the embedded NT stuff was for something like a sophisticated training PDA instead of dealing with the car.

    --
    members are seeing something, your seeing an ad
  104. Re:Millennium Bridge - Kansas City skywalk by lingsb · · Score: 2, Informative

    Your assumption about the nature of pedestrian motion that caused the bridge wobble is incorrect:

    They did take into account pedestrian movement on the bridge; they didnt take into account pedestrian motion on the bridge locking in to the motion of the bridge:

    1) Pedestrians walk on bridge
    2) Bridge wobbles slightly
    3) Pedestrians adjust their walking to be in phase with bridge
    4) Bridge wobbles more

    This was a new phenomenon, due to the lightness of the construction of the bridge. It is now fixed, by the addition of dampers.

    --

    -BB

  105. Re:It's Worse: The Patriot Never Worked by joib · · Score: 2

    Uh oh. The SCUD is very much a ballistic missile. Therefore most of your points are moot as debris follows the same trajectory as the rest of the missile, disregarding air resistance of course.

  106. Re:It's Worse: The Patriot Never Worked by GT_Alias · · Score: 1
    Seems to me that would make a great stealth missle then...design a missle that purposefully wobbles and "dances around" in midflight.

    I don't even pretend that it would be easy to create a stable unstable flight, but it seems that if something so dumb can elude our ultra-high-tech anti-missile systems, then maybe we should consider doing the same thing on purpose. Without letting the missle turn in to a mass of flying shrapnel though.

  107. OH WAIT! by Quicksilver31337 · · Score: 0

    THAT NEVER HAPPEND, you people have some real reality issues. MOVIES ARENT NECESSARALLY REAL!

    --
    _______
    Death wish, n.:

    The only wish that always comes true, whether or not one wishes it t
  108. Yorktown and divide by zero errors by Fastball · · Score: 2
    I remember reading about the USS Yorktown a couple years back. I laughed so hard I almost came apart.


    I wonder what experiences anyone else has had with divide by zero "glitches." Anybody else have a similar experience?

  109. Re:Millennium Bridge - Kansas City skywalk by igrek · · Score: 5, Funny

    In the old USSR (Stalin times), there was a standard bridge acceptance test:
    1) put project managers, lead architects and engineers under the bridge;
    2) put heavy loaded trucks on the bridge.

    That was real extreme testing.

  110. Pentium bug was a software error, not hardware by Anonymous Coward · · Score: 0
    A lot of posters seem to be saying that the Pentium error was a hardware error. That is incorrect.



    Actually, the Pentium bug was software related not hardware. The "computer hardware" was fine. The burned in microcode was wrong. So, despite the fact that it manifested itself as a hardware error, it was in fact the chip's own software that was wrong.



    Embedded code is still code.

  111. To shrink word files by pommiekiwifruit · · Score: 1

    Don't put screen captures directly into .DOCs, as they will probably be stored as uncompressed 24 bit RGB images. Simply convert them into 256 colour images before pasting them into the file and they will be stored with run length encoding.

    Also turn off "fast save" (otherwise known as "corrupt my data").

    Alas I think it is harder to get rid of the rest of the crap it puts in there (unless you save as RTF and manually trim it :-)

    1. Re:To shrink word files by gblues · · Score: 2

      Actually, it's a three-step process:

      1. Create your document.
      2. Save as RTF.
      3. Open the RTF in Wordpad and immediately save the file.

      For some reason, Wordpad saves RTF files smaller than Word does. Go figure.

    2. Re:To shrink word files by a_n_d_e_r_s · · Score: 1

      Alternate and faster solution:

      Ditch MS Word and use Open Office and store
      the files in its smaller and better format.

      --
      Just saying it like it are.
    3. Re:To shrink word files by pommiekiwifruit · · Score: 1

      Wow! That works, shrinking "This is a test" from 19456 bytes (.doc) to 2573 bytes (.rtf) to 173 bytes (slimline .rtf). And if you rename it to *.doc word still loads it in fine.

    4. Re:To shrink word files by danro · · Score: 2

      For some reason, Wordpad saves RTF files smaller than Word does. Go figure.

      Easy, wordpad was too small to get all the bloat in.
      I'm sure they will have fixed that in the next version of windows ;-)

      --

      "First lesson," Jon said. "Stick them with the pointy end."
  112. Monitoring lifesigns of astronaut causes s/w crash by Anonymous Coward · · Score: 0

    A lady told me after showing her the bug web site that during the 60's when they were developing s/w to monitor the astronaut that a person who prided himself in zero bugs in his s/w had develivered s/w that crashed. In this case the s/w did data reduction of data which and crashed since it didn't take into account the astronaut dying (in which case an astronaut actually did die) and thus the vital sign data was flat lining.

  113. I found a bug by Anonymous Coward · · Score: 0

    in the data area of my driveway. It doesn't contain a delorean, and I think you should fix that particular bug.

  114. Re:Millennium Bridge - Kansas City skywalk by Captain+Nitpick · · Score: 2, Informative
    Human effects on bridges is hardly a surprise. Recall in 1981 when the Kansas City Hyatt's skywalk collapsed, killing 114, because the pedestrians were dancing (and the design was altered to ease construction). You'd think that would have been enough of a wake up call to the millenium designers to consider human motion.

    The Hyatt's skywalk collapsed soley because of the change in design. The design change caused the walkway to fail to meet building code. Some civil engineers who studied the disaster were surprised it could support its own weight, much less the weight of the pedestrians.

    Quoting from a Kansas City Star article.

    The National Bureau of Standards concluded failure was just a matter of time. "The walkways," its probe found, "had only minimal capacity to resist their own weight."

    The dancing people were by and large on the floor below the skywalk, participating in a dance contest.

    The mistake that caused the Hyatt disaster was not one of failing to consider human motion in the design, but failing to consider the effects of seemingly minor changes in design.

    --
    But then again, I could be wrong.
  115. ROFLMAO! Mod this one up!!! by Anonymous Coward · · Score: 0

    Thanks dude (presumably). I had tears coming from my eyes laughing at this one.

  116. Bugs are not errors... by Anonymous Coward · · Score: 0

    Perhaps all errors are bugs.

    However, not all bugs are errors.

    As another anonymous poster intimated with a quote from the Mythical Man Month, there are some bugs that arise not from errors in coding per se, but from problems that arise in the combination of code or in unanticipated uses of it.

    You could call such things errors, in that coders should understand how their code works together and should anticipate users' intended behavior.

    However, I think "bug" is a more apt term, because it more adequately describes the fact that some problems arise not from the code itself, but from factors that arise from elsewhere, outside of the structured input and output of the program. They are factors beyond the correctness of the code, that arise from inadquate understanding of the system in which the program functions.

    Anyone can make any code "buggy" by using it in a way that it was not intended for--by going outside the input scope of the program, so to speak. You might say that that's not a bug, it's misuse, but I say there's a fine line, and that fine line is why bugs are not called errors.

  117. three mile island as well? by mikester911 · · Score: 1

    One of my CS profs in college told us that the reason 3 mile island happened was because:

    - the control software for the plant was written in fortran
    - the temperature on one of the readouts came out ***** instead of a number (asterisks in a fortran program represent(ed) a number larger than your format statement will allow)
    - some engineer that didn't know that just said 'huh. look at the pretty asterisks' instead of following up on things.

    is this just urban legend? have i been suckered in?

    1. Re:three mile island as well? by Anonymous Coward · · Score: 0

      That's an urban legend. I live next to TMI, and have heard both the official "company line" version and the "anti-nuke" version. Both fault a combination of human error, control room design, and training. The short version of the story is that a valve stuck open on the primary side of the plant, even though the indicator showed that it was closed. This is the portion of water that goes from the reactor vessel to the steam generator and back. It is ment to run at about 500 degrees F or so, and at about 15 atmospheres. The water is not supposed to boil on the primary side of the plant. With the valve stuck open, the reactor vessel was near it's operating temperature of 500 degrees, but at 1 atmosphere instead of 15. This is well above boiling, and all the water from the primary side of the plant boiled out, ruining it. The plant operators did not know (through improper training, indicators, ect) that the reactor core was not covered by water. They knew that they had a problem, but didn't know what it was, or what to do about it, because they were convinced that they were above the boiling point for water, and hence had the core covered. The operators figured out the error hours later, but after the damage had already been done.

  118. Re:It's Worse: The Patriot Never Worked by YouAreFatMan · · Score: 2

    As a former ADA (Air Defense Artillery) officer in the U.S. Army, I can tell you that the Patriot Missile system was designed primarily to shoot down enemy aircraft. It's ability to kill missiles is a secondary feature.

    --
    Robotiq.com is heavily tested on animals
  119. Re:more phone frolics by TheSquareRoom · · Score: 2, Funny

    In the early 1990s, before this part of the Eastern U.S. had ten digit dialing, our SCO server would dial out, at 1:00 am, to all the little Pep Boys stores in PA and New Jersey in an attempt to update their inventory tables. Alas, one programmer forgot about the New Jersey area codes, and of course there are some overlapping 7 digit numbers between the two states. Oh, and did I mention that the system was coded to KEEP TRYING every ten minutes minutes until it was successful? Heh, heh...at least it wasn't my phone they were ringing at one am...

  120. Re:Millennium Bridge - Kansas City skywalk by erasmus_ · · Score: 2

    Yikes. I'd call in sick that day.

    Of course the bad side of this is that if it collapses, you've just lost
    1) The bridge
    2) People who were most familiar with the project, and could fix it
    3) The heavy loaded trucks that could've been used for something else

    But I guess the idea was to have this be scary enough so that it would never happen. Ever actually hear of a bridge failing this type of test?

    --
    Please subscribe to see the more insightful version of th
  121. But Word is free... by pommiekiwifruit · · Score: 1

    well it comes installed on all PCs, whereas you have to download open office which costs money in bandwidth charges! :-)

    1. Re:But Word is free... by a_n_d_e_r_s · · Score: 1

      Well, I got broadband 10Mb for 250 SEK (about $25) with no bandwith charges so I don't care.

      Besided I've never bought a PC with MS Windows or MS Word pre-installed.

      Have seen ads revently with PCs sold pre-installed with Star Office so I suspect there will not take long until some are sold with Open Office pre-installed.

      --
      Just saying it like it are.
  122. Re:It's Worse: The Patriot Never Worked by Anonymous Coward · · Score: 0

    Actually there are missiles designed to do just that, such as the polyphem fiber guided missile, which has a 'weave' feature.

  123. Re:Millennium Bridge - Kansas City skywalk by dillon_rinker · · Score: 3

    1. You'd have lost this anyway - that's the point of the test.
    2. They designed a failed bridge, and you want them to design the new one?
    3. These are cheap when you have hundreds of millions of slaves.

  124. Re:It's Worse: The Patriot Never Worked by Physics+Dude · · Score: 2, Funny
    ... no one has ever died as a result of the Coriolis effect

    What are you saying! The Corilois effect is one of the main causes of huricanes!

    ;)

  125. Re:It's Worse: The Patriot Never Worked by ~roman · · Score: 1

    The floating point explanation is analogous to that coriolis-effect-causes-water-to-swirl-in-the-toile t myth that you find in so many physics textbooks
    There is even worse physics-textbook myth: that the elevation forces of pane wings are caused by different velocities of the air flow below and above the wing and irrelevant application of Bernoulli law. I thing it was Zukovskij who showed that if there is only laminar convention, total forces are ZERO on any shape. Explanation is little more complex and turbulent convention has to be involved to explain the forces.

  126. Re:It's Worse: The Patriot Never Worked by Kynde · · Score: 2

    Coriolis-effect-causes-water-to-swirl-in-the-toile t myth that you find in so many physics textbooks (the Coriolis effect only works on planetary scales).

    I know this is offtopic, but "planetary scales" ? Please... I certainly hope no one quotes you on that one. Man-sized pendulum is just a one example with what one can easily detect the coriolis effect. Long range cannons are another thing where the coriolis effect is also taken into account and there are many many others.

    Just because the bath tub doesnt show the coriolis effect you shouldnt jump the gun and start talking about "planetary scales".

    --
    1 Earth is warming, 2 It's us, 3 it's royally bad, 4 we need to take action NOW
  127. Semantics by IIRCAFAIKIANAL · · Score: 1

    Firmware can be soft

    --
    Robots are everywhere, and they eat old people's medicine for fuel.
    1. Re:Semantics by T.E.D. · · Score: 1
      Firmware can be soft


      Errr...the whole point of having the word "Firmware" around is to be able to describe stuff that isn't quite either. Perhaps its both and neither at the same time. :-)

      But I was just throwing him a bone anyway. As far as I'm concerned, anything in my PC whose replacement involves a set of pliers is *hardware*.

  128. Case sensitivity by theolein · · Score: 1

    I'm sorry, I don't know VB at all but isn't VB case insensitive?

    Also, with this example, you haven't yet initialized the variable. Wouldn't this give an error of some type regarding use before initialisation?

    1. Re:Case sensitivity by tg_schlacht · · Score: 1

      Well I don't know about the latest .NET incarnation but yes, VB is case insensitive as far as variable naming goes. In fact in the IDE if you enter "strdouble" after a "Dim strDouble as String" statement then "strdouble" is turned into "strDouble". The same thing applies to keywords (all of which have the leading letter capitalized.) If you enter "next ndx" then it will be turned into "Next ndx" when you press enter. As regards variable initialization, Visual Basic automatically initializes variables. Numeric types are zero, strings are "", variants are "Empty", booleans are "False".

    2. Re:Case sensitivity by theolein · · Score: 1

      Thanks, and sorry for being OT

  129. Re:Millennium Bridge - Kansas City skywalk by Anonymous Coward · · Score: 0

    You do have to remember that the contract is usually given to the "lowest" bidder. Cost cutting usually, but not always, means shaving safety factor.

    Like the astronaut said, when asked how he felt. I'm sitting atop a hydrogen bomb built by the low bidder in a government contract! How do you think I feel?

  130. Re: WSP @ Oak Mountain by fognugen · · Score: 1

    Surely out of the 20,000+ people in attendence last weekend in Pelham, some were Slashdotters. Maybe....?

    Well if you were there, I bet the phrase "Bridge not designed for pedestrians dancing" brought back the fear of death for you.

    If you weren't there, this isn't offtopic. Seriously.

  131. Re:It's Worse: The Patriot Never Worked by Toddarooski · · Score: 2
    Somewhat off topic, I suppose, but... this is exactly what moths do when hungry bats gets too close. Apparently, when they're hit by a strong enough sonar signal, they lose control of their nervous system and have little wing seizures. This makes their flight so erratic that the closing-in bat usually misses them. (If you'd like to read more, here's a link for ya)

    Given how the current trend in a lot of scientific fields is to borrow good ideas from mother nature, I'll betcha this is on somebody's drawing board somewhere.

    --

    "Do you expect me to talk?" "No, Mr. Bond. I expect you to die!"

  132. Re:It's Worse: The Patriot Never Worked by Jonathan_S · · Score: 2, Insightful

    Even if the patriots did fail, why would that have grave implications for our anti ballistic missile shield? SCUDs are cruise missiles, not ballistic missiles. Why do you think those big computers at Norad can accurately predict where the warheads will hit just after boost?

    Um, no. The SCUD is the theater ballistic missile not a cruise missle. It looks like a WWII German V2. See this page for more info.

  133. Re:It's Worse: The Patriot Never Worked by charon_on_acheron · · Score: 1

    Last year I was talking to a small-plane pilot about this. I of course had seen the 'educational' shows that explain about the wing shape, air pressure, and such. The pilot mentioned that that was just part of it.

    Then I asked about the stunt planes, the barn-stormers who fly upside-down. He said for those planes, the wings are symetrical top-and-bottom. No "greater air pressure on the underside" or nothing, because if that was the case, when they went upside-down, they would plow into the ground. For them, it is all pilot skills keeping the plane flying level.

    I certainly don't know the full details, but it is an interesting topic.

  134. Some software that works... by gorillasoft · · Score: 2

    Some software that works.

    420,000 lines of code, and only one error found in each of the last three versions.

    In the last eleven versions, 17 errors altogther were found.

    Note how much money it costs to produce software of that quality, and you will see why software usually has bugs - especially when you add in the short development cycles that management wants today. Damn the testing, full release ahead!

  135. Reaction About Reactors by virg_mattes · · Score: 2

    > This small generator can be made pretty damn indestructable (blackbox anyone?)

    This is a nice thought, but we're talking about spacefaring vehicles, not airliners. There isn't an airplane built that goes as high as these vehicles. The problem actually isn't a downrange crash from a failure within launch frame (the casing for the radioactives will withstand this sort of failure), but a reentry-style fall from a failure in the second/third stage. From that height, the generator is going to be falling very fast and very hot, and solid iron has trouble surviving these conditions (as would most black boxes, and anything else not specifically designed to withstand de-orbiting). So, while it's not a very big problem (from sub-orbit, it's hard to hit a populated area), it's still very possible to drop radioactive material in a populated area such that contamination is likely.

    I agree that there has been a lot of fearmongering about using radioactives for spaceships, but we learned in AE classes that using the term "indestructable" in conjunction with anything that leaves the atmosphere is usually a mistake.

    Virg

    1. Re:Reaction About Reactors by D43m0n_C0d3r · · Score: 0

      U'd have to do *alot* to disperse this plutonium in any signifigant manner
      &nbsp
      page 'bout Galileo RTG

      --
      ^_^x
  136. test suites in free software by brlewis · · Score: 2

    BRL has a test suite, as does Kawa. I don't think test suites in free software are so uncommon.

  137. HMS Sheffield by Anonymous Coward · · Score: 0

    The explanation for the sinking of Sheffield is incorrect. I work on the system used (it's still in use, although enhanced beyond recognition). If this was caused by a software error it would have been legendary status within the company. A better description is given here

  138. Real Root Cause of Mars Climate Orbiter Loss by MagnaMark · · Score: 1

    This from the referenced NASA writeup on the loss of the Mars Climate Orbiter:

    "The 'root cause' of the loss of the spacecraft was the failed translation of English units into metric units in a segment of ... software" said Arthur Stephenson, chairman of the Mars Climate Orbiter Mission Failure Investigation Board.

    That's not the root cause! The real root cause is that we in the US insist on using the obsolete, difficult to use, and non-standard English system. The failure to convert units was a manifestation of this true "root cause".

  139. Re:It's Worse: The Patriot Never Worked by GuyMannDude · · Score: 1

    I'm sorry you didn't find either link I provided to be convincing. There are many other sources of info. I suggested (and still do suggest) that interested readers do their own web search.

    Dropping "debris" is a bad thing, and it's only a matter of time before doing so results in an uncorrectable failure of the missiles flight aerodynamics. Why weren't most of them failing earlier?

    If your point is that a missle so unreliable doesn't make a good miliary weapon, I completely agree. The Iraqis were desperate to increase the range of the scuds and simply took the missles apart, stuck in some more fuel, and tried to put them back together. I doubt they tested the modifications thoroughly. Scuds in general are thought to be "joke" weapons. Most military planners felt this way prior to the Gulf War and had so little respect for the scuds that they didn't bother to factor search-and-destroy missions into their planning. Unfortunately the scuds, while poor military weapons, are reasonably good terror weapons. They have crap accuracy but can hit an Israeli city well enough. When the problem became apparent, the US had to divert significant aerial resources to search-and-destroy missions. So, in a way, the laughable scud actually was a successful weapon, if you consider that terror was Saddam's goal.

    Even if the patriots did fail, why would that have grave implications for our anti ballistic missile shield? SCUDs are cruise missiles, not ballistic missiles.

    As others have already pointed out, your statement is in error. Scuds are certainly not sophisticated cruise missles. My comment about the Patriot failure being a bad sign for our upcoming missle defense shield was to point out that if we can't hit relatively-slow-flying scuds, how are we possibly going to hit speedy ICBMs? We haven't even solved the theatre ballistic missle problem yet. So we're years away from being able to intercept WMD-bearing ICBMs.

    GMD

  140. Humiliation by baezark · · Score: 1

    As I heard someone say: "The program fails and the power plant explodes, poisoning the earth and the sea. Famine and disease sweep the world. All die. Oh, the embarrassment."

    -bZ-

    1. Re:Humiliation by tg_schlacht · · Score: 1

      I recognize that. That is from the short story "A !Tangled Web" by Joe Haldeman.

  141. Re:It's Worse: The Patriot Never Worked by 5KVGhost · · Score: 5, Insightful
    The failure of the Patriots to intercept scuds (and the fact that the media never mentions this) has grave implications for our anti ballistic missle shield.


    I'm pretty sure the media has mentioned this, beyond those two media links you already posted, I mean. The issue has been debated since the first Patriot experiences during the Gulf War.

    But I don't really see how this has "grave implications" for an anti-ballistic missile shield. The effectiveness of the Patriot missile used during the Gulf War era is in doubt, but a that does nothing to invalidate the general concept of destroying a ballistic missile with another interceptor missile. It certainly isn't easy to do, and there may be better ways to accomplish the same goal or things more worthy of our limited resources, but to claim that it's somehow physically impossible is both disingenuous and incorrect.
  142. How to shut down 67 restaurants all at once. by pmorrison · · Score: 1

    I once wrote a little program that extracted per-store files from a mainframe and deposited them on a LAN for transmission to the stores during nightly polling. One thing I didn't check for was behavior when disk space was exhausted on the LAN. What happened was that 0-byte files were created, but the data appends failed. When the dozen or so per-store files were downloaded to the stores and out to the POS terminals, they replaced the formerly good files, and when the terminals rebooted they nastily crashed, neatly mangling operations at the stores and in IT that morning while we scrambled for solutions.

    Of course, we modded the program so it would warn and page when LAN space was reaching its limit. And they bought a bigger hard drive and we never had that problem again.

    So, remember to check for space before you write those files.

  143. Re:It's Worse: The Patriot Never Worked by ~roman · · Score: 1

    Continuin OT:
    I know this is offtopic, but "planetary scales" ? Please... I certainly hope no one quotes you on that one. Man-sized pendulum is just a one example with what one can easily detect the coriolis effect.
    You are right in a sense that you can "easily" set your own experiment which proves eatrh rotation (although I would go rather which biger pendulim than man-sized and repeat the "church pendulum " experiment. He cerpainly ment swirl convention in the atmosprhere as this is wrongly as a anologous to the "wrong" sink swirl.
    Long range cannons are another thing where the coriolis effect is also taken into account
    Here you are wrong: the influence of the wind is certainly much higher than the effect
    many many others
    wrong explanation of C. effect. And as you say,
    I certainly hope no one quotes you on that one.

  144. Paperware by IIRCAFAIKIANAL · · Score: 1

    How about the code I used to write for my crappy atari in basic - I didn't have a disk drive so I had to key it in whenever I wanted to run it - I was a very poor geek :] You're right about the firmware ... But how about squishyware? Is wetware firm? I'll shut up now, i'm not trolling, really :)

    --
    Robots are everywhere, and they eat old people's medicine for fuel.
  145. The SCUD MISSILE caused the deaths... by TheMonkeyDepartment · · Score: 1

    I enjoyed this article, but regarding your statement that "misfiring of a US Patriot missile ... caused 28 deaths because of accumulated floating point error", I would argue that the SCUD MISSILE LAUNCHED BY THE IRAQIS caused the deaths , NOT the misfiring of the Patriot missile. The referenced article says that the Patriot "failed to track and intercept an incoming Iraqi Scud missile." Uh... don't the Iraqis deserve 100% of the blame for the deaths here? They launched the damn missile! What software bug caused THAT little problem?

    It is true that the Patriot missile did not succeed, but don't ever forget that those 28 people would be alive if the SCUD was never launched to begin with.

  146. Accidental Funny by virg_mattes · · Score: 2

    > We, as programmers, should make sure that our software are comunicating properly.

    Am I the only one who sees humor in saying, "...software are communicating properly" in a comment about communicating properly? Anyone?

    OK, I'll shut up now.

    Virg

    1. Re:Accidental Funny by Tony-A · · Score: 2

      Am I the only one who sees humor in saying, "...software are communicating properly" in a comment about communicating properly? Anyone?

      Ok, I'll bite.
      "...software is communicating properly" means that (one piece of) the software is communicating (one thing) properly (at the moment). It is laughable that anyone would expect anything more.
      "...software are communicating properly" implies some sort of plurality in what is communicating properly, which is closer to the high end of the continuum between "sometimes does something right" and "never does anything wrong".

  147. Re: Do C++ Pointers lead to most bugs? by Anonymous Coward · · Score: 0

    I have read that one good thing about Java is that it does not rely on pointers for memory management. Is that true?

    Also, I recently have begun a C++ class and on the subject of pointers, the textbook says this:

    Never dereference the "NULL" pointer.

    Well, after reading that, I decided that -- being a total programming geek after all :) -- the VERY FIRST THING I wanted to try to do was to "dereference" this NULL pointer.

    Unfortunately, the textbook did not go into detail about how this could be accomplished -- no surprise there.

    So can someone tell me what the probably outcomes of dereferncing &NULL would be? Is it really as dangerous as the book's author suggests?

    (It occurred to me that it might have a similar effect to something that I read about a while, back -- "Tao of Windows Buffer Overflow" -- this article [cultdeadcow.com]. )

    So does anyone here know how to "dereference the NULL pointer"?

    I would appreciate some detailed sample code.

  148. Re:It's Worse: The Patriot Never Worked by ~roman · · Score: 1

    Then I asked about the stunt planes, the barn-stormers who fly upside-down. He said for those planes, the wings are symetrical top-and-bottom. You can fly upside-down with "standard" shape only with different angle relative to the horisont although they work less efficient.
    I am not expert in aerodymnamisc but in general the turbulences above wings increases the lifting forces but also drag forces so you increase the fuel consumption (you can see that during plane landing where for lower velocities the wings are reshaped). Improvements in the shape of wings of planes is mostly optimisation between these two forces. Otherwise we would have just "plane" (well, symmetric) wings and we would change its angle.

  149. Re:Monitoring lifesigns of astronaut causes s/w cr by The+Bungi · · Score: 1
    A lady told me after showing her the bug web site that during the 60's when they were developing s/w to monitor the astronaut that a person who prided himself in zero bugs in his s/w had develivered s/w that crashed. In this case the s/w did data reduction of data which and crashed since it didn't take into account the astronaut dying (in which case an astronaut actually did die) and thus the vital sign data was flat lining.

    What you say?

  150. Boom Boom... by totierne · · Score: 1

    The 'funny' thing about having a near miss by a scud - is that you have a good chance of being hit by the patriot that was diligently following it down.

  151. Re:It's Worse: The Patriot Never Worked by GuyMannDude · · Score: 2, Insightful

    I'm pretty sure the media has mentioned this, beyond those two media links you already posted, I mean. The issue has been debated since the first Patriot experiences during the Gulf War.

    I guess I'll have to take your word for it but I think all the mass media has done is "mention" it. Pretty much everyone I tell about the failure of patriots is either in shock or replies with "That's not true! I know they work! I saw them destroying scuds on CNN!"

    It certainly isn't easy to do, and there may be better ways to accomplish the same goal or things more worthy of our limited resources, but to claim that it's somehow physically impossible is both disingenuous and incorrect.

    I never said that it was physically impossible. Four minutes before your post I made a reply to another's comments. I realize that you probably didn't get to see my 2nd post before posting yours. So at the risk of being modded Redundant, here's my answer:

    "My comment about the Patriot failure being a bad sign for our upcoming missle defense shield was to point out that if we can't hit relatively-slow-flying scuds, how are we possibly going to hit speedy ICBMs? We haven't even solved the theatre ballistic missle problem yet. So we're years away from being able to intercept WMD-bearing ICBMs."

    GMD

  152. Also, be sure to debug your debugging.... by deathcow · · Score: 2

    A friend of mine implementing logic in a process control system, overseeing water control for an entire valley, repeatedly dumped over a million gallons of water doing a few test runs.

  153. Re:Millennium Bridge a Model Assumption error by netrangerrr · · Score: 1

    Actually the problem is known as an assumption error in modeling. It's a problem with the basic assumption used to represent the real system in modeling. Those assumptions should be tested during model validation but often are skipped. Software bugs are verification errors. It sounds like the model programmer built a perfect model based on the inputs he was given, but a basic assumption (that large numbers of pedestrians will use the bridge) was not included.

    --
    "As for the future, your task is not to foresee it, but to enable it." - Antoine de Saint-Exupery
  154. Re:It's Worse: The Patriot Never Worked by geekoid · · Score: 2

    "the Coriolis effect only works on planetary scales"
    actually if you take a round pan, put a plug in the center, fill it up with water, let it stand for about a 10 days, then pull the plug, you can see the Coriolis effect. Any still body of water that sits still long enough is subject to that force. However that force is pretty weak, so in vibration or motion will disturb it.

    --
    The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
  155. Forgotten: Ozone hole ignored as out-of-bounds by Anonymous Coward · · Score: 0

    They forgot to mention that the hole in the ozone layer over the antarctic was ignored for years because the first satelites to observe it were programmed to consider the data they were collecting outside the bounds of possible valid data.

    Some guy eventually thought "Nah, couldn't be ... could it?" and sent up a satelite to check - sure enough, big hole...

  156. Re:Millennium Bridge - Kansas City skywalk by Iamthefallen · · Score: 1

    The old railroaders in Sweden would do the same, after they'd made a tunnel through a mountain the architect/engineer that specified it had to stand in the middle as the support beams were removed, makes for good design/quality control.

    --
    Wax-Museum Fire Results In Hundreds Of New Danny DeVito Statues
  157. reminiscent of the original Mac bomb dialog by Preposterous+Coward · · Score: 2

    How did it go? The system freezes up and posts a dialog that says something like "Unexpected system error: -72." And there's only an "OK" button...

    --

    "Biped! Good cranial development. Evidently considerable human ancestry."
    1. Re:reminiscent of the original Mac bomb dialog by mrseigen · · Score: 1

      Not quite, some crashes had a "Restart" button and a "Continue" button (which was usually grayed out, but it was a red-letter day when it wasn't; that meant you got to continue along your day without exploding in a fit of rage).

  158. Re:It's Worse: The Patriot Never Worked by Wavicle · · Score: 2

    Okay, let's consider I completely missed that the SCUD is a ballistic missile. I thought it wasn't because I thought SCUD stood for Subsonic Cruise Unarmed Decoy. Which apparently there is such an acronym, but it doesn't seem to represent these missiles. I concede that point.

    So we're back to the SCUD being a ballistic missile. So if the missile is ballistic, following a ballistic trajectory, why was it wobbling in flight? The bulk of the missile, sans debris, should have been in a ballistic trajectory. The scud has controllable fins, so it does have some measure of cruise guidance, I would think if the missile were coming apart in flight, the control surfaces would be among the first to go, and then the missile would again be in a purely ballistic trajectory. Why was it wobbling? If it started tumbling end over end, I wouldn't expect it to survive more than 100 miles. Whatever destabilization occurred needed to start while the missile still had thrust, or the control surfaces were still intact.

    --
    Education is a better safeguard of liberty than a standing army.
    Edward Everett (1794 - 1865)
  159. Patriot failure Microsofts fault? by Anonymous Coward · · Score: 0

    According to http://www.ima.umn.edu/~arnold/disasters/patriot.h tml: "The range gate's prediction of where the Scud will next appear is a function of the Scud's known velocity and the time of the last radar detection."

    I should have known that Gates was involved in all of this!

  160. origin of word 'bug' by i+like+your+eyes · · Score: 1

    sometimes a bug actually is a bug. there is some debate as to whether or not the first time a "bug" was mentioned that it actually was a bug or not. this link clears up some of the confusion. (there was a bug, a moth, found inside a computer, but the word was in use before that time).

    --

    There's no emoticon for what I'm feeling!
  161. you're blaming the wrong agency by Mr.+Foogle · · Score: 1
    Trevor Lovett writes "I ran across a collection of famous software bugs that have caused large scale disasters including the explosion of the Ariane 5 rocket due to integer overflow and the misfiring of a US Patriot missile that caused 28 deaths because of accumulated floating point error

    You're blaming the wrong people for the Patriot fiasco.

    The Patriot didn't kill 28. Iraq launching a ballistic missile that killed 28 - That's where the blame lies.

    --
    Display some adaptability.
  162. Re:It's Worse: The Patriot Never Worked by danro · · Score: 2

    Well, lets hope they don't shoot during reboot then...

    --

    "First lesson," Jon said. "Stick them with the pointy end."
  163. No need to make new ones... by danro · · Score: 2

    I think there are at least one country that is holding on to old (supposedly outdated) Surface To Sea missiles for this exact reason.

    Test (where they were presumably used as target practice) showed that they were very difficult to hit due to their erratic flight.
    This "feature" (and now we are talking eature in the MS sense, folks) was considered to compensate for their low accuracy.

    Calculations indicated that they would have a higher kill ratio than a better missile would.
    Wierd!

    --

    "First lesson," Jon said. "Stick them with the pointy end."
  164. Yorktown bug has never been truthfully reported by blablablastuff · · Score: 1

    Or if it has I've never seen it. The article linked on that web page is such utter crap the health department should cite them for releasing sewage.

    I was on the Yorktown when this occurred. I had been there since the initial installations and upgrades of all these systems began. And the primary LAN administrator was a friend of mine, he had been reassigned out of our division to support the new networks.

    The bug in the software allowing it to crash when it hit that infamous divide by zero error that everyone knows everything about was triggered by the local jackhole putting in some bad information to the system. As I recall, no one was particularly surprised when they found out who it was either.

    The computer shutdown forced all the ships engines to be taken offline. ALL of them, not just the 4 gas turbines used for propulsion but the 3 turbines used for electricity as well. This one point is actually a little worse than most articles I have seen make it out to be, during the (brief) period of time while the ship was shutdown, she was shut down cold. Emergency lights and UPS systems and not much else.

    However, the ships engineers were able to restart the engines within a fairly short amount of time. I'd say they had the lights back on in well under an hour, getting the main engines online took a bit longer, perhaps as long as 2 hours.

    The ship then sailed under her own power to Norfolk Naval station.

    The network itself didnt exactly take "days" to restore from this horrible catastrophe. A highly technical and in-depth troubleshooting procedure commonly known as "a re-boot" was performed as soon as the electricity was brought back. A highly overpaid Microsoft technician could probably shed more grim, terrifying details as to the painful nature of this arduous troubleshooting technique.

    The ship remained in port about 2 days while tech's went back through the logs to identify who or what screwed up to ensure it was safe to continue using the automated systems. It was an investigation into what happened, not anything remotely like taking "two days of pierside maintenance to fix the problem"

    Reading the article again, I think I can safely say that that DiGiorgio fucktard apaprently had a very tenuous grasp on reality, and absolutely no knowledge about the incident whatsoever. Every single statement concerning the Yorktown he made in that article was false, to the degree that I'm not even sure he had ever HEARD of the Yorktown when he was being interviewed for the article.

    "The Yorktown has been towed into port after other systems failures, he said."
    With the exception of harbor tug boats guiding a ship to the pier, used by every ship in every fleet of the world, the only time the Yorktown had a tow cable attached to her was when she was doing the pulling. The specific incident I remember was in the case of a cargo ship that happened to be in the very unfortunate circumstances of 1. dead in the water 2. wanted for cocaine shipping and 3. found by the Navy.
    I suppose there is a slim chance that the Yorktown MIGHT have been towed back in the early 80's when a russian destroyer rammed her, but I doubt even then.

    "If you understand computers, you know that a computer normally is immune to the character of the data it processes," seems to me to be a fairly good indication that he has never observed a computer being used by people.

    "Using Windows NT, which is known to have some failure modes, on a warship is similar to hoping that luck will be in our favor," DiGiorgio said.
    I just think that's kinda funny is all.
    Especially considering that most of the other computer systems were designed in the 70's. They were all, of course, rock solid. There'll never be a problem with anything like that. Besides we only use those for safe, little tasks like SHOOTING MISSILES.

    "Installing a control system on a warship and resolving problems as the project progresses is a costly and naive process." This person has apparently never seen how the military approves new technology. Ignoring his idea that "installing a system and testing it so you can get rid of the bugs is costly and naive" the smartship program was designed to force new technology into the fleet as quickly as possible, with the Yorktown being used as a TEST ship, in order to identify what works well and what doesnt. Without programs such as this, getting ANYTHING new actually implemented into the military can take well over 5 years.

    I really like the part at the end where he touts himself as the visionary whistle blowing martyr.

    One last comment...a previous poster mentioned that "The Yorktown crash was the result of mixing mission-critical and non-mission-critical programs on the same box. Big no-no"
    I'm not sure what his point is here, the administrative network did use some of the same servers but had nothing to do with, well, anything.

  165. Re:Millennium Bridge - Kansas City skywalk by danro · · Score: 2

    Trust me, when all involved know of this beforehand, the bridge won't collapse!
    When you have to trust your work with your life, you do a good job.

    No matter how wicked this sounds, it probably worked... I doubt many people was killed.
    (Of cours Stalin more than compensated for the lack of bloodshed in other ways...)

    --

    "First lesson," Jon said. "Stick them with the pointy end."
  166. Handling data that is not what you expected by tg_schlacht · · Score: 1

    When I was working as a programmer I fixed a lot of problems caused by the previous programmers.

    Many of them were caused by their making assumptions about the way the data would be presented to the program i.e. database records will always be sequentially numbered 1,2,3,4,5,6,...

    These assumptions came about because the previous programmers would always generate the test records in the same way every time and never took into account that the user could do things like delete records 1,3,4 and 5.

    Dumb things were done like hardcoding loops iterating from 1 to N over the database records. This would work well as long as the records were in fact numbered from 1 to N. Feed in records that weren't numbered from 1 to N and things quit working immediately. I was quite surprised that no one before me had ever caught this.

    I ran into this kind of thing so often it wasn't even funny.

    Another problem that I had was that the programmer just prior to me had a penchant for using IIf statements a mile long. Nesting them was also considered to be great fun. Putting all the code he could in one statement made for much better code in this guy's mind.

    Seeing as a lot of this code didn't work right and had zero comments, I wound up breaking almost everyone one of these sick, twisted puppies up into separate lines/statements so I could try to figure out what the heck he was thinking when he coded them.

    I used to use IIf statements myself but now I still have an aversion to using them after seeing how they can be misused.

    I've tended to write much cleaner, readable, commented code after having experienced working with other people's cluttered handiwork.

  167. Helicopter Mechanics by OffTheRack · · Score: 1

    ...in the US army are usually expected to take a test flight with the pilot after they work on the machine. At least that's what I was told back in the 80's.

    That is pretty good QA.

  168. Re:Millennium Bridge - Kansas City skywalk by tpengster · · Score: 1

    The skywalk collapse wasnt so much due to the dancing as it was to the change in design made by the engineers on the site. It was too hard to use cables long enough to reach the top and bottom platforms, so they just had cables to the top platform and cables from the top to the bottom. As a result the cables were only able to support half the tension that the original designers intended.

  169. Prevention proven better than cure - and Feasible by aebrain · · Score: 1

    All Software Engineers should have a look at Correctness by Construction: Better can also be Cheaper from Crosstalk the Journal of Defence Software Engineering. It contrasts the usual C approach with one using a really tight but powerful subset (SPARK) of an already pretty tight language, Ada

    * SPARK code was found to have only 10 percent of the residual errors of full Ada; Ada was found to have only 10 percent of the residual errors of code written in C. This is an interesting counter to those who maintain that choice of programming language does not matter, and that critical code can be written correctly in any language : The claim may be true in principle but clearly is not commonly achieved in practice.

    This isn't just an anecdote: there are documented facts. The results (for the problem domain of aircraft avionics and large systems) may not be applicable to the normal b2b and gamezware - but then again, they might. Have a look at the stuff in bold later in this post.

    It's not a magic bullet : from the same article:

    In December 1999 CrossTalk, David Cook provided a well-reasoned historical analysis of programming language development and considered the role languages play in the software development process. The article was valuable because it showed that programming language developments are not sufficient to ensure success; however, it would be dangerous to conclude from this that they are not necessary for success. Cook rightly identifies other issues such as requirements capture, specifications, and verification and validation (V&V) that need to be addressed.

    But the real kicker, one that should cause everyone to sit up and take notice, is this:

    • Code quality improved by a factor of 10 over industry norms for DO-178B Level A software.
    • Productivity improved by a factor of four over previous comparable programs.
    • Development costs were half that typical for non safety-critical code
    • With re-use and process maturity, there was a further productivity improvement of four on the C27J airlifter program.

    One more thing: the SPARK and similar RAVENSCAR ( pdf, HTML version here) subsets of Ada-95 are just that : (proper)subsets that just omit certain language constructs. Write to the profile, and the code is compileable by any Ada-95 compiler, like the downloadable Free GNU version GNAT 3.14p (though commercial users might want the latest-and-greatest non-free version 3.15a. And the ORK (Open Ravenscar Kernel) is, as the name implies, an Open Source Kernel for reliable real-time embedded systems.

    Better, Cheaper, Faster, Open-Source with Free-as-in-Beer downloadable compilers. IMHO worth at least investigating, even if you decide Microsoft's latest language-du-jour is more appropriate for your situation. YMMV, and COBOL, C++, Assembler, C#, Java or even VB might be better in your case. But worth a look.

    --
    Zoe Brain - Rocket Scientist
  170. gcc not the only one by Goonie · · Score: 2

    GnuCash does.

    --

    Any sufficiently advanced technology is indistinguishable from a rigged demo
    --Andy Finkel (J. Klass?)
  171. Pentium Bug by SETIGuy · · Score: 1

    The Pentium FP bug was a hardware bug.

    This depends upon where you think the bug was. The real bug was a problem with a loop in the code that described the division algorithm. When this code was compiled it generated an incorrect design that was used to create the hardware. In other words, it was a hardware bug caused by a software bug.

    That makes it a software bug in my book.

  172. Scratch Monkey by Ratbert42 · · Score: 2

    Don't forget to mount a scratch monkey.

  173. Isn't death what a missile is supposed to cause? by ThatField · · Score: 1

    I'm sorry, I'm laughing hysterically at the phrase "...a US Patriot missile that caused 28 deaths because of accumulated floating point error". Sounds to me like the missile did exactly what it's designed to do - kill. The missile has no knowledge of who's side it's on, it just kills, maims, and destroys without conscience.

    /dev

  174. Square One redux? by OgdEnigmaX · · Score: 1

    Does anyone else find an eerie similarity between the subject matter at hand and the old sequences on Square One in which shots of the commission of simple arithmetical errors were juxtaposed with engineering disaster footage and a voiceover saying something like "If this mistake hadn't been made...THIS wouldn't have happened"?

  175. Modern Structured Analysis by thebabelfish · · Score: 1

    Below is a paragraph on page 113 in the book "Modern Structured Analysis" by Edward Yourdon.

    Software errors range form the sublime to the ridiculous. A trivial error might consist of output (results) that are correct, but not printed or formatted quite as neatly and tidily as the user desires. A moderately serious software error might include a case where the system refuses to acknowledge certain kinds of inputs, but the end user can find some way to circumvent the probelm. Serious errors are those that cause the entire program to stop working, with an associated major loss of money or human life. Examples of some serious software-related errors that have been documented over the years include the following assortment:
    • In 1979 the SAC/NORAD (Strategic Air Command/North American Air Defense) system recorded fifty false alerts, including a simulated attack whose output accidentally triggered a live "scramble".
    • An error in the F16 flight simulation program caused the plane to flip upside down whenever it crossed the equator.
    • An F18 missile thrust while it was still clamped to the plane, causing the plane to lose 20,000 feet in altitude.
    • The train doors on the computer-controlled San Francisco BART system somethimes open on long legs between stations.
    • A NORAD alert from the Ballistic Missile Early Warning System (BMEWS) detected the moon as an incoming missile.
    • The Vancouver Stock Index lost 574 points over a 22-month period because of roundoff errors (e.g., rounding off 3.14159 to 3.1416).
    • On November 28, 1079, an Air New Zealand flight crashed into a mountain; later investigation showed that an error in the computer course data had been observed and fixed, but the pilot had never been informed.
    --
    "I don't trust goats," --To Catch a Spy
  176. Run time compile error?! by Anonymous Coward · · Score: 0

    how can you get a "run time error [when] trying to compile the code" eh?

    (you can't, run time is when the program is running, AFTER you've compiled it.)

    Runtime errors that will boot you all the way out of a program are all over the place ESPECIALLY in vb where you can leave errors unhandled all over the place.

    Dunno if VB.NET forces you to handle all exceptions or not but it'd be cool if it did.

  177. An excellent link . . . by himi · · Score: 2

    See here

    Not in depth theory, but an excellent explanation . . .

    himi

    --

    My very own DeCSS mirror.
    1. Re:An excellent link . . . by charon_on_acheron · · Score: 1

      Dude, that site's awesome. I just spent the last 45 minutes reading it. Especially the graphics of the wing, with the real representations of the speed of the airflow above and below the wing.

      This paragraph sums it up nicely:

      "This may come as a shock to many readers, because all sorts of standard references claim that the air is somehow required to pass above and below the wing in the same amount of time. I have seen this erroneous statement in elementary-school textbooks, advanced physics textbooks, encyclopedias, and well-regarded pilot training handbooks. Bear with me for a moment, and I'll convince you that figure 3.3 tells the true story."

      Thanks for a reference site about this. I'm not a pilot, or model plane enthusiast or any of that sort. Just a geek who craves good info. Now I can bug the hell out of my wife about airflow around airplane wings. ;^)

  178. Re:Debugging by Tony-A · · Score: 2

    the program should only do what it was designed to do, not more or less.

    throw data at a program that it shouldn't get
    Exactly. Otherwise it's like a boat that stays afloat only in a harbor on a calm day.
    And a cracker's exploit of a buffer overflow is maybe the kindest way of experiencing the bug. If you don't think so, explore the consequences of a shipping clerk triggering the same bug on a production system. Horrible thought, but the "black hats" may be the only friends you've got in the business.

  179. Pentium II ?!? by Anonymous Coward · · Score: 0

    Near the bottom of the article it talks about the Pentium rounding errors again. But it lists the bug as belonging to the Pentium Pro and the Pentium II.
    This was a problem with early pentiums, not pIIs!
    I don't know if the pros had the problem or not. I wonder if anything else in the list is erronius.

  180. Re:Debugging by Tony-A · · Score: 2

    And for the life of me when will programmers realize
    that just because the software works on their
    box it may not work on another machine.


    Just installing Visual Studio,Source Safe etc, makes
    testing useless on your main machine.
    Program on your main machine.
    Test on a clean machine.


    Something is horribly broken here.

    If you must develop and test for such an environment, you must test on both a clean machine and a machine with all the "goodies" loaded. It doesn't really work to tell a customer that he needs to get rid of all his other software, reinstall Windows, and load your software.
    And no its not easy, you need to test against all combinations of wierd stuff to ensure that it will actually run.

  181. There will always be a bigger bullet. by leuk_he · · Score: 2

    You can protect your program against simple input errors.

    I know this as the monkey test:
    Put someone behind the keyboard (just pull a sales from the other end of the building). Let hime type/click away. He(/she) shouldn't be able to do read damage.

  182. Re: Do C++ Pointers lead to most bugs? by Anonymous Coward · · Score: 0

    So does anyone here know how to "dereference the NULL pointer"?

    Sure: (In plain C)

    int *blah = NULL;

    free (blah);

    Say hello to General Protection Fault (in Winblows, @ least)

  183. Re:It's Worse: The Patriot Never Worked by Kynde · · Score: 1

    still offtopic, but...

    You are right in a sense that you can "easily" set your own experiment which proves eatrh rotation (although I would go rather which biger pendulim than man-sized and repeat the "church pendulum " experiment. He cerpainly ment swirl convention in the atmosprhere as this is wrongly as a anologous to the "wrong" sink swirl.


    Naturally he went for the atmospheric effect of the Coriolis Effect, but a few metre pendulum made heavy enough will show C effect, no doubt.

    Here you are wrong: the influence of the wind is certainly much higher than the effect

    Certainly it it, BUT the effect is taken into account in long range cannon aiming, just as the wind and other atmospheric efects (humidity, rain etc). Ranges with 10 miles and more the C effect is well present even for linear motion. You do the math. We are talking about metres here. You'd be supprised how accurate shoreline cannons are these days. (I'm not saying their accyracy is less than a metre, but because the coriolis effect is the easiest to take out it's usually done) Over here in the 60dgr nother latitude, the C effect is just about v * w (a_coriolis = 2 v x w, and with sin 60 being 0.5). Naturally angular velocity of earth is freakishly slow, but for example 10 km shot with 300m/s velocity it gives you an acceleration of 2cm/s^2, and for a 30 second flight it results in almost 10 metre deviation, which is right there in the same magnitude as the accuracy.

    --
    1 Earth is warming, 2 It's us, 3 it's royally bad, 4 we need to take action NOW
  184. Re:Millennium Bridge - Kansas City skywalk by Anonymous Coward · · Score: 0

    > In the old USSR (Stalin times), there was a standard bridge acceptance test:
    > 1) put project managers, lead architects and engineers under the bridge;
    > 2) put heavy loaded trucks on the bridge.

    And where were the people who made the decisions?

  185. Re:Millennium Bridge - Kansas City skywalk by Anonymous Coward · · Score: 0

    For the Millennium bridge is was pretty complicated though, they had a whole Science Shack special on the BBC. The natural frequency of the bridge sway was close to that of human walking.

    As the bridge swayed, people changed how they walked to compensate, so they were no longer walking as expected, or moddled, and instead of the various movements countering each other they were pushed in sync which made a feedback loop.

    Its more complex than that, but they found out a bunch of new information about engineering bridges becuase of it. You cannot really blame them for not taking into account stuff that wasn't known.

  186. Re:Millennium Bridge - Kansas City skywalk by mpe · · Score: 2

    Human effects on bridges is hardly a surprise. Recall in 1981 when the Kansas City Hyatt's skywalk collapsed, killing 114, because the pedestrians were dancing (and the design was altered to ease construction).

    Actually this wasn't a "human effect" the walkways would have collapsed anyway, as built, simply due to the force of gravity. Since the bolts holding the upper walkway were taking the load of both. (Also the bolts were right through where two pieces of metal were welded together. Thw whole thing simply wasn't built as designed.)
    The Millennium Bridge sway was due to people moving on it, it was, AFAIK, built according to the design. Just that the design was bad.

  187. Re:Millennium Bridge - Kansas City skywalk by mpe · · Score: 2

    In the old USSR (Stalin times), there was a standard bridge acceptance test: 1) put project managers, lead architects and engineers under the bridge;

    More recently a Moscow court sentanced an architect to live in a building he designed. Most likely this is a Russian, rather than Soviet, principle.

  188. Re:Millennium Bridge - Kansas City skywalk by mpe · · Score: 2

    The mistake that caused the Hyatt disaster was not one of failing to consider human motion in the design, but failing to consider the effects of seemingly minor changes in design.

    It certainly wasn't the first case where an apparently minor change made in construction caused a structure to collapse. Nor is it likely to be the last.

  189. Purposeful Accident? by virg_mattes · · Score: 2
    > "...software are communicating properly" implies some sort of plurality in what is communicating properly, which is closer to the high end of the continuum between "sometimes does something right" and "never does anything wrong".

    I have to argue the usage here, because while your argument holds logical merit, his usage was incorrect in this context. His entire sentence read
    We, as programmers, should make sure that our software are comunicating properly.
    This usage is not right, since in this context, if he wants to indicate plurality he should use the plural form "softwares" (which is awkward itself, but it the only grammatically correct choice for this construct). He could reword the sentence "...software communicates properly" but as he used it, it's not proper communication, hence my detection of irony.

    Virg
    1. Re:Purposeful Accident? by Tony-A · · Score: 2

      I have to agree with you about usage.
      The irony is that correct usage leads to incorrect usage.

  190. Re:It's Worse: The Patriot Never Worked by mpe · · Score: 2

    I am not expert in aerodymnamisc but in general the turbulences above wings increases the lifting forces but also drag forces so you increase the fuel consumption (you can see that during plane landing where for lower velocities the wings are reshaped)/

    The purposes of flaps (and leading edge slats) is to lower the stalling speed and increase lift at low speed. Otherwise you'd need much longer runways. (Though probably not quite as long as that at the KSC).

  191. True confession... by Anonymous Coward · · Score: 0

    Maybe I shouldn't post this, but...

    Back in the DOS days, I thought it was good form to put in checks for things that shouldn't ever happen, but, if they did, there was no way to recover. The trouble was that sometimes they did happen, and then customers would complain about strange 'Internal Error' messages that made no sense.

    So, I stopped putting in those checks, and just let the program crash, generally taking DOS with it. This was more familiar to the customers, and they'd just blame Microsoft.

  192. Re:It's Worse: The Patriot Never Worked by amembrane · · Score: 1
    I'll ammend that to no one has ever died as a result of the coriolis effect on the water in a toilet, tub or sink.

    Here's my favorite quote from the article: Even in a tub having a perfectly symmetric drain, the circulation direction will be primarily influenced by any residual currents in the bathtub left over from the time when it was filled. It can take more than a day for such residual currents to subside completely.

    You should check out the residual air currents in my toilet.

    --
    They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.
  193. MIT flywheels by Zog · · Score: 0

    My physics professor/boss was talking about how some of the fusion/fission experiments they run here have to use gigantic flywheels to gradually tap energy off of the power grid for rapid release, and somehow got on the topic of how MIT designed theirs to be safe -

    They pointed them so that if the flywheels somehow broke, they'd go straight through the engineering/architecture offices. And the people that designed them, too. Now *that's* pressure.

  194. Re:Millennium Bridge - Kansas City skywalk by Paul+Jakma · · Score: 2

    hmmm.. it wasnt that the cable could support only half the tension, it was that the joints (those for the upper cable to upper walkway joint) had to take double the load.

    in original design joints for each level supported only the load of that level (only the roof joints supported entire weight). by splitting the rod and having 2 joints on the upper level, the upper cable to upper level joint had to support the weight of both the walkways - which it couldnt do. :(

    --
    I use Friend/Foe + mod-point modifiers as a karma/reputation system.
  195. Clarification of the Therac bug by mfnickster · · Score: 1

    There is some good information on the Web about the Therac cases, one example of which is here:

    http://courses.cs.vt.edu/~cs3604/lib/Therac_25/The rac_1.html

    It turns out that the machine didn't simply "incorrectly calculate the amount of radiation" -- it was a design failure of a shielding subsystem that relied on microswitches and sensors for feedback. This sidebar explains it pretty well.

    The last paragraph reads:

    "Traditionally, electromechanical interlocks have been used on these types of equipment to ensure safety -- in this case, to ensure that the turntable and attached equipment are in the correct position when treatment is started. In the Therac-25, software checks were substituted for many traditional hardware interlocks."

    Sounds like a good case for hardware safeguards. "Sure, they cost more, but aren't you worth it?"

    - MFN

    --
    "Slow down, Cowboy! It has been 3 years, 7 months and 26 days since you last successfully posted a comment."
  196. Dependant Upon Meaning by virg_mattes · · Score: 2

    Well, this does depend on how you define "disperse". It's unlikely that the fuel would be thrown all that far when the reactor remains hit the ground, but since a good portion of the shielding would have been peeled off by the fall, the resulting lump of slag would be (both in a radioactive and thermal sense) quite hot, so nobody could stay within a quarter mile of it safely. In a remote location in the Sahara desert, it wouldn't pose much of a threat, but if it fell in a New Jersey suburb, it could displace quite a few people.

    Virg

    1. Re:Dependant Upon Meaning by D43m0n_C0d3r · · Score: 0

      "quarter mile" hate to do this, but u wanna show your calculations?

      --
      ^_^x
    2. Re:Dependant Upon Meaning by virg_mattes · · Score: 2

      A quarter mile is minimum accepted safe distance for radioactive contamination, according to Civil Defense code. This may be a rule from back in the '50s, but I'm pretty sure it's still law. I'll try to find the information, but the last time I saw this was in a printed book we found in an abandoned fallout shelter, so I don't know if it's on the 'Net.

      Virg