Scheming Schema

« Return to Article
  • Counter 2013-01-29 08:08
    Remy, should it be first "N-1" equipement to load blocks were ignored?
  • JohnH 2013-01-29 08:11
    This story just stops... sure, it is stupid, but if Our Hero left it at that, I want some Paul Harvey... "and now, the Real Rest of the WTF!"
  • Remy Porter 2013-01-29 08:29
    Depends what you use for "n", now, doesn't it? If the first n are ignored, then obviously we're sending n+1.
  • snoofle 2013-01-29 08:31
    article:
    you’re the only one that’s ever had a problem with this

    So either nobody else has ever used it, or everyone else has figured out the same thing and has a work-around, and more interestingly, possibly an explanation. Perhaps find one of them and inquire?
  • Yaos 2013-01-29 08:31
    Status: Closed
    Reason: Works on my machine
  • jEDI 2013-01-29 08:34
    Where's my easy reader version?

  • Sean 2013-01-29 08:35
    The way to get the documentation updated, is to link the lead programmer to this article.
  • Dee 2013-01-29 08:36
    This isn't a WTF, it's the same as integrating with any enterprisey system using XML. Nothing ever works as expected and each side constantly blame each other. Eventually one side gives up and makes it "Just work".

    A recent one was sample data and sample application producing tags like <data load> when the system actually expected <data_load>, but generated no error on invalid tags - it just silently ignored the data.
  • Gary 2013-01-29 08:40
    I suspect a // xpath expression. Should have done this:

    <equipment_to_load>
    <number_of_pieces>30000000</number_of_pieces>
    <van_size>-12</van_size>
    <equipment_to_load>
    <number_of_pieces>2</number_of_pieces>
    <van_size>53</van_size>
    <nbr_pads>0</nbr_pads>
    <nbr_straps>0</nbr_straps>
    <bubble_wrap>N</bubble_wrap>
    <item_info>
    <equipment_description>Test 1</equipment_description>
    <size_length>5</size_length>
    <size_width>5</size_width>
    <size_height>2</size_height>
    </item_info>
    <item_info>
    <equipment_description>Test 2</equipment_description>
    <size_length>5</size_length>
    <size_width>4</size_width>
    <size_height>5</size_height>
    </item_info>
    </equipment_to_load >
    </equipment_to_load >

    Actually, this raises a point: why should it have a number_of_pieces element? That is just count(equipment_to_load/item_info)... And it might be sensible to wrap <item_info> nodes in an <items> element, just to get the advantage of more hierarchy, which is always better.
  • PolarityMan 2013-01-29 08:44
    Pretty sure MQ never touches the message payload.
  • PedanticCurmudgeon 2013-01-29 08:45
    snoofle:
    article:
    you’re the only one that’s ever had a problem with this

    So either nobody else has ever used it, or everyone else has figured out the same thing and has a work-around, and more interestingly, possibly an explanation. Perhaps find one of them and inquire?
    I think it's more along the lines of "We've never listened to any complaints".
  • ip-guru 2013-01-29 08:49
    Just because nobody complains dose not mean all parachutes are perfect.
  • whiznat 2013-01-29 09:00
    Similar punchline:

    I once worked for a medium-sized DoD contractor. The accounting lead quit right before we were bought by a much larger DoD contractor. The deputy general manager appointed the facilities guy to temporarily fill the position (who, believe it or not, was actually quite good at both roles). When the new accounting lead got a chance to get familiar with his job, he quickly realized why the previous guy had left. His department was a wreck. I don't think he had done anything illegal, but what he had done was done very poorly. So the new guy tries to tell his boss about all the problems they had, and the boss tells him (direct quote) "That can't be a problem because nobody's ever told me that before." Must be nice to live a world where new problems never crop up and all the old ones you never knew about simply go away.
  • snoofle 2013-01-29 09:02
    ip-guru:
    Just because nobody complains dose not mean all parachutes are perfect.
    I am adding that to my arsenal of comebacks; thank you!
  • mister t 2013-01-29 09:05
    more likely, 'it works fine when we send items one at a time, just send your items one at a time.'
  • ¯\(°_o)/¯ I DUNNO LOL 2013-01-29 09:25
    Gary:
    Actually, this raises a point: why should it have a number_of_pieces element?
    So that their hand-written XML parser can pre-allocate the array! Then watch it crash when you put in one too many item_info blocks!

    Also, why is there a blank after /equipment_to_load ? I was expecting that to be the reason for the failure, because their fragile parser written by Paula Bean broke on it.
  • Nagesh 2013-01-29 09:36
    JohnH:
    This story just stops... sure, it is stupid, but if Our Hero left it at that, I want some Paul Harvey... "and now, the Real Rest of the WTF!"



    Agreed and seconded! Where is TRWTF in this? Documentation is not updated and that is common woes all over the world.
  • Ironside 2013-01-29 09:36
    pon ies
  • dgvid 2013-01-29 09:38
    My initial reaction to newly found bugs in code that I'd thought was well tested is often to think "You're the only one that's ever had a problem with this." Experience has taught me to keep my mouth shut and assume that the problem is real unless and until I've proven otherwise. I guess the WTF here is that the lead developer isn't very experienced.
  • Matt 2013-01-29 09:40
    The article is correct. You're the only one that's ever had a problem with this.
  • ObiWayneKenobi 2013-01-29 09:56
    You ever notice how the story always paints somebody as a self-serving asshole? In this case it's the WebSphere MQ Lead who just acts like a douchebag to somebody trying to do their job.
  • Shutterbug 2013-01-29 10:04
    ip-guru:
    Just because nobody complains dose not mean all parachutes are perfect.


    That's my new favourite quote! :D

    captcha: genitus - half way between being a cock and a genius...
  • Yes Bro 2013-01-29 10:08
    ¯\(°_o)/¯ I DUNNO LOL:
    Gary:
    Actually, this raises a point: why should it have a number_of_pieces element?
    So that their hand-written XML parser can pre-allocate the array! Then watch it crash when you put in one too many item_info blocks!
    Yep, that's most likely it! And therefore the way to get this fixed is to figure out how to DOS their parser with (ideally anonymous) XML payloads, repeatedly, until they get sick of their system crashing and perceive that maybe, just maybe, it might need a teeny tiny bit of fixitude.
  • Larry 2013-01-29 10:10
    XML is the new Perl! There's more than one way to do it! And none of them are (likely to be) correct.
  • Steve The Cynic 2013-01-29 10:15
    mister t:
    more likely, 'it works fine when we send items one at a time, just send your items one at a time.'

    I vote for this as the most likely cause. And the documentation is "correct" in that it accurately describes the system behaviour in the most common use-case.

    It is "incorrect" in that it does not describe the bugged behaviour in other use-cases, but since Adam is the only person trying to operate in one of the not-most-common use-cases, the other team lead's statement is correct as far as it goes.

    This all sounds like one of the many cases where the most gratifying method of resolution is the use of heavy weaponry. I recommend pulling a GAU-8 out of your back pocket and using it on the other team.
  • just stop it 2013-01-29 10:41
    It's easy to get blood from a stone. A piano, on the other hand, can be quite cumbersome when trying to hit someone with it.
  • smilr 2013-01-29 10:42
    Steve The Cynic:
    I recommend pulling a GAU-8 out of your back pocket and using it on the other team.


    That's quite the pair of britches you must be wearing to hold that thing... I wonder what the concealed carry paperwork was like!
  • C-Octothorpe 2013-01-29 10:50
    smilr:
    Steve The Cynic:
    I recommend pulling a GAU-8 out of your back pocket and using it on the other team.


    That's quite the pair of britches you must be wearing to hold that thing... I wonder what the concealed carry paperwork was like!
    There was no paperwork. Would you demand paperwork from a guy carrying an anti-tank gun?
  • operagost 2013-01-29 10:57
    The developers clearly expect the end users to do this:

    <equipment_to_load>
    <item_description>item 1</item_description>
    <some_other_field>0</some_other_field>
    </equipment_to_load>
    <equipment_to_load>
    <item_description>item 2</item_description>
    <some_other_field>101</some_other_field>
    </equipment_to_load>
    <equipment_to_load>
    <item_description>item 3</item_description>
    <some_other_field>247</some_other_field>
    </equipment_to_load>

    Anyone who doesn't see the needless inefficiency in that is not intelligent enough to understand why it doesn't match their documentation.
  • mag 2013-01-29 11:00
    I was really hoping that the major issue would've been the extra space before the last right angle bracket in the xmlz
  • noname 2013-01-29 11:05
    Well, you usually do not have a chance to complain after that.
  • noname 2013-01-29 11:06
    ip-guru:
    Just because nobody complains dose not mean all parachutes are perfect.

    Well, you usually do not have a chance to complain after that.
  • AnonCoward23 2013-01-29 11:13
    noname:
    Well, you usually do not have a chance to complain after that.

    https://www.youtube.com/watch?v=xECUrlnXCqk
  • Anon 2013-01-29 11:18
    noname:
    ip-guru:
    Just because nobody complains dose not mean all parachutes are perfect.

    Well, you usually do not have a chance to complain after that.


    Thanks for explaining the joke for the benefit of nobody who didn't get it.
  • Cloy McTrure 2013-01-29 11:19
    noname:
    ip-guru:
    Just because nobody complains dose not mean all parachutes are perfect.

    Well, you usually do not have a chance to complain after that.

  • Yazeran 2013-01-29 11:34
    C-Octothorpe:
    smilr:
    Steve The Cynic:
    I recommend pulling a GAU-8 out of your back pocket and using it on the other team.


    That's quite the pair of britches you must be wearing to hold that thing... I wonder what the concealed carry paperwork was like!
    There was no paperwork. Would you demand paperwork from a guy carrying an anti-tank gun?


    Especially one which could make your car break the interstate speed limit in 3 seconds from the recoil alone... (http://what-if.xkcd.com/21/) :-)

    Yazeran.

    Plan: To go to Mars one day with a hammer
  • Steve The Cynic 2013-01-29 11:38
    smilr:
    Steve The Cynic:
    I recommend pulling a GAU-8 out of your back pocket and using it on the other team.


    That's quite the pair of britches you must be wearing to hold that thing... I wonder what the concealed carry paperwork was like!

    TARDIS Trousers, duh.
  • VictorSierraGolf 2013-01-29 11:53
    C-Octothorpe:
    smilr:
    Steve The Cynic:
    I recommend pulling a GAU-8 out of your back pocket and using it on the other team.


    That's quite the pair of britches you must be wearing to hold that thing... I wonder what the concealed carry paperwork was like!
    There was no paperwork. Would you demand paperwork from a guy carrying an anti-tank gun?


    Wait... maybe, just maybe, Steve The Cynic is actually a A-10 Thunderbolt II that became self aware during that y2k hype...
  • chubertdev 2013-01-29 12:09
    I was at least expecting a WTF about ConHugeCo not being able to update both the documentation and the middleware since it would "break existing integrations."
  • biziclop 2013-01-29 12:10
    noname:
    ip-guru:
    Just because nobody complains dose not mean all parachutes are perfect.

    Well, you usually do not have a chance to complain after that.


    I would assume almost everyone who tries to open a faulty parachute does complain.

  • Ken B 2013-01-29 12:15
    just stop it:
    It's easy to get blood from a stone. A piano, on the other hand, can be quite cumbersome when trying to hit someone with it.
    s/from/with/
  • mainframe web dev 2013-01-29 12:28

    "WebSphere MQ". This story must be from around 2005.

    It was originally 'MQ Series' and now IBM brands it as just 'MQ'.
  • Valued Service 2013-01-29 12:44
    Yazeran:


    Yazeran.

    Plan: To go to Mars one day with a hammer


    That's easy.

    1. Wait till a shuttle goes to mars.
    2. Board it with a hammer in hand.
    3. Profit.

    Now, if you mean using the hammer as a means of propulsion, then, that's the joke.
  • The Bytemaster 2013-01-29 12:50
    mainframe web dev:

    "WebSphere MQ". This story must be from around 2005.

    It was originally 'MQ Series' and now IBM brands it as just 'MQ'.
    Nahhh... they just are very slow to upgrade because they have to validate everything and the documentation first.
  • Nagesh 2013-01-29 13:01
    Train your mind and you too can indulge in astral travels around the universe.
  • htrjytiut 2013-01-29 13:05
    mainframe web dev:

    "WebSphere MQ". This story must be from around 2005.

    It was originally 'MQ Series' and now IBM brands it as just 'MQ'.

    http://www-01.ibm.com/software/integration/wmq/

    Out of 21 occurrences of "MQ", precisely one is not preceded by "WebSphere" (and it's the first Google hit for "ibm mq", so presumably it isn't some old page that wasn't updated for the alleged rebranding).
  • C-Octothorpe 2013-01-29 13:20
    VictorSierraGolf:
    C-Octothorpe:
    smilr:
    Steve The Cynic:
    I recommend pulling a GAU-8 out of your back pocket and using it on the other team.


    That's quite the pair of britches you must be wearing to hold that thing... I wonder what the concealed carry paperwork was like!
    There was no paperwork. Would you demand paperwork from a guy carrying an anti-tank gun?


    Wait... maybe, just maybe, Steve The Cynic is actually a A-10 Thunderbolt II that became self aware during that y2k hype...
    The possibilities are endless, and cool...
  • Jim Blog 2013-01-29 13:35
    Dee:
    A recent one was sample data and sample application producing tags like <data load> when the system actually expected <data_load>, but generated no error on invalid tags - it just silently ignored the data.


    Lack of format validation if Very Enterprise Indeed, it seems. I have seriously never seen such poor (and frequently non-existant) input validation since I started having to interface with Java-EE technologies.

  • jay 2013-01-29 15:13
    The real WTF is ...

    Nah, too easy.
  • jay 2013-01-29 15:16
    1. receive complaint
    2. is there a complaint about this problem already on file?
    3. yes: duplicate, reject complaint
    4. no: must be user's fault, reject complaint

    We are pleased to report that our complaint file remains empty. The system must be working perfectly.
  • Harrow 2013-01-29 15:26
    If the producing agent and the consuming agent agree on the format, the specification can go p!ss up a rope.

    -Harrow.
  • Mathias 2013-01-29 16:08
    I'm an Easy Reader, and I didn't understand any of this.
  • Jazz 2013-01-29 16:20
    htrjytiut:
    mainframe web dev:

    "WebSphere MQ". This story must be from around 2005.

    It was originally 'MQ Series' and now IBM brands it as just 'MQ'.

    http://www-01.ibm.com/software/integration/wmq/

    Out of 21 occurrences of "MQ", precisely one is not preceded by "WebSphere" (and it's the first Google hit for "ibm mq", so presumably it isn't some old page that wasn't updated for the alleged rebranding).


    God DAMMIT, you people. I thought I had repressed all of my memories of working with WebSphere. I wasted an entire summer in Washington, DC trying to make WebSphere MQ do something reasonable. Now I'm going to have nightmares about J2EE applications. Thanks.

    (Captcha: nobis -- no Business Information Systems, please.)
  • Gunslinger 2013-01-29 16:27
    operagost:
    The developers clearly expect the end users to do this:

    <equipment_to_load>
    <item_description>item 1</item_description>
    <some_other_field>0</some_other_field>
    </equipment_to_load>
    <equipment_to_load>
    <item_description>item 2</item_description>
    <some_other_field>101</some_other_field>
    </equipment_to_load>
    <equipment_to_load>
    <item_description>item 3</item_description>
    <some_other_field>247</some_other_field>
    </equipment_to_load>

    Anyone who doesn't see the needless inefficiency in that is not intelligent enough to understand why it doesn't match their documentation.


    No, they didn't intend that (they documented what they intended), but it's all they tested and all anyone had ever done up to this point.
  • Carsten 2013-01-29 16:36
    We just had that last week, if your Contractor uses xml example data to implement it: Run if you can.

    Otherwise throw massive entities and other advanced xml compositions with CDATA fields containing the own payload as early as you can on them as mandatory test cases.

    XML without a standard parser that enforces scheme definition is always a WTF.
  • knowingthepain 2013-01-29 17:14
    PolarityMan:
    Pretty sure MQ never touches the message payload.

    Right, it will probably be the transformation extender which touches the payload.
  • Paul Neumann 2013-01-29 17:20
    knowingthepain:
    Right, it will probably be the transformation extender which touches the payload.
    Bad touch. BAD TOUCH! wait, no good touch.
  • swschrad 2013-01-29 17:43
    so, you add a comment on the order of

    // SFM section: it isn't documented, but without this stuff, it doesn't work either. upline significantly unhelpful. basically duplicate everything with this parameter and you go home happy before midnight//
  • HowItWorks 2013-01-29 18:11
    swschrad:
    so, you add a comment on the order of

    // SFM section: it isn't documented, but without this stuff, it doesn't work either. upline significantly unhelpful. basically duplicate everything with this parameter and you go home happy before midnight//
    Also:
    // submitted to DailyWTF, Featured Article 20130129
  • notchulance 2013-01-29 18:31
    ip-guru:
    Just because nobody complains dose not mean all parachutes are perfect.

    I gonna use that.
    Verbatim.
  • Someone 2013-01-29 19:04
    Heh. XML issues are always the most annoying/amusing.

    Just recently I implemented a system to generate "XML" which was then loaded into an external system for HR processing. Having been bitten by this before I asked the external system to provide samples of what I should load. What I got back wasn't too bad except that it had no root node and hence was not real XML. I ended up generating the XML on my side with a stupid <STRIPTHISTAG> element as the root node, converting it to a string, stripping out the useless tag, and then saving it to disk.

    Of course that's the smallest of the WTF's of that project. I ended up complaining to one of their developers when I saw them and he admitted they had their own custom XML parser which somewhat explained the stupidity.
  • noname 2013-01-29 19:07
    Cloy McTrure:
    noname:
    ip-guru:
    Just because nobody complains dose not mean all parachutes are perfect.

    Well, you usually do not have a chance to complain after that.

    what joke? I think noone complain because they can't when they dead
  • Valency 2013-01-29 20:46
    I am a lowly hobby programmer, so I've never worked on enterprise stuff. WTF are "loadouts"? I only know the term from military aviation, and I'm assuming that they aren't converting differing ordnance configurations.
  • savar 2013-01-30 01:16
    Feature Articles:
    It wasn’t valid, according to the schema

    <pedantic> It wasn't well-formed XML, according to the specification for XML itself. </pedantic>
    Feature Articles:
    Adam had one final question: how did he submit corrections to the documentation?

    <pedantic> how did he submit bug reports?. </pedantic>

    But the idea of a disillusioned developer passive aggressively telling them to fuck off by rewriting the documentation to fit the buggy behavior is amusing to me.
  • Doctor_of_ineptitude 2013-01-30 01:42
    jay:
    1. receive complaint
    2. is there a complaint about this problem already on file?
    3. yes: duplicate, reject complaint
    4. no: must be user's fault, reject complaint

    We are pleased to report that our complaint file remains empty. The system must be working perfectly.


    We also have a complaint system that remains empty.
    1. Receive the complaint.
    2. Explain how firearms from before 1898 do not require a license and ballistics can't be reliable.
    3. Show them Colt 1877 Bulldog Gattling gun.
    4. ???
    5. Profit
  • Watson 2013-01-30 02:20
    PedanticCurmudgeon:
    snoofle:
    article:
    you’re the only one that’s ever had a problem with this

    So either nobody else has ever used it, or everyone else has figured out the same thing and has a work-around, and more interestingly, possibly an explanation. Perhaps find one of them and inquire?
    I think it's more along the lines of "We've never listened to any complaints".
    Or no-one else had ever been adventurous enough to have more than one item_info per document.
  • Jochen 2013-01-30 02:55
    After reading all articles on the site I'm wondering why does so much bad code and ignorance exist in IT.

    Is it simply a flaw in human nature that affects most people and results in the WTF's we read here or are we decent programmers simply so uber smart that we can create decent code?

    And why do so many IT "specialists" insist that their way is best while the industry changes practically daily?

    If you can't evolve with the technology, you don't belong in IT.
  • Meep 2013-01-30 05:41
    ObiWayneKenobi:
    You ever notice how the story always paints somebody as a self-serving asshole? In this case it's the WebSphere MQ Lead who just acts like a douchebag to somebody trying to do their job.


    But people are that way in real life. It's easier to be a douche and tell people to get fucked than to actually fix things.
  • Al 2013-01-30 08:28
    Been here..

    This whole story sounds like a recent experience of mine. In this case it was an American software vendor in the energy industry. The software we use has web services that process XML documents but for one service any second node instance was ignored. The software vendor (happy in their signed contract) have a UK support team that like to give answers that imply that the system is perfect and the users are useless. When evidence was provided the reply was that no one else had complained. Later on it turned out that only one company in Europe was actually using the interface - us.

  • Michael D 2013-01-30 13:20
    Reminds me of the time I was asked to pull vCard data from a client in order to populate their user accounts in our system. I tried a few open source vCard libraries but they didn't work. I finally cracked open the vCard specs and found what should have been obvious from the start - they were not sending me valid data. Naturally, I was the only person to ever have a problem with it so it must be an issue on my side. So I did what any self-respecting consultant would do... I created a custom vCard library from scratch and billed them for every second.
  • Bugs, Bugs Everywhere 2013-01-30 18:07
    dgvid:
    My initial reaction to newly found bugs in code that I'd thought was well tested is often to think "You're the only one that's ever had a problem with this." Experience has taught me to keep my mouth shut and assume that the problem is real unless and until I've proven otherwise. I guess the WTF here is that the lead developer isn't very experienced.


    That's because if someone else had had a problem with it, it would have been fixed already.
  • Norman Diamond 2013-01-30 18:38
    Al:
    This whole story sounds like a recent experience of mine. In this case it was an American software vendor in the energy industry. The software we use has web services that process XML documents but for one service any second node instance was ignored. The software vendor (happy in their signed contract) have a UK support team that like to give answers that imply that the system is perfect and the users are useless. When evidence was provided the reply was that no one else had complained. Later on it turned out that only one company in Europe was actually using the interface - us.
    That's what you get for offshoring your development work. Now you know better, right?
  • Chris 2013-01-30 23:16
    Did anyone else notice the unicorns?

    (CAPTCHA: acsii. I typed it wrong so many times...)
  • Marbles 2013-01-31 08:52
    Jochen:
    After reading all articles on the site I'm wondering why does so much bad code and ignorance exist in IT.

    Is it simply a flaw in human nature that affects most people and results in the WTF's we read here or are we decent programmers simply so uber smart that we can create decent code?


    A large portion of people who read this site are probably in the top 10% or so of programmers. We're interested in it, and want to see how NOT to do things (to help with knowing how we should do things) etc.

    The rest of the programmers in the world don't care about what they do, or if they did come to a site like this, they'd look at the CodeSODs and say 'OK, that looks like a good idea, I'll use that next time'.

    Really, I used to think myself an average C++ programmer, but so many times I come across total crap on 'programming websites', with people saying 'no, that's wrong, do it this (even more crap) way' and with no one seeing the 'obvious' bugs (uninitialised variables, buffer overflows, race conditions etc).

    So, I've decided I must be a fairly decent programmer and 90% of programmers should be stacking shelves instead.
  • Kuba 2013-01-31 09:18
    Someone:
    Of course that's the smallest of the WTF's of that project. I ended up complaining to one of their developers when I saw them and he admitted they had their own custom XML parser which somewhat explained the stupidity.
    I bet their "developers" are the same breed of people that complain when you want them to, I don't know, maybe write some actual code in an interview. But is so beyond them of course. Yeah, it's so beyond them that they'd waste my boss's money coding up a yet another broken XML parser. Maybe it should be a standard interview thing not only to code fizzbuzz, but also use an off-the-shelf XML parser of your choice, in a language of your choice, with a browser available to look things up of course. You fail that, you don't get the job. These days it's hard to avoid XML when dealing with almost any kind of software development, so IMHO it should be a hard requirement: you don't know how to use an existing one, you're not considered fit for the job.
  • Norman Diamond 2013-01-31 18:37
    Marbles:
    So, I've decided I must be a fairly decent programmer and 90% of programmers should be stacking shelves instead.
    You know what would happen if 90% of programmers were stacking shelves? failblog would get more youtube videos.
  • yawn 2013-01-31 21:54
    Can't be bothered to read these inane comments - it's a normal enterprise wtf, you don't know the context of the parent node - get off my lawn please
  • mainframe web dev 2013-02-01 09:13
    Sorry for the confusion. The branding went MQ Series->WebSphere MQ->MQ.

    I suspect that next it will be either Rational MQ or possibly Jazz MQ.
  • Robert White 2013-02-08 15:25
    I worked at a company that repeatedly failed to make an IPO because they could never get disclosures together that didn't show the company as totally boned up. Then they got a private buy-out offer. In the week before they finished the sale they ran some lay-offs that included all of the accountants.

    For years the company had been bidding government contracts at 70% of expected costs and then shifting money from new contracts to finish the old ones. The ultimate pyramid scheme.

    They laid off the accountants so that nobody who knew what was happening could spill the beans before the owners made off with the cash.