- Feature Articles
- CodeSOD
- Error'd
- Forums
-
Other Articles
- Random Article
- Other Series
- Alex's Soapbox
- Announcements
- Best of…
- Best of Email
- Best of the Sidebar
- Bring Your Own Code
- Coded Smorgasbord
- Mandatory Fun Day
- Off Topic
- Representative Line
- News Roundup
- Editor's Soapbox
- Software on the Rocks
- Souvenir Potpourri
- Sponsor Post
- Tales from the Interview
- The Daily WTF: Live
- Virtudyne
Admin
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.
Admin
(Simon would be proud!)
Admin
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.
Admin
That would be why the IT guy emailed (apparently) a random person asking for help.
Admin
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.
Admin
Well, it does have a power cord, so it probably is IT's problem.
Admin
Admin
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....
Admin
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...
Admin
CAPTCHA: odio, heh.
Admin
Actually, He didnt use the upgraded cattle pr.... I mean... Customer Care Stick :)
Admin
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.
Admin
"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...
Admin
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?
Admin
Yeah, you really can do that... Windows ME?
Admin
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.
Admin
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.
Admin
Admin
America is stupid!!!
Admin
He should have apologised after the first reply, but no, he kept on replying with his missing lamp the only thing in his mind.
Admin
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
Admin
"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.
Admin
yeah, what he said. I only wrote them cos they made me. It's not like they really test anything. shhh.
Admin
yes, a well known troll
Admin
Well. I am too, just because I am better at programming than the US. Btw, I had your mother in my bed.
Admin
Wait, you did a goat?
Admin
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.
Admin
Admin
Anyone whom deletes usefull unit tests should be deleted themselves.
Admin
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?
Why must the two be mutually exclusive?Admin
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...
Admin
Or typed part of a name and neglected to pay conscious attention to the auto-completion result / signature block.
Admin
FTFY
Admin
[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."
Admin
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.
Admin
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?
Admin
Actually, I think this is a good result--it shows the CEO there are problems.
Admin
So, naturally he FLiPPed.
Admin
Was it a cow lamp?
http://www.homestarrunner.com/sbemail68.html
Admin
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.
Admin
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.
Admin
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".
Admin
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.
Admin
TROLL -> ???? -> PROFIT
Admin
You're an idiot. I'm tired of your ignorant, hate-laced, and grammatically incorrect comments. They're getting on my nerves.
Admin
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.
Admin
Admin
thats true dude, it did happen and its not fake..