• Rockstar Programmer (unregistered)

    Dear CEO,

    I pressed 1 then C and was unable to get the first comment. This should be part of the unit tests! Did someone remove them again? Someone please look into this or suggest what procedure to follow.

  • Herby (unregistered) in reply to Jeff
    Jeff:
    by:
    ^^ -- BOFH? :)
    Sorry, just a loyal apprentice. :)
    So you are just a PFY!

    (Simon would be proud!)

  • (cs) in reply to boog
    boog:

    It also made no indication that the unit tests were poorly written; one who'd prefer not to test (as John Doe suggests) seems like just the type to make buggy code changes that might cause dozens of tests to fail. If the quality of unit tests was indeed the issue, his email should have reflected that.

    It seems the issue he had was not with the quality of unit tests but rather the quantity. Sure, it may be a lot of work to fix the code, and the many failed tests may not even be his fault, so I can sympathize with him in that case. But his proposal to ignore testing just to get the build out the door offends me as a software developer.

    This email came from "PlannedDev." From the email it looks like this is the group responsible with doing the daily builds, and releasing a "good" build. The build can't be released until it passes all the tests. It sounds to me like John doesn't mind testing, he just doesn't want to clean up everyone else's mess every day.

    I agree with him. If the other devs can't be bothered to run the unit tests before checking in, why should the build team? Sure integration bugs happen, but when 12% if your unit tests fail on a regular basis something is drastically wrong. Whatever that is needs to be fixed.

    The WTF isn't that John plans on turning the tests off, the WTF is that 10% of the unit tests fail regularly.

  • (cs) in reply to BD
    BD:
    Since when did it become the responsibility of the IT staff to handle things like desk lamps?

    IT DOES NOT INCLUDE FACILITIES.

    That would be why the IT guy emailed (apparently) a random person asking for help.

  • Russ (unregistered) in reply to ifriit

    Don't laugh too much. I inherited a team and build with over 300 failing tests that had been failing for years. First thing we did was to delete them as they were obviously being ignored and hiding failures people really cared about.

  • kirk (unregistered) in reply to BD
    BD:
    Since when did it become the responsibility of the IT staff to handle things like desk lamps?

    IT DOES NOT INCLUDE FACILITIES.

    Well, it does have a power cord, so it probably is IT's problem.

  • Nick (unregistered) in reply to Hasteur
    Hasteur:
    Why is a senior programmer contacting the CEO of the company to find out why a lamp has been removed? Why do they need lamps in programming? Is it a candle lit dungeon? And finally, why didn't the programmer contact their supervisor first?
    Read the rest of the email thread, he emailed the CEO by mistake.
    Dink:
    Dank:
    So TRWTF is that Aastra Phones can't mimic pressing keys when calling automated systems?
    I think you missed the fact that he had called his cell phone and was listening to a message left by an automated call...
    That wasn't very clear, it seems I wasn't the only one that thought the "press 1" message was from the voicemail system itself. I just assumed that an automated call system would not be so stupid as to leave a message that requires callee interaction on a voicemail system. Is that TRWFT?
  • Elmar (unregistered) in reply to BD

    If you work with computers and it works with a plug, you are automatically assumed to be an expert in it and thus it becomes your responsability....

  • (cs)

    That unit test e-mail reminds me of our former CTO, who suggested that in order to save time, instead of testing, we should just write code that works.

    Now why didn't we think of that ourselves...

  • org (unregistered) in reply to Stark
    Stark:
    trwtf:
    Elmar:
    This showed two things. Their org structure in the HR system works flawlessly and escalations shouldn't blindly go up the ladder ad infinitum :)

    Oh, but they should. If it gets to the top of the HR ladder without getting resolved, something is broken in HR, and the person who ends up dealing with it is likely the person who needs to know that. If it gets up to the CEO, that's because every layer between the worker in question and the CEO is ignoring routine work and every layer above the employee's direct supervisor is ignoring a failure at the level below. That seems important to know.

    Further proof why the moronic anti-socials who frequent this site don't belong in mature organizations. You are spot on "trwtf", "Elmar" is in idiot.

    I think what the daily wtf really needs is people with reading comprehension and/or logical reasoning skills. Elmar said things shouldn't go up the ladder ad infinitum. trwtf said basically the same thing, but more elaborate. If you can't make the obvious implication from Elmar's post, fine, but don't go around posting hateful comments on people's contributions.

    CAPTCHA: odio, heh.

  • Simon (unregistered) in reply to Herby
    Herby:
    Jeff:
    by:
    ^^ -- BOFH? :)
    Sorry, just a loyal apprentice. :)
    So you are just a PFY!

    (Simon would be proud!)

    Actually, He didnt use the upgraded cattle pr.... I mean... Customer Care Stick :)

  • topcoder (unregistered) in reply to dubbreak
    dubbreak:
    frits:
    Your an idiot.

    I'm pretty sure that implies you're something as well.. just saying.

    Well, from how you behave, you must be a very bad programmer without any knowledge in Assembler. Maybe try out paint by number. It might be better suited to you and most american coders on this site.

  • Bushea (unregistered)

    "Jason has a funny feeling that the new tech might not work out in the long run."

    I fail to see the WTF... if a user has a smartphone, sending email to ask them to check Outlook is perfectly normal. Not only this, but the times we've had outlook issues, the user reverts to the webclient...

  • (cs)
    Let me know what you guys decide on Monday; it we cannot get a build on Monday we will be turning off all unit tests for the build so we can get it out.

    You can do that?

    ... man, all this time I've been screwing around quality-controlling my code, and you're telling me I can just go ahead and ship it?

  • Jaydee (unregistered) in reply to Arancaytar
    Arancaytar:
    Let me know what you guys decide on Monday; it we cannot get a build on Monday we will be turning off all unit tests for the build so we can get it out.

    You can do that?

    ... man, all this time I've been screwing around quality-controlling my code, and you're telling me I can just go ahead and ship it?

    Yeah, you really can do that... Windows ME?

  • Will D Beast (unregistered)

    Am I the only one here with some sympathy for the lamp guy?

    He obviously meant to email someone in his DEV team but has ended up sending it to DEVIN, who just happens to be the CEO.

    Who's never accidentally clicked on the wrong name when selecting from an address book dialog? OK, he should have checked the email before hitting Send, but I bet everyone here has made the same mistake at least once in their life.

    Gotcha - yes. WTF - no.

  • Matt Rose (unregistered) in reply to Darth Deployer

    This deal is getting worse all the time!

    Seriously, though, as a build engineer (not the guy responsible for writing the code, just building it), I've sent out emails like this. As a build eng, my job is to make sure that QA, beta testers, etc. have a build, not to make sure the developers tests run.

  • (cs) in reply to Matt Rose
    Matt Rose:
    This deal is getting worse all the time!

    Seriously, though, as a build engineer (not the guy responsible for writing the code, just building it), I've sent out emails like this. As a build eng, my job is to make sure that QA, beta testers, etc. have a crappy, untested and possibly destructive build, not to make sure the developers tests run.

    Oh yes, you're so right... facepalm

  • topcoder (unregistered)

    America is stupid!!!

  • Design Pattern (unregistered) in reply to Will D Beast
    Will D Beast:
    Am I the only one here with some sympathy for the lamp guy?
    Might be so.
    Will D Beast:
    He obviously meant to email someone in his DEV team but has ended up sending it to DEVIN, who just happens to be the CEO.
    He did not only send the mail to the worng person, he had a converstion with him.

    He should have apologised after the first reply, but no, he kept on replying with his missing lamp the only thing in his mind.

  • (cs) in reply to Will D Beast
    Will D Beast:
    Am I the only one here with some sympathy for the lamp guy?

    He obviously meant to email someone in his DEV team but has ended up sending it to DEVIN, who just happens to be the CEO.

    Who's never accidentally clicked on the wrong name when selecting from an address book dialog? OK, he should have checked the email before hitting Send, but I bet everyone here has made the same mistake at least once in their life.

    Gotcha - yes. WTF - no.

    I've worked in multiple small shops where certain middle managers will take a mundane request (like vacation), sit on it for 6 weeks, and the day before you're supposed to start said vacation they drop a giant stack of work on you that must be completed before a date in the middle of your vacation. After being on the loosing side of this equation 4 times I got wiser and started BCCing the CEO and the director of HR and adding "Failure to discuss this request prior to 1 week before needed implementation constitutes an acceptance on your behalf and on behalf of the company".

    It's amazing how instantly my emails started being responded to. It's not that I truly need an answer today, but if I see you in your windowed office surfing the web and reading books that have absoluteley no relavance to the job while I'm stuck in the middle of the noisy cube farm, I'm going to put you on the hot seat with your supervisor/HR/the CEO

  • methinks (unregistered)

    "I can understand that Devin was upset to find that his lamp had gone missing while he was away on vacation,"

    I can't.

    Because Devin was the CEO who received the complaint.

  • reality check (unregistered) in reply to AlleyGator
    AlleyGator:
    The guy complaining about 90+ failing unit tests is totally right. The real WTF here is that he has to send out an email because nobody's fixing 90+ broken unit tests.

    In some companies, unit tests are written based purely on superstition rather than a science. The correct answer here is to rip out useless unit tests that nobody wants to maintain, because they aren't catching any bugs.

    yeah, what he said. I only wrote them cos they made me. It's not like they really test anything. shhh.

  • Billy Goat (unregistered) in reply to dubbreak
    dubbreak:
    frits:
    Your an idiot.

    I'm pretty sure that implies you're something as well.. just saying.

    yes, a well known troll

  • topcoder (unregistered) in reply to Billy Goat
    Billy Goat:
    dubbreak:
    frits:
    Your an idiot.

    I'm pretty sure that implies you're something as well.. just saying.

    yes, a well known troll

    Well. I am too, just because I am better at programming than the US. Btw, I had your mother in my bed.

  • (cs) in reply to topcoder
    topcoder:
    Well. I am too, just because I am better at programming than the US. Btw, I had your mother in my bed.

    Wait, you did a goat?

  • BlueCollarAstronaut (unregistered) in reply to Jiggly Boo

    I worked with a contractor who thought much like this. He had written some sort of fixed-length date stamp generator thingie that inserted the day of year into a string.

    He was pretty confident in his design, because it was "well tested", but when I read through his unit tests, all of them tested against dates that happened to fall sometime in either November or December.

    On top of not accounting for leap year, I pointed out to him that he was assuming a three digit number, but not really testing anything less than that, like, say, Feburary 3rd. He said he felt pretty confident that should work just fine (from his code, I knew it wouldn't), but he humored me and said he would add a test case just to be safe.

    A week later, he showed me his work again (this time, totally confident that it was absolutely perfect)...

    I looked at his tests again, and saw one new case: Feb. 3.

    So I looked in his code again, and, I noticed that his code had changed in order to accomodate the new test case to something along the lines of this:

    if (iDate >= 10 && iDate <= 99) { sDate = "0" + iDate.ToString(); } else sDate = iDate.ToString()

    Aside from being rather clunky way of handling the strings, this revealed to me that this guy seemed to have no ability to read between the lines.

    I almost felt bad asking him to add another test (to humor me) for January 1...just to make sure, you know.

  • Ozz (unregistered) in reply to by
    by:
    Jeff:
    I pressed "1" (while listening to a voice mail) and it didn't transfer
    Detailed instructions:
    1. Write the number "1" on the upper left corner of a sticky tab.

    2. With scissors, cut the sticky tab and throw away everything but the little "1".

    3. Gently stick the "1" on the trigger of your favorite sidearm.

    4. While carefully examining the interior of the barrel, press "1" to be transferred.

    You're welcome.

    ^^ -- BOFH? :)

    Nah - can't have been the BOFH. Those are set in England, where only criminals are allowed to own sidearms.

  • Toddsa (unregistered)

    Anyone whom deletes usefull unit tests should be deleted themselves.

  • (cs) in reply to chrismcb
    chrismcb:
    This email came from "PlannedDev." From the email it looks like this is the group responsible with doing the daily builds, and releasing a "good" build. The build can't be released until it passes all the tests. It sounds to me like John doesn't mind testing, he just doesn't want to clean up everyone else's mess every day.

    I agree with him. If the other devs can't be bothered to run the unit tests before checking in, why should the build team? Sure integration bugs happen, but when 12% if your unit tests fail on a regular basis something is drastically wrong. Whatever that is needs to be fixed.

    I think that aside from my suggestion that John doesn't like testing, you and I are more-or-less saying the same thing. As I said, it seems the issue is the quantity of unit tests, particularly the failing tests. I also admitted that I can sympathize with John. The many failing unit tests are probably not his fault, and he shouldn't have to fix them; the other devs absolutely should be checking their changes against the unit tests before committing.

    However, my sympathy stops at John's suggestion* to turn off unit testing as a "solution". Surely you'd agree that whatever is wrong should be fixed before the product goes out the door, right?

    chrismcb:
    The WTF isn't that John plans on turning the tests off, the WTF is that 10% of the unit tests fail regularly.
    Why must the two be mutually exclusive?
    • I admit John may have just sent a sarcastic email to drive the point home, and didn't really think that turning off unit tests was a good idea.
  • Anon (unregistered) in reply to AlleyGator
    AlleyGator:
    The guy complaining about 90+ failing unit tests is totally right. The real WTF here is that he has to send out an email because nobody's fixing 90+ broken unit tests.

    In some companies, unit tests are written based purely on superstition rather than a science. The correct answer here is to rip out useless unit tests that nobody wants to maintain, because they aren't catching any bugs.

    Yep - sounds to me like some devs have created absolutely useless non-deterministic tests that randomly fail, and some other group who is responsible for deployment are getting pretty sick of this...

  • (cs) in reply to Will D Beast
    Will D Beast:
    Am I the only one here with some sympathy for the lamp guy?

    He obviously meant to email someone in his DEV team but has ended up sending it to DEVIN, who just happens to be the CEO.

    Who's never accidentally clicked on the wrong name when selecting from an address book dialog? OK, he should have checked the email before hitting Send, but I bet everyone here has made the same mistake at least once in their life.

    Gotcha - yes. WTF - no.

    Or typed part of a name and neglected to pay conscious attention to the auto-completion result / signature block.

  • (cs) in reply to Arancaytar
    Arancaytar:
    Let me know what you guys decide on Monday; it we cannot get a build on Monday we will be turning off all unit tests for the build so we can get it out.

    You can do that?

    ... man, all this time I've been screwing around quality-controlling my code, and you're telling me I can just go ahead and jam it?

    FTFY

  • Capt. Obvious (unregistered) in reply to boog

    [quote user='boog']However, my sympathy stops at John's suggestion* to turn off unit testing as a "solution". Surely you'd agree that whatever is wrong should be fixed before the product goes out the door, right?[/quote] Depends on out the door to whom. Assuming it's pre-production testing, there might be many areas that could be checked without being affected.

    "Here's your build. All the unit tests for maintaining the integrty of the address book failed, so concentrate on other areas."

  • (cs) in reply to Capt. Obvious
    Capt. Obvious:
    boog:
    However, my sympathy stops at John's suggestion* to turn off unit testing as a "solution". Surely you'd agree that whatever is wrong should be fixed before the product goes out the door, right?
    Depends on out the door to whom. Assuming it's pre-production testing, there might be many areas that could be checked without being affected.

    "Here's your build. All the unit tests for maintaining the integrty of the address book failed, so concentrate on other areas."

    True, the email makes no mention of where the build is going. I'd be surprised if so many failed tests, even if confined to a single module, didn't affect the product as a whole. Still, it's possible.

    I suppose if John could verify that the erroneous code didn't effect a given area, it wouldn't be too terrible to disable unit tests in order to get a build out for pre-production testing.

  • Design Pattern (unregistered) in reply to Anon
    Anon:
    Yep - sounds to me like some devs have created absolutely useless non-deterministic tests that randomly fail, and some other group who is responsible for deployment are getting pretty sick of this...
    Seems more that we have a pretty weird distribution of responsibilities in this company: "If you guys want to leave this many unit tests in that is fine, but planned dev will shift all unit test support over to you going forward."

    The build team (why is a separate build team required anyway?) has the responsibility to support the unit tests another team has written?

    "Obviously, planned dev cannot fix this many random unit test every release." The build team has the responsibility to fix errors? Shouldn't that be the developers' responsibility?

    And finally: How about continuous integration and a setup where a developer cannot checkin code (in the public build tree) that breaks unit tests?

  • (cs) in reply to Elmar
    Elmar:
    Heh, a buddy of mine changed his marital status to married on their Oracle HR system and this has to be approved by the line manager, who duly ignored it. After a duly prescribed delay, it automatically escalated to the line manager's manager, who duly ignored it again. Wash, rinse repeat and eventually it landed on the CEO's inbox for approval. He duly approved it, and then duly rained down a ration of crap down the reverse line of managers. This showed two things. Their org structure in the HR system works flawlessly and escalations shouldn't blindly go up the ladder ad infinitum :)

    Actually, I think this is a good result--it shows the CEO there are problems.

  • VeyNiotabix (unregistered) in reply to SeySayux
    SeySayux:
    Hasteur:
    Why is a senior programmer contacting the CEO of the company to find out why a lamp has been removed? Why do they need lamps in programming? Is it a candle lit dungeon? And finally, why didn't the programmer contact their supervisor first?

    Of course, if a sysadmin contacted the CEO to complain that a LAMP had been remove....

    While the dev was on vacation, they upgraded to FreeBSD, Lighttpd, PostgreSQL and Perl.

    So, naturally he FLiPPed.

  • SabreDC (unregistered)

    Was it a cow lamp?

    http://www.homestarrunner.com/sbemail68.html

  • (cs)

    I think the email is masking the time progression of the build team's actions.

    The build team starts a build and a unit test fails. Rather than notifying production of the failure, they change the unit test to match what is in the code. Next day another unit test fails, and the unit test is changed to match the incorrect code.

    Rinse, Lather, Repeat, until just before the release completion date.

    QA has notified the developers that there are bugs in the code. (Unit testing should have caught it, but since it didn't QA did.) The developers fix all the bugs missed by the (modified) unit tests and commit their changes. Now that the code has been corrected, all of the modified unit tests are going to fail.

    When the test do fail, the Build Team, alarmed at all the failures, emails the entire team and announces that he doesn't know what unit tests are for, or how to perform his basic job functions.

    That's my guess anyway, the email doesn't really provide enough information to be definitive.

  • Steve (unregistered)

    I've been in a job before where unit tests were forbidden. There reasoning was that if the code was buggy and someone wrote a buggy unit test, then it could pass the buggy code instead of failing it. Therefore we were told "Just make sure the application works correctly by running it before each release.".

    When you think about it, it's obvious. I'm sure it'll catch on, too.

  • Johannes (unregistered)

    The real wtf about the failing unit tests is that probably they are just horrible, unmaintained and outdated tests that maybe one day used to test something correctly. Now perhaps the original developers have moved on or the old tests have been forgotten. All that is left is a broken CI and a build that is constantly "failing".

  • only me (unregistered) in reply to Elmar

    This reminds me of when we were setting up the security on our new database. Someone came up with the idea that all new users would have to be approved by their managers, and the approval would be granted from inside the db. Okay, so John wants access to the system, and so it alerts his boss, Mary. But it is a new system, with no pre-defined users, so Mary needs access so she can grant John access. Follow this to it's logical conclusion and someone asked, "How will the CEO like it , when on the day of deployment, he is doing nothing but granting access to new db?" We kept the manager approval, but moved the process to outside the database.

  • Stan (unregistered) in reply to topcoder
    topcoder:
    dubbreak:
    frits:
    Your an idiot.

    I'm pretty sure that implies you're something as well.. just saying.

    Well, from how you behave, you must be a very bad programmer without any knowledge in Assembler. Maybe try out paint by number. It might be better suited to you and most american coders on this site.

    TROLL -> ???? -> PROFIT

  • goob (unregistered) in reply to frits
    frits:
    boog:
    I'm pretty sure I would have put a fist through "John Doe"'s face after I read that email.
    Your an idiot. I'm tired of you're ignorant, hate-laced comments. Their getting on my nerves, especially when every one is featured.

    You're an idiot. I'm tired of your ignorant, hate-laced, and grammatically incorrect comments. They're getting on my nerves.

  • goob (unregistered) in reply to vidar712
    vidar712:
    Rinse, Lather, Repeat

    I tried that with my shampoo. It didn't really work. I found it better to lather first, then rinse.

    Captcha: appellatio The word appellatio, and the corresponding verb appellare, are used in the early Roman writers to express the application of an individual to a magistrate, and particularly to a tribune, in order to protect himself from some wrong inflicted, or threatened to be inflicted. http://penelope.uchicago.edu/Thayer/E/Roman/Texts/secondary/SMIGRA*/Appellatio.html

    Not funny, but interesting to see it produce a real word for a change.

  • hmm (unregistered) in reply to The third Tim
    The third Tim:
    A CEO that's not only polite, but also helpful? Fake?
    It's not fake, I saw it first hand, went round the whole company.
  • Ishan (unregistered) in reply to The third Tim

    thats true dude, it did happen and its not fake..

Leave a comment on “Best of the Email: Too Many Tests, The Great Lamp Caper, and More”

Log In or post as a guest

Replying to comment #:

« Return to Article