• huppenzuppen (unregistered)

    Am I the only one who finds it difficult to read the article when a Jenga tower is constantly collapsing on the right?

  • Isikyus (unregistered)

    Now this is the kind of thing I look for on this site!

    It will take me a long time to understand why anyone would declare all their variables

    long
    , and all function parameters
    int
    .

    Also frist.

  • Isikyus (unregistered) in reply to Isikyus
    Isikyus:
    Also frist.

    Okay, not quite.

  • Alex (unregistered)

    Hiro's boss' star is on the rise, clearly. Expect him to be a C-Level executive in no time.

    Captcha: quibus - Stop quibusing and get with the program.

  • Torben (unregistered)

    Thanks a daily-what-the-fucking lot for the animated GIF next to the text I am trying to read.

  • RFoxmich (unregistered)

    At least it's a Remy posting so the comments are worth it...and I may not be frist, by my captcha is secundum.

  • Pero perić (unregistered)

    I've read the first word and went to check comments before reading further. Judging from the lack of rage it looks like it's not about German ninja/samurai IT Hiro.

  • Yuval (unregistered)

    You can't not tell us what Hiro's boss's name is for such a story.

    Captcha - sagaciter, he who cites sagas.

  • (cs)

    Failing to admit failure is worse than failure.

    "We can’t admit to our customer that we can’t fix our own software", ok I understand you need to manage customer relations, but recognizing that things are broken and deciding to soldier on regardless is a good way to lose business.

  • (cs)

    Boss is an idiot, and typical boss. We can't admit that we fucked up, because we'd look stupid. Here's a hint bucko: You already look stupid for having software that doesn't work. The best thing to do is damage control, explain there are issues and present an alternative TO THE CLIENT:


    Boss: Okay, Initech, here's the situation (... explain what happened in brief terms). One of our guys says that we can scrap this and give you solid, working software in two months' time, so that's probably the best option. If that's not acceptable we can keep using this existing package and fix things as we go, but that's likely to take longer and be more frustrating for you with the issues.

    Initech: Hmm let me think on that... (decides what option is best for them)

    If you are in such danger of losing your "biggest customer" that you'd go belly up without them, then sorry but you don't belong in business because you have no sustainability at all. If your corporate are so stupid as to not let you take the time to fix garbage so it works, whether that's bug fixes or throwing it away and doing things right, then you have much bigger issues that you should address before worrying about your clients.

  • Lord Vader (unregistered) in reply to MoSlo

    Hm.. I'd just bin the software, build a viable version from scratch and label it v2.0. Problem solved.

  • (cs)

    They should have rechristened it as The Son of Sam.

  • MiniMax (unregistered) in reply to Isikyus
    Isikyus:
    It will take me a long time to understand why anyone would declare all their variables
    long
    , and all function parameters
    int
    .

    I will be happy to refer you to my esteemed ex-colleagues whose code I am trying to keep alive. Like nominally numeric primary keys stored as Strings in the database and passed around as both String and int in code, casted/converted on the spot as needed, boolean flags as ints, etc.

  • (cs) in reply to MiniMax
    MiniMax:
    ... boolean flags as ints ...

    Could be worse, I recently discovered an entirely new way to store boolean values in SQL server: nvarchar(1). An internet cookie to the first person who can guess how the value is encoded in this field ;)

  • faoileag (unregistered) in reply to Isikyus
    Isikyus:
    It will take me a long time to understand why anyone would declare all their variables
    long
    , and all function parameters
    int
    .
    Take: 1. a coding rule that states that integers have to be declared as long 2. an IDE where generated function/method stubs have int as default 3. a person who probably doesn't know that he can change the type provided by the IDE (or doesn't care) 4. a compiler that complains about long/int conversion but is happy with strings for automatic conversion Voila! There you are.
  • (cs) in reply to RFoxmich
    RFoxmich:
    At least it's a Remy posting so the comments are worth it...and I may not be frist, by my captcha is secundum.
    Comments? Get serious. If TDWTF is going to be so much tongue-in-cheek, it's time to abandon it.
  • Nick (unregistered) in reply to MiniMax
    MiniMax:
    I will be happy to refer you to my esteemed ex-colleagues whose code I am trying to keep alive. Like nominally numeric primary keys stored as Strings in the database and passed around as both String and int in code, casted/converted on the spot as needed, boolean flags as ints, etc.

    You have individual variables for your fields? Luxury! Ours are passed around all thrown together in pipe separated character arrays and knowing whether a method adds to the buffer or clears it usually requires careful examination of that method.

    Yes, I am fixing this monstrosity, slowly.

  • (cs) in reply to JimM
    JimM:
    MiniMax:
    ... boolean flags as ints ...

    Could be worse, I recently discovered an entirely new way to store boolean values in SQL server: nvarchar(1). An internet cookie to the first person who can guess how the value is encoded in this field ;)

    I see your nvarchar(1) and raise you char(5): http://thedailywtf.com/Articles/Fields-of-Booleans.aspx

    Values allowed are:

    YES FALSE UNKN TRUE "NULL" (i.e. as a string) NULL – the value (blank)

    "NO" is not an option, even though the field name is EXEMPT_YN and would indicate a boolean field.

  • Cheese (unregistered) in reply to JimM

    TRWTF is Oracle not having a Boolean Type.

  • minim (unregistered) in reply to huppenzuppen
    huppenzuppen:
    Am I the only one who finds it difficult to read the article when a Jenga tower is constantly collapsing on the right?
    Right click, Inspect element. Right click, Delete node.

    Chrome is a nice browser.

  • Nick (unregistered) in reply to JimM
    JimM:
    Could be worse, I recently discovered an entirely new way to store boolean values in SQL server: nvarchar(1). An internet cookie to the first person who can guess how the value is encoded in this field ;)

    Just checked our database, it has over 1000 of these columns in it. What's worse is you can't be certain the value is Y or N, sometimes it's also blank, which usually, but not always, means N. Occasionally it means no value supplied instead.

    To be fair, the original database software didn't support native boolean types but still...

  • delenit (unregistered)
    corporate sent a VM image of Sam’s PC
    Did Hiro receive a copy of Sam's porn stash, at least?
  • ¯\(°_o)/¯ I DUNNO LOL (unregistered) in reply to ObiWayneKenobi
    ObiWayneKenobi:
    One of our guys says that we can scrap this and give you solid, working software in two months' time, so that's probably the best option.
    TRWTF is thinking that you need to give the customer this much detail. The customer doesn't need to know how it's fucked or why it's fucked, just how long until it's unfucked. "We've put our best men on it!" should be enough.
  • ¯\(°_o)/¯ I DUNNO LOL (unregistered) in reply to JimM
    JimM:
    Could be worse, I recently discovered an entirely new way to store boolean values in SQL server: nvarchar(1). An internet cookie to the first person who can guess how the value is encoded in this field ;)
    varchar... one... WUT?

    And nvarchar means Unicode? So it can be any of 65536 values plus NULL?

    #define FILE_NOT_FOUND L"無"
  • faoileag (unregistered)
    the article said:
    Hiro’s boss won the argument. Corporate would own and support this beast from now on
    Actually, "You wrote it - you support it!" does work sometimes.

    A couple of years ago, my then department (customer-centric development) requested a module from corporate (generic development) that would provide "Functionality X".

    Weeks passed. Automatically generated snippets of API documentation began to appear, than some code. No module but instead a rather convoluted mess of classes.

    "You see, I didn't just write a module for you. I have developed a framework that is completely flexible. You can use that to build "Functionality X".

    I looked at it and was reminded of a box of Legos with the little sheet that told the buyer how to build a car out of it missing.

    "Oh, and here's a sample how you can use that class-library to implement "Functionality X".

    I installed the sample and it didn't work. I sent back the sample, stating that it didn't work and that he should fix it.

    The process was then repeated a few more times (10?) with more and more people on the cc list (my boss, his boss...) until "Functionality X" worked most of the time.

    That was when my department won: we simply refused to take the sample implementation as a "sample" implementation and instead made sure corporate treated it as the module it was originally meant to deliver.

    As buggy as it still was.

  • (cs) in reply to ObiWayneKenobi
    ObiWayneKenobi:
    JimM:
    ... I recently discovered an entirely new way to store boolean values in SQL server: nvarchar(1). ...

    I see your nvarchar(1) and raise you char(5): http://thedailywtf.com/Articles/Fields-of-Booleans.aspx

    As much as that's a WTF in its own right, at least it's using all 5 of those allocated bytes for something. Mine is using 4 bytes for no apparent reason at all (actually, I'm pretty sure I know exactly why it's set up like that, but it's still a WTF).

    It's like a former colleague changing all my ints to nvarchar(2) because the value was unlikely to exceed 100 so his way would use less storage....

  • (cs) in reply to ¯\(°_o)/¯ I DUNNO LOL
    ¯\(°_o)/¯ I DUNNO LOL:
    varchar... one... WUT?

    That was my first reaction.

    ¯\(°_o)/¯ I DUNNO LOL:
    And nvarchar means Unicode? So it can be any of 65536 values plus NULL?

    And that was my second reaction :D

  • ¯\(°_o)/¯ I DUNNO LOL (unregistered) in reply to ¯\(°_o)/¯ I DUNNO LOL
    ¯\(°_o)/¯ I DUNNO LOL:
    And nvarchar means Unicode? So it can be any of 65536 values plus empty string and NULL?
    FTFM. But brain is still broken.
  • Ross Ticher (unregistered)

    Now that's what I call ENTERPRISE QUALITY!

  • (cs) in reply to minim
    minim:
    huppenzuppen:
    Am I the only one who finds it difficult to read the article when a Jenga tower is constantly collapsing on the right?
    Right click, Inspect element. Right click, Delete node.

    Chrome is a nice browser.

    Same steps work in Safari. Thanks!

  • (cs)

    I learnt the "if you wrote it, you support it" idea many years ago.

    Customer Sales Support appeared at my desk one day. The American office had written a application to network our kit together, and gather data into one report for a Japanese customer. However, they were "too busy" to go and commission it on site. Did I fancy a few days in Japan?

    OK, I say, can I have the software and an example of each piece of kit, so I can test it here? No, can't do that. I declined the offer.

    Eventually, one of the Sales Support Engineers went. He spent a happy few weeks rewriting the thing on the customer site. He was even less pleased when I told him that's what I'd been expecting.

  • Juho AKA Juhoo (unregistered)
    We can’t admit to our customer that we can’t fix our own software. We’re a consultancy! How would that look?

    Honest?

  • Dan Mercer (unregistered) in reply to Flash

    Same steps work in Firefox too.

  • (cs) in reply to JimM
    JimM:
    MiniMax:
    ... boolean flags as ints ...

    Could be worse, I recently discovered an entirely new way to store boolean values in SQL server: nvarchar(1). An internet cookie to the first person who can guess how the value is encoded in this field ;)

    0 = true, 1 = false, amirite?

  • anon (unregistered) in reply to Juho AKA Juhoo
    Juho AKA Juhoo:
    We can’t admit to our customer that we can’t fix our own software. We’re a consultancy! How would that look?

    Honest?

    Exactly. Can't have that.

  • (cs) in reply to huppenzuppen
    huppenzuppen:
    Am I the only one who finds it difficult to read the article when a Jenga tower is constantly collapsing on the right?
    No... It is oddly... hypnotizing.
  • (cs) in reply to Flash
    Flash:
    minim:
    huppenzuppen:
    Am I the only one who finds it difficult to read the article when a Jenga tower is constantly collapsing on the right?
    Right click, Inspect element. Right click, Delete node.

    Chrome is a nice browser.

    Same steps work in Safari. Thanks!
    And Opera. I haven't used Firefox before but I don't see how it could be the only one without this feature.

  • Hannes (unregistered) in reply to Flash
    Flash:
    minim:
    huppenzuppen:
    Am I the only one who finds it difficult to read the article when a Jenga tower is constantly collapsing on the right?
    Right click, Inspect element. Right click, Delete node.

    Chrome is a nice browser.

    Same steps work in Safari. Thanks!

    In Opera as well. NICE!

  • Hannes (unregistered) in reply to Zacrath
    Zacrath:
    I haven't used Firefox before but I don't see how it could be the only one without this feature.

    The only browser without any feature would be Internet Explorer. ;)

  • (cs)

    TRWTF is that no one at corporate said anything until someone called support.

    Heads should have rolled.

  • ANON (unregistered)

    Upgrading a whole order management system to a new version just because a memo says so sounds a little bit weird to me. I would expect some useless meetings at least.

  • Meta-Reader (unregistered)

    WTF the first (or was that frist): Corporate mandates without the buy in of any of the clients it will affect WTF the second: Corporate's support was not on speeddial for the ~2 weeks of burn in/commissioning for support WTF the third: Mythical Man Month FUBAR from Hiro's boss WTF the fourth:The Daily WTF needs to re-work the masking tool to give all the companies/people who will be playing large roles in the story consistent names so we don't have to re-read the story 5 times to figure out whos WTF is greater

  • anonymous (unregistered) in reply to Zacrath
    Zacrath:
    Flash:
    minim:
    huppenzuppen:
    Am I the only one who finds it difficult to read the article when a Jenga tower is constantly collapsing on the right?
    Right click, Inspect element. Right click, Delete node.

    Chrome is a nice browser.

    Same steps work in Safari. Thanks!
    And Opera. I haven't used Firefox before but I don't see how it could be the only one without this feature.
    Firefox too.

  • MightyM (unregistered) in reply to anonymous
    anonymous:
    Zacrath:
    Flash:
    minim:
    huppenzuppen:
    Am I the only one who finds it difficult to read the article when a Jenga tower is constantly collapsing on the right?
    Right click, Inspect element. Right click, Delete node.

    Chrome is a nice browser.

    Same steps work in Safari. Thanks!
    And Opera. I haven't used Firefox before but I don't see how it could be the only one without this feature.
    Firefox too.

    Also works in IE11

  • ANON (unregistered) in reply to MightyM
    MightyM:
    anonymous:
    Zacrath:
    Flash:
    minim:
    huppenzuppen:
    Am I the only one who finds it difficult to read the article when a Jenga tower is constantly collapsing on the right?
    Right click, Inspect element. Right click, Delete node.

    Chrome is a nice browser.

    Same steps work in Safari. Thanks!
    And Opera. I haven't used Firefox before but I don't see how it could be the only one without this feature.
    Firefox too.

    Also works in IE11

    Not in Lynx :((

  • Qazwsx (unregistered)
    Hiro delivered the software. You could call him… the deliverator.
    Of all the irrelevant stuff in these stories, this is probably my favourite.
  • BlackOdd (unregistered)

    javascript: var images = document.getElementsByTagName('img'); for(var i in images){images[i].style.display = "none"}

    gets rid of retarded gifs

  • Anon (unregistered) in reply to ¯\(°_o)/¯ I DUNNO LOL
    ¯\(°_o)/¯ I DUNNO LOL:
    ObiWayneKenobi:
    One of our guys says that we can scrap this and give you solid, working software in two months' time, so that's probably the best option.
    TRWTF is thinking that you need to give the customer this much detail. The customer doesn't need to know how it's fucked or why it's fucked, just how long until it's unfucked. "We've put our best men on it!" should be enough.

    This^.

    Just rewrite it and skin the new version so it looks like the old one (or as close as possible without recreating any stupid GUI designs). The customer is none the wiser. Slap "version 2.0" on it.

  • QJo (unregistered) in reply to Isikyus
    Isikyus:
    Now this is the kind of thing I look for on this site!

    It will take me a long time to understand why anyone would declare all their variables

    long
    , and all function parameters
    int
    .

    Also frist.

    Happened on a project of ours once. The devs were new to Java, and thought an int was 16 bit and a long 32 bit, so used long throughout (even, WTF, for variables which were only ever going to be as big as 3).

    Apparently it's a common anti-pattern.

  • InternetTroll (unregistered) in reply to ¯\(°_o)/¯ I DUNNO LOL

    You're a manager, aren't you. Right? Yeah, you definitely sound like a manager. "Why tell the client the truth when we can bury them under false platitudes." Also, who let a manager on TDWTF?

Leave a comment on “Managed Order Management”

Log In or post as a guest

Replying to comment #:

« Return to Article