• SomeCoder (unregistered) in reply to Anon
    Anon:
    SomeCoder:
    Dazed:
    Ah well, at least this default value didn't kill anyone. Small default values can be pretty bad too. For those people who missed it (I don't think it's been on this site) allow me to mention the smart-bomb controller in Afghanistan.

    An observer team had lined up a Taliban position to receive a smart bomb. Unfortunately, just as the bomber commenced its approach, the battery in their smart-bomb controller ran out. Fortunately they had a spare battery which they could change in a few seconds. Unfortunately the enemy position was reported as an offset from the controller, and on power-up the offset was set to a default value of ... zero.

    Apparently one team member survived to report what had happened.

     OUCH.  I think if i was the programmer for that Smart Bomb Controller, I'd have a nice date with some whiskey and the end of a rope :(

     God, I hope that if I ever work on anything that important, I don't make a mistake like that :(  Luckily none of my code is life-critical right now.

    The controller performed correctly, what other default should it have been set to? Offset -10000 might be a schoolhouse. It was the smart bomb itself that should have been programmed not to detonate if it receives offset 0 or if it loses contact with the controller for more than a certain period of time. Either that or keep persuing the last known offset when the offset is 0.

    Yeah, I thought about that after I posted and I agree with you.  However, my previous post still stands.  If my software caused deaths like that (even if it were user error), I'd still be pretty damn upset.

  • (cs)

    try {
        document = scanner.read();
        this.income = document.getIncome();
    } catch (Exception e) {
        this.income = 99999999.99; // brillant
    }

  • Anon Coward (unregistered) in reply to BradC
    BradC:
    Anonymous:
    Ah well, at least this default value didn't kill anyone. Small default values can be pretty bad too. For those people who missed it (I don't think it's been on this site) allow me to mention the smart-bomb controller in Afghanistan.

    An observer team had lined up a Taliban position to receive a smart bomb. Unfortunately, just as the bomber commenced its approach, the battery in their smart-bomb controller ran out. Fortunately they had a spare battery which they could change in a few seconds. Unfortunately the enemy position was reported as an offset from the controller, and on power-up the offset was set to a default value of ... zero.

    Apparently one team member survived to report what had happened.

    Sounds like an urban legend. Got a link to a news story?

    I'm with you.  As I remember it, the bomb fell where the coordinates told it to fall - it was not an equipment failure.  The problem was that either the wrong coordinates were sent to the bomber crew or that the bomber crew entered the wrong coordinates.  I think it was the latter - one or more of the less significant digits were transposed so the bomb landed too close to the friendly forces.

    But I do remember another story.  In the last days of the first Gulf War, a Scud landed on some military barracks, killing something like 30 soldiers.  The problem was traced to a failure of the missile interception system.  I believe the manufacturer indicated that the computer had to be rebooted every 10 days (or so) - this rule was followed during testing and everything worked fine.  When it was deployed in Saudi Arabia, the crew left it running.  The computer subsequently didn't detect the Scud and didn't launch the interceptor missiles.

  • Russ (unregistered) in reply to Volmarias
    Volmarias:
    Anonymous:
    Anonymous:
    Dazed:
    Ah well, at least this default value didn't kill anyone. Small default values can be pretty bad too. For those people who missed it (I don't think it's been on this site) allow me to mention the smart-bomb controller in Afghanistan.

    An observer team had lined up a Taliban position to receive a smart bomb. Unfortunately, just as the bomber commenced its approach, the battery in their smart-bomb controller ran out. Fortunately they had a spare battery which they could change in a few seconds. Unfortunately the enemy position was reported as an offset from the controller, and on power-up the offset was set to a default value of ... zero.

    Apparently one team member survived to report what had happened.

     OUCH.  I think if i was the programmer for that Smart Bomb Controller, I'd have a nice date with some whiskey and the end of a rope :(

     God, I hope that if I ever work on anything that important, I don't make a mistake like that :(  Luckily none of my code is life-critical right now.

    The controller performed correctly, what other default should it have been set to? Offset -10000 might be a schoolhouse. It was the smart bomb itself that should have been programmed not to detonate if it receives offset 0 or if it loses contact with the controller for more than a certain period of time. Either that or keep persuing the last known offset when the offset is 0.



    What if the observation team was being overrun, and intentionally set the offset to 0 (point it at the ground)? Or, maybe they, for whatever reason, left it as a poor man's Laser Guided Multi-million dollar homing beacon (Yeah, I know, they should have just taken it with them)? It's pretty easy to armchair general and say "Yeah, we should have X!" when something bad happens, but remember that we all make assumptions, figuring that there might be a reasonable reason for something to happen. The engineers probably figured that if the battery was swapped out in that kind of situation, the team would remember to change the offset (they would, after all!) The world is a marvelous place when you can correctly make reasonable assumptions about everything that will happen. Unfortunately, that's not always the case.

    In that case, a specific self-destruct command should be triggered. You don't need a crystal ball to be able to forsee that targetting the default offset is a bad idea.

  • Anon Coward (unregistered) in reply to Anon
    Anonymous:
    Volmarias:
    Anonymous:
    Anonymous:
    Dazed:
    Ah well, at least this default value didn't kill anyone. Small default values can be pretty bad too. For those people who missed it (I don't think it's been on this site) allow me to mention the smart-bomb controller in Afghanistan.

    An observer team had lined up a Taliban position to receive a smart bomb. Unfortunately, just as the bomber commenced its approach, the battery in their smart-bomb controller ran out. Fortunately they had a spare battery which they could change in a few seconds. Unfortunately the enemy position was reported as an offset from the controller, and on power-up the offset was set to a default value of ... zero.

    Apparently one team member survived to report what had happened.

     OUCH.  I think if i was the programmer for that Smart Bomb Controller, I'd have a nice date with some whiskey and the end of a rope :(

     God, I hope that if I ever work on anything that important, I don't make a mistake like that :(  Luckily none of my code is life-critical right now.

    The controller performed correctly, what other default should it have been set to? Offset -10000 might be a schoolhouse. It was the smart bomb itself that should have been programmed not to detonate if it receives offset 0 or if it loses contact with the controller for more than a certain period of time. Either that or keep persuing the last known offset when the offset is 0.



    What if the observation team was being overrun, and intentionally set the offset to 0 (point it at the ground)? Or, maybe they, for whatever reason, left it as a poor man's Laser Guided Multi-million dollar homing beacon (Yeah, I know, they should have just taken it with them)? It's pretty easy to armchair general and say "Yeah, we should have X!" when something bad happens, but remember that we all make assumptions, figuring that there might be a reasonable reason for something to happen. The engineers probably figured that if the battery was swapped out in that kind of situation, the team would remember to change the offset (they would, after all!) The world is a marvelous place when you can correctly make reasonable assumptions about everything that will happen. Unfortunately, that's not always the case.

     

    Then they would set it to offset 0.0000001.

     If the equipment remembers the coordinates during a battery change, then it has to remember the offset, too.  If it cannot remember the offset, then it has to set the coordinates to null and make the user re-enter them.

  • JoC (unregistered)

    "but the filters were manually bypassed"

     Who coded the bypass button? 

  • Anonymous2 (unregistered) in reply to Anon Coward

    This seems like an urban legend too.  It's my understanding it was found that, after subsequent analysis, none of the Scuds were ever truely intercepted.  The version of the Patriot that was deployed during that Gulf War was intended to shoot down aircraft and not missles, and the software could not handle the speed of an incomming Scud. A Scud is a very inacurate missle and most, other than the ones that broke up on reentry and attributed to a shootdown, ended up landing in empty desert.  The one that hit the barracks was a lucky shot.

  • Olddog (unregistered) in reply to Database Guy

    WOW.  I'm glad you posted that link.  The page shows this specific case error:

    mysql> CREATE TABLE bounds_test (
             id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
             price NUMERIC(4,2),
             code VARCHAR(8),
             numbers_only INT
           );
    Query OK, 0 rows affected (0.06 sec)
    

    mysql> INSERT INTO bounds_test VALUES (

         99999999999999,
         21474.83,
         'ABCDEFGHIJK',
         'A quick brown dolphin...'
       );
    

    Query OK, 1 row affected (0.03 sec)

    mysql> SELECT * FROM bounds_test; +------------+--------+----------+--------------+ | id | price | code | numbers_only | +------------+--------+----------+--------------+ | 2147483647 | 999.99 | ABCDEFGH | 0 | +------------+--------+----------+--------------+ 1 row in set (0.01 sec)

    What was also interesting were some of the other errors that page brings to light.

    Although a couple of observations:

    • the price field was designed without mind to future inflation
    • It is some freaky coincidence that value 21474.83 ended up as a fragment of the id field and not the code field.
  • torajirou (unregistered)

    Another Belgian here (who happens to work for the company that developed the aforementioned piece of software).

    What happened is a pure user WTF, not a developer WTF.

    When a character's not recognised on the fiscal declarations, it is normally translated as a "*" (meaning : hey ! some manual job's required here !). Thing is : someone in the Administration thought it was a good idea to change the filter and replace "*"s by "9"s... Guess what happened ?

     

  • anonymous (unregistered) in reply to JoC

    <quote>

    "but the filters were manually bypassed"

     Who coded the bypass button?

     </quote>

     A requirement's a requirement. You're not supposed to argue client's BS...
     

  • Matthieu (unregistered) in reply to fry
    Anonymous:
    Anonymous:
    WIldpeaks:

    cconroy:
    Brillant!  (That's French, BTW.)

     Actually, nope.

     

    Actuellement, oui c'est français et cela est synonyme de "Intelligent!" ou "Bien!".  Brillant est la version française de "Brilliant!".

    Actually, it is French and it means "Brilliant!".



    Tout à fait, but "actually" means "en fait" and not "actuellement" in French. It's a "faux-amis", a common mistake. :)

     

    Indeed "actuellement"'s best synonynm would be "maintenant" (meaning now), but in Quebec it is common use to say "actuellement" as Charles stated before : "Actuellement je crois que ceci tourne en rond".  Whether this is a mistake or language evolution, I don't know but nobody here would notice.  French is a little like C++... syntax and semantics vary from one compiler to another...

  • Anonymous (unregistered) in reply to animous
    Anonymous:
    tchize:
    The european space agency (ESA) lost his first ariane 5 space rocket like that. They had developped a component on the basis of some ariane 4 specs, specially on the metric part that did change. Just after take off, the system got crazy result and a securty system transfered the operation to a backup calculator, which had the same flaw and got crazy too. After a few seconds, the ultimate security system triggered an auto exploded the rocket.  Guess what now... The auto destruction system, the only thing that was a success on this mission was ... belgian made :D
    Not quite; the unit which was reused from Ariane 4 in Ariane 5 was unmodified. The problem was that the systems engineers never considered the possibility that the flight profile of Ariane 5 might be different from that of Ariane 4. To increase the WTF factor, the routine which ultimately failed (by overflowing a 16-bit integer register with a 64-bit float in a code block which had no expection handling for performance reasons; in case of Ariane 4 it had been shown that the register could never overflow) was not needed in Ariane 5 in the first place. It was a relic from Ariane 4, where it might have been used for faster resumption of countdown in case of a delay; if I remember correctly this functionality was never used.
    I remember reading about this... the problematic section of code was originally only to be used prior to launch, and the value that eventually overflowed measured the horizontal velocity.  I can imagine the original developer didn't bother to do any range checking, as how big can that value get when the rocket is on the ground?  Later on, it was determined that aborted countdowns could be turned around faster if they kept that unit of code running for a minute or so after launch.  As it happened, the Ariane 4 never overflowed the value before the unit of code was shut down, but when the same code was used unchanged for the Ariane 5, the bigger and faster rocket hit the overflow point before the shutdown time.  An exception was thrown, and a bit of code expecting a numeric return value got exception message text instead, and everything went haywire from there.  I think no fault was assigned in the end, as it was a series of reasonable decisions that ended up tripping over each oher.
  • (cs) in reply to Olddog
    Anonymous:
    • It is some freaky coincidence that value 21474.83 ended up as a fragment of the id field and not the code field.

     

    2147483647 == 2^31 - 1. It's the maximum possible value for a signed 32-bit integer. It has nothing to do with the other fields.

  • x (unregistered)

    My previous project manager worked on the Swedish tax return system. The system runs on java, and web parts are based on Struts. Not the most agile system of course, but it has kept up pretty well under load, and the site has won numerous prices.

  • (cs)

    LOL, We had a good laugh about this one here in Belgium.

    Note that it's only the government that does stuff like this, private enterprises do create decent software you know :-).

    Personally I've sent an email once to a government bureau...  Couple of days later I found a typed letter in my mailbox (IOW sent by the postoffice and delivered at your door, not my email inbox :-)). 

  • anon (unregistered) in reply to Matthieu

    Indeed "actuellement"'s best synonynm would be "maintenant" (meaning now), but in Quebec it is common use to say "actuellement" as Charles stated before : "Actuellement je crois que ceci tourne en rond".  Whether this is a mistake or language evolution, I don't know but nobody here would notice.  French is a little like C++... syntax and semantics vary from one compiler to another...


    Some people certainly DO notice. It's like people saying "définitivement" when they mean something like "sans aucun doute" ("définitivement" in French means indefinitely as in forever, not definitely as in without a doubt). It annoys me like hell when even journalists on TV can't get this right.

     

  • kabee (unregistered) in reply to evanm

    I believe they processed only 25 returns before they noticed the error. The real problem was that they had already made a report with the wrong numbers and sent to the government and someone 'forgot' to send a new one with the correct numbers.

    I even believe  the error happened somewhere in may and the government made their budget in august or september,  so there should've been enough time to get the new report to the right office ...

    In the end someone was found guilty, but nobody was punished, so all is well that ends well

     

  • TheRider (unregistered) in reply to V.
    V.:

    Personally I've sent an email once to a government bureau...  Couple of days later I found a typed letter in my mailbox (IOW sent by the postoffice and delivered at your door, not my email inbox :-)). 

    Oh, so the government clerk reading the mail pressed the reply button, typed his answer, then printed out the screen, placed it on a wooden table, took a picture of it... 

  • Mario (unregistered) in reply to V.

    V.:
    Personally I've sent an email once to a government bureau...  Couple of days later I found a typed letter in my mailbox (IOW sent by the postoffice and delivered at your door, not my email inbox :-)). 
    That must have been federal government(*)! I put my bets on the department of Finances or Social Security?

     

    (*) Yes, that little tiny dot between Germany, France and Holland has 6 governments and 6 parliaments ...

  • Mario (unregistered) in reply to Matthieu

    Anonymous:
    Indeed "actuellement"'s best synonynm would be "maintenant" (meaning now), but in Quebec it is common use to say "actuellement" as Charles stated before : "Actuellement je crois que ceci tourne en rond".  Whether this is a mistake or language evolution, I don't know but nobody here would notice.  French is a little like C++... syntax and semantics vary from one compiler to another...
    I have to say, Canadian French is so different from French French that it may as well be a separate language.

    PS: I am Belgian, and speak Dutch.

     On topic: One guy got a bill for 52 millions of taxes. To be paid within 1 month. He protested and a month later got an overdue notice, to ask him to pay, with added overdue fees ... of 2 million.

  • Pedantic (unregistered) in reply to mratzloff
    mratzloff:

    try {
        document = scanner.read();
        this.income = document.getIncome();
    } catch (Exception e) {
        this.income = 99999999.99; // brillant
    }


    Batch processing on that scale is normally done on minis or mainframes, with software written in COBOL or RPG. Java is still not fast enough for this purpose.

  • Ben (unregistered)

    Well being from the Dutch speaking part of belgium (that's about 50% of the population over here) It was big news. It was headlined on all tv stations and news papers. So I guess most people even IT people knew about it :-p

     

  • Anonymous (unregistered) in reply to Mario

    Anonymous:
    I have to say, Canadian French is so different from French French that it may as well be a separate language.

    Two languages can be considered distinct if they are mutually unintelligible. That cannot be said of Canadian French vs. "International" French. The term "regional dialect" would be more appropriate perhaps.

  • J Random Hacker (unregistered) in reply to BradC
    BradC:

    Sounds like an urban legend. Got a link to a news story?

     I saw it on comp.risks  The incident occured on 5th December 2001, and Google will find you plenty of confirmation. Whether the official investigation confirmed early press reports, I don't know.

  • Ossan Dust (unregistered) in reply to V.

    No no, not only the government... (I'm belgian too you know)

    Last week I sent an email to the local office of the UNIZO, the organization which is ment to represent belgian private companies. This week I received in my mailbox (that same "sent by the postoffice and delivered at your door" mailbox) a printout of my mail, with an answer to my question written in pen at the bottom. At least, I think it was an answer, couldn't decipher the handwriting....

    Well, maybe we should be relieved that belgan business organisations are not yet relying on IT for their tasks?...

  • Ossan Dust (unregistered) in reply to V.
    V.:

    LOL, We had a good laugh about this one here in Belgium.

    Note that it's only the government that does stuff like this, private enterprises do create decent software you know :-).

    Personally I've sent an email once to a government bureau...  Couple of days later I found a typed letter in my mailbox (IOW sent by the postoffice and delivered at your door, not my email inbox :-)). 

     sorry for my previous post - I forgot to quote the original, which is needed to have the context.

    I'm not very handy with computers you see... (yep, I'm currently still working in a belgian IT company)
     

  • John (unregistered)

    These kind of things happen all the time in Belgium.

    Belgium is the coutry where world famous child-murderer-pedophile Mark Dutroux was able to escape by just walking out of the room where a single sleeping almost-retired-diabetes-patient-semi-cripple (I'm not kidding) cop was guarding him.

    A few months ago, 28 prisoners were able to escape from a Belgian prison at once by tying bedsheets together to climb over a wall.

    This is also the country where a courtroom composed of politicians is now trying to outrule the biggest opposition party... During the last elections, that same party was declared 'loser of the elections' by its opponents and the media: the results from the voting district Hoboken, where the party has its highest score where witheld for over four hours 'due to IT problems'. By omitting these results, the party had a lower percentage than during the previous elections. This allowed in the evening their opponents to proclaim the defeat of this party. Of course, less than a minute after the ending of the big elections debate on public television, the results of that final district came in and it turned out that the party had gained votes instead if losing votes... Last year, a member of parliament for that same party received a huge fine because he did podcasting on his blog (which politicians are apparently not allowed to do in Belgium. Except for the ones that are in power, like the prime minister.)...

    Captcha=captcha!!

  • Max (unregistered) in reply to GrandmasterB

    I think this needs to be put back in context :

    -> there is a filter later up in the chain that does catch those strange amounts and ask for confirmation to proceed

    -> there is a manual validation made by someone down the chain on the numbers

    As for using €99,999,999 as filler, it is indeed a common practice in COBOL programming and is much more likely to be identified as an error during the manual validation than €0, which is pretty common (all the students among you that have no income but still need to fill a tax form every year).

    What went wrong in here is that all further validation process failed to catch the problem. So much for the 4 eye principle. Thank you bureaucracy and administration.

     Last but not least, there is no "money loss" in this affair, only wrong estimates of the budget.

     

  • Anon (unregistered) in reply to FrostCat

    Actually, this was an orbiter, the Mars Climate Orbiter more precisely. The story was something like this: the NASA flight controllers needed to keep track of the little changes to trajectory that affect the spacecraft on the long trip to Mars. The subcontractor that built the spacecraft bus (Lockheed Martin IIRC) supplied a table (probably as an Excel sheet) which the flight controllers could use to account for these changes prior to Mars orbit insertion. Unfortunately, the subcontractor used feet, while NASA, by its own standards, used meters. This wouldn't have been a problem, but the real WTF was that the units used weren't listed on the table at all - and meters and feet are units too similar  in size for the NASA team to go "WTF". The end result was that the spacecraft went in 50 km (excuse me, 160,000 feet) too close to the planet, ended up too low in the atmosphere and burned up.

    The Mars Polar Lander was also lost due to a software malfunction (if a poorly estimated threshold value counts as one).  There's more on that in Wikipedia.

  • anonymous (unregistered) in reply to Anonymous
    Anonymous:

    Anonymous:
    I have to say, Canadian French is so different from French French that it may as well be a separate language.

    Two languages can be considered distinct if they are mutually unintelligible. That cannot be said of Canadian French vs. "International" French. The term "regional dialect" would be more appropriate perhaps.

     

    The distinction between a language and a "language variety" (in the technical sense)is not that clear cut.  Things are so much easier when you have no idea what you're talking about, aren't they?

  • anon (unregistered) in reply to Dazed
    Anonymous:
    Ah well, at least this default value didn't kill anyone. Small default values can be pretty bad too. For those people who missed it (I don't think it's been on this site) allow me to mention the smart-bomb controller in Afghanistan.

    An observer team had lined up a Taliban position to receive a smart bomb. Unfortunately, just as the bomber commenced its approach, the battery in their smart-bomb controller ran out. Fortunately they had a spare battery which they could change in a few seconds. Unfortunately the enemy position was reported as an offset from the controller, and on power-up the offset was set to a default value of ... zero.

    Apparently one team member survived to report what had happened.

     

    Now I don't get it. When they start it up first, it will have a 0 initial value anyway. I am sure there was a procedure to start up the system in a way that it doesn't go off instantly (eg disconnect from bomb while starting controller). Maybe it was assumed that who plays with it and doesn't no the procedure is enemy, so the bomb should go off.

  • Dale (unregistered) in reply to animous

    "To increase the WTF factor, the routine which ultimately failed (by overflowing a 16-bit integer register with a 64-bit float in a code block which had no expection handling for performance reasons;"


    I believe that in safety critical systems people try very hard to get rid of all code that can't be used. For example if you had...

      if x != 0 then
         y = num / x
      end if

    then you don't need an exception handler to deal with divide by 0 - you have already prevented it by design. An exception handler here would be unusable code. The arianne 4 software designers proved that the value couldn't overflow (it represented a physical constant that the rocket could never exceed) so there was no need for the exception handler. They weren't left out for performance reasons.

  • J Random Hacker (unregistered) in reply to Dale
    Anonymous:
    The arianne 4 software designers proved that the value couldn't overflow (it represented a physical constant that the rocket could never exceed) so there was no need for the exception handler. They weren't left out for performance reasons.
    It was left out for performance reasons, after analysis. To quote the official report:

    It has been stated to the Board that not all the conversions were protected because a maximum workload target of 80% had been set for the SRI computer. To determine the vulnerability of unprotected code, an analysis was performed on every operation which could give rise to an exception.

    The full report is available online, and well worth a read.

  • anonymous (unregistered) in reply to anon

    About  ? => 9 

     I think  bad defaults can kill you (no pun intented) or can build you. I develop a Quake engine, based on other Quake engine, and my first version (0.1?) whas the latest from the other, with all the eyecandy defaulted to on. (used to be to off) and other creative adjust of defaults. Configuration defaults is non only data, but define the way a application feel for 99% the people (these that have no idea or dont want to change defaults). And some design decisions  can be made with adjustement of defaults.

    If the user change some default, a good usability is to show a big red alert box that the user will not read to alert about posible damages. Even If the user will not read the alert, he will notice theres something different and maybe dangerous. 

    No having that sign is itself bad design. Has that application the alert window?

    La imagen “http://www.beaterz.com/one_liners/1199/images/stop_sign.jpg” no puede mostrarse porque contiene errores.

     

  • Justin (unregistered) in reply to Pensacola Tiger
    Anonymous:

    Three, the access-control mechanisms on the computer system were too broad. When a user is authenticated to use the "R-E-D" program, he shouldn't automatically have permission to use the "R-E-R" program as well. Authentication isn't all or nothing; it should be granular to the operation.

    Don't confuse authentication and authorization.  A user is authenticated when he proves he is who he says he is.  A user is then authorized to use a particular set of programs or functions. 

  • Ewww (unregistered) in reply to John

    <quote>

    These kind of things happen all the time in Belgium. Belgium is the coutry where world famous child-murderer-pedophile Mark Dutroux was able to escape by just walking out of the room where a single sleeping almost-retired-diabetes-patient-semi-cripple (I'm not kidding) cop was guarding him. A few months ago, 28 prisoners were able to escape from a Belgian prison at once by tying bedsheets together to climb over a wall. This is also the country where a courtroom composed of politicians is now trying to outrule the biggest opposition party... During the last elections, that same party was declared 'loser of the elections' by its opponents and the media: the results from the voting district Hoboken, where the party has its highest score where witheld for over four hours 'due to IT problems'. By omitting these results, the party had a lower percentage than during the previous elections. This allowed in the evening their opponents to proclaim the defeat of this party. Of course, less than a minute after the ending of the big elections debate on public television, the results of that final district came in and it turned out that the party had gained votes instead if losing votes... Last year, a member of parliament for that same party received a huge fine because he did podcasting on his blog (which politicians are apparently not allowed to do in Belgium. Except for the ones that are in power, like the prime minister.)... Captcha=captcha!!

    </quote>
     

    For the ones who do not know the party this person is talking about : it's a racist, nationalist, far-right party, composed by nazi nostalgics and various other disgusting characters.

    See for yourself : http://en.wikipedia.org/wiki/Vlaams_Belang

    Just wanted to mention that so that everybody gets the opportunity to give this post the attention it deserves.
     

  • (cs) in reply to Ewww

    Good one, 'Vlaams-Belang' doesn't really do anyone any good, their action points consist of 'We have to put a stop to this bad policy' instead of really saying how they're going to make it better :-p

  • John (unregistered) in reply to Ewww

    <quote>For the ones who do not know the party this person is talking about : it's a racist, nationalist, far-right party, composed by nazi nostalgics and various other disgusting characters.</quote>

    This is a blatant lie. The party is comparable to any rightwing/republican party around the world. Yes, they are against immigration, but that doesn't mean they are racists or nazis. This is the kind of label that the Belgian government is trying to put on them in order to be able to destroy democratic opposition. The main reason this party is targetted is because they want the dutch speaking Flanders to become independent (instead of being roped together with the french speaking Wallons), which would be agains the interest of certain of powerful persons and institutions (including the french speaking part of Belgium that is now able to drain loads of money from Flanders).

    BTW: that Wikipedia article you refer to is not exactly 'trustworthy'. If you look at its history, you can see that most changes are made by a certain 'Luc Verhelst', who happens to be one of the leaders of the leftwing party Groen! This is so typical. A lot of lefts and extreme lefts roam the internet to spread dirt on Vlaams Belang, often with funding from the government (see www.blokwatch.be, www.0110.be).

    It's better to have a look at their own site (www.vlaamsbelang.be) and see if this is an extremist, racist or nazi party. Think and judge for yourself.

    If you don't like the Republikan party, that does not mean it has to be forbidden?

  • Karel (unregistered) in reply to John

    Anonymous:
    The main reason this party is targetted is because they want the dutch speaking Flanders to become independent (instead of being roped together with the french speaking Wallons)
    The biggest hurdle in getting a more independent Flanders is Vlaams Belang.

    Vlaams belang is a fascist party. The program of the party is not what is published at their website. Here is the program:

    1. uniforms: it will be enforced for all men to wear a costume, shirt and tie; and dress pants. No jeans.

    2. Police: a large number of police agents will be out to enforce laws, and prohibit free movement. Likely a curfew will be enforced: "You don't need to be out after 10pm!"

    3. Torturing, expelling deportation or enslavery of selected foreigners or decendants thereof.

    4. Nationalistic economy: the economy must first do business with itself. The government must enforce this with severe import taxes or limitation, and by creating business oportunities (building roads for example)

    5. We must have a bigger army, reinstating the conscription and we must retreat from the European Union.

    6. Homosexuality is prohibited, and any deviating sexual or gender behavior would be prohibited, illegal and/or punishable.

    Need I go on? Anyone still wondering why there's a "cordon sanitair"?

  • Ewww (unregistered) in reply to John

    Ok then, here are some of the various disgusting characters I was talking about :

     http://en.wikipedia.org/wiki/Gerolf_Annemans (See what he thinks about "The Universal Declaration of Human Rights")

     
    http://en.wikipedia.org/wiki/Karel_Dillen (the party's ex-president for life... His negationnism is quite repulsive)

    http://en.wikipedia.org/wiki/Filip_Dewinter (who declares being Islamophobic... and states that even though the Flemish movement from which he claims to inherit, took its roots in Nazism, it does not mean they were antisemitic...)

     
    A very nice party indeed, really...
     


    Or maybe I am making these things up, too, like a good government dog ?
     

    (sorry for turning this post into a political debate, but I thought it was necessary... I've said enough and provided enough pointers for reasonable people to get the point, so I'll end it here)

  • John (unregistered) in reply to Ewww

    All Wikipedia articles... we already know how usable they are in a debate like this. Have you written them yourself?
    "http://en.wikipedia.org/wiki/Filip_Dewinter (who declares being Islamophobic... and states that even though the Flemish movement from which he claims to inherit, took its roots in Nazism, it does not mean they were antisemitic...)"

    A little context might help. He was asked if his party was xenophobic. He answered that --if you should put a label on them-- it should be islamophobic, meaning that they are afraid of the uprising of Islam in Belgium/Europe. Years before this interview, Belgian prime minister Verhofstadt expressed similar feelings in one of his books. Of course, if you have the power in Belgium, you can say more than if you are in the opposition.
    He also never said the flemish movement has its roots in Nazism. That's a big lie on your part. Moreover, the 'flemish movement' existed long before Hitler was even born, which makes it quite difficult to 'have roots in Nazism'. Their goal is to form an independent flemish republic. Practically all dutch speaking parties have representatives that are part of this movement (the socialists, the liberals and the katholics). It is thanks to the flemish movement that the dutch speaking majority of the Belgians can get government documents in dutch instead of french only and that we can go to school in our native language. Of course, some french speaking politicians don't see the benefit of this.
    Let voters decide who to vote for. If you don't like a certain party, attack them using real discussions and honest arguments, not with violence, political trials and blatant lies.

  • Anonimus Belgicus (unregistered)

    oh boy...

    Thanks a lot John - this definitely will have been the last time that Alex is posting a Belgium-based story.After reading your bullshit most visitors of this forum will just say WTF?! whenever they here the word Belgium in the future.

    (damn - that must have been your evil plan from the beginning... :-)

     

    captcha = truthiness
     

  • Justin (unregistered) in reply to anon
    Anonymous:

    Some people certainly DO notice. It's like people saying "définitivement" when they mean something like "sans aucun doute" ("définitivement" in French means indefinitely as in forever, not definitely as in without a doubt). It annoys me like hell when even journalists on TV can't get this right. 

    Oh, pish pish.  While I certainly sympathize with your wish that your language not be butchered, journalists are NOTORIOUS for not knowing anything of any kind and for using each other's horrible grammar as excuses to keep doing it.

    Chances are, if a journalists says it, it's wrong.
     

  • Rn (unregistered) in reply to tchize
    tchize:

    For the little story, yesterday the belgian governement did have a meeting during all night to finalize the 2007 budget. Magically, during one night, they found the 4.000.000.000,00 euros they were missing for the upcoming year to have a positive budget.

     

    We should put them in such meeting every month, we would be a rich country :D
     

    You know a part of it is coming out of your pocket I hope, trough a nice new tax they invented in one night :/

     

    Someone said above, the real wtf is how the belgian governement solves these budget problems, well, he's totally right. Belgian governement = WTF 

  • Bob N Freely (unregistered) in reply to Anonymous2

    Anonymous:
    This seems like an urban legend too.  It's my understanding it was found that, after subsequent analysis, none of the Scuds were ever truely intercepted.  The version of the Patriot that was deployed during that Gulf War was intended to shoot down aircraft and not missles, and the software could not handle the speed of an incomming Scud. A Scud is a very inacurate missle and most, other than the ones that broke up on reentry and attributed to a shootdown, ended up landing in empty desert.  The one that hit the barracks was a lucky shot.

    Wikipedia entry on the Patriot missile system: http://en.wikipedia.org/wiki/Patriot_missile_system

    The important sections to note here are the PAC updgrades which allowed the system to track and intercept incoming tactical ballistic threats, and the "Failure at Dharan" section, which I'll quote:

    "On February 25, 1991, an Iraqi Scud hit the barracks in Dharan, Saudi Arabia, killing 28 soldiers from the US Army's 14th Quartermaster Detachment.

    A government investigation revealed that the failed intercept at Dharan had been caused by a software error in the system's clock. The Patriot missile battery at Dharan had been in operation for 100 hours, by which time the system's internal clock had drifted by one third of a second. For a target moving as fast as an inbound TBM, this was equivalent to a position error of 600 meters.

    The radar system had successfully detected the Scud and predicted where to look for it next, but because of the time error, looked in the wrong part of the sky and found no missile. With no missile, the initial detection was assumed to be a spurious track and the missile was removed from the system. No interception was attempted, and the missile impacted on a barracks killing 28 soldiers."

     You are right that there were questions post-action about the accuracy and success rate claims from Ratheon and the Bush I administration.  But the debate was more over what was considered "success."  In many cases, it was considered a success to deflect the missiles from their intended target, rather than destroying or disabling them outright.  In the end, it was more of a political debate over funding.

     CATPTCHA: "error"  Appropriate on multiple levels.

  • Anonymous (unregistered) in reply to Anonimus Belgicus

    John is right though. There's no longer a thing like 'freedom of speech' in Belgium, which is why you will often find outcries of despair on international forums. Here's a link on the podcasting case:

    http://yro.slashdot.org/yro/05/12/26/2142242.shtml?tid=153&tid=219 

  • (cs) in reply to Pedantic
    Anonymous:
    mratzloff:

    try {
        document = scanner.read();
        this.income = document.getIncome();
    } catch (Exception e) {
        this.income = 99999999.99; // brillant
    }


    Batch processing on that scale is normally done on minis or mainframes, with software written in COBOL or RPG. Java is still not fast enough for this purpose.

    LOL, U dinosaur! 

  • Dazed (unregistered) in reply to Max
    Anonymous:
    As for using €99,999,999 as filler, it is indeed a common practice in COBOL programming and is much more likely to be identified as an error during the manual validation than €0, which is pretty common (all the students among you that have no income but still need to fill a tax form every year).

    What went wrong in here is that all further validation process failed to catch the problem. So much for the 4 eye principle.

    Right, but COBOL was invented back in the days when memory was very expensive and every byte counted.

    The rule nowadays should be that if you don't have a good default value, don't use a default value at all. Use a separate flag which indicates "no value available" or something similar. Or use NaN where appropriate and if your language supports it. Making it easy to spot mistakes is a good idea as far as it goes, but it relies on assumptions about how (and by whom) the application will be used, how motivated the users are etc. Making it impossible to make the mistake in the first place is far better.

  • JurGradi (unregistered)

    being from Belgium I feel I have to say a small thing.

    the info is not completely correct....

     

    http://www.expatica.com/actual/article.asp?subchannel_id=24&story_id=33093

     

    Quote from the minister:

     

    "Budget balance will be achieved, even if it means selling an additional building," Reynders said in an interview with newspaper 'Le Soir'.

    He said the government's underestimation by EUR 883 million of tax rebates occurred because an official removed a computer security filter without authorisation.

     

    so ..

    1) stupid user removed security filter ... D'OH what do you think the use of that security filter was?

    2) how do you solve a budget imbalance? ... you sell a building ... a building more or less doesn't matter does it? 

  • 2Cynical (unregistered)

    from the same folks who would like to automate voting???  George Bush wins a third term by 8883 million votes?  Thank God that would be unconstitutional.

Leave a comment on “The €883 Million Overestimate”

Log In or post as a guest

Replying to comment #:

« Return to Article