• (cs) in reply to John Bigboote

    I get the idea of a "temp" server.  It is quite useful to have a place to use things for evaluation or in a restricted eviorment.  But even in the example you listed the "box can be pulled at anytime" policy is counter productive because you have just finished installing BizTalk (which takes quite a while if I remember correctly) and the machine gets wiped before you get a chance to evaluate it.  A whole day's work is lost that could have been saved by a "Is anyone using server X" email.

     

    But like someone said earlier.  We're all making assumptions as to what the definition of "temp" is in their enviorment.  The machine was up for over a year.  I wonder if pulling down a "temp" server is a common occurance.

  • (cs) in reply to Alex Papadimoulis
    Alex Papadimoulis:

    GoatCheez:

    Normally I wouldn't complain so much.... no wait... I would.... Still though, the last Code WTF was: [Enterprise Beautification (2006-08-14)]

    There were two "code-related" ones last week:

    Two "code-related" articles are scheduled for this week. It's difficult to do "All Code" articles because I haven't received a new bad pattern lately (I question if there are any left), just repeats of the "for-case paradigm," "pointless conversion code," etc. What remains are convoluted messes of code that require dechypering lots of lines of often language-specific code just to understand what's wrong with it. Go take a look at the Side Bar for examples of what I'm talking about. I get the impression that most readers would prefer not to dig through the comments just to understand the Java, PHP, C++, C#, Perl, etc and why it's so bad to do that in that specific language.


    Even though I wouldn't count those two as code-related (see below) I'll forgive you since you replied ;-P.

    Abstract Candidate I wouldn't classify as code-related because the WTF isn't in the code really.... The "programmer" couldn't even code to begin with. Also, the "code" doesn't even compile lol.

    Poor Mr. O'Hare only HALF counts. It qualifies the below criteria, but c'mon... I want more than one line!

    I'm talking things like When (n<0) won't do. You know. The kind of wtfs that produce code that executes properly, and does stuff, but does them in the worst possible way (or damn near close to it). You know, the kind of stuff where you know the guy/gal coding the stuff is at least partially intelligent (they do come up with very, uh.... very "creative" solutions) but he/she just doesn't realize how retarded the stuff he/she is doing is because he/she fails to understand some simple concept or something of the like.

    It sucks that you haven't received any new bad patterns yet, I'm sure there are plenty more. Also, why not just re-do some wtfs that may repeat the same pattern, but in a new way?
  • (cs) in reply to John Bigboote
    John Bigboote:
    ProfMikey:
    the same happened to the Duke Nukem Forever dev server heh.


    5 or 6 times, apparently.


    Everyone assumes that was what happened. All they really did was use SourceSafe.
  • (cs)

    Gotta love this PM's professionalism....
    1. Tool he must have isn't specified in his contract so he pirates it.
    2. Doesn't engage any kind of disaster-recovery plan for project management.
    3. When faced with the inevitable catastrophic failure he simply abandons the project

    Gotta wonder how he'll explain away the year-long gap in his resume to his next project....

    Some people are blaming IT for the server wipe, but that's like blaming the hard drive for failing. The root WTF here is not the method that lost the project documents, but the fact that this large project was managed so poorly.... Yes, IT could have been more proactive, but really it's the PM's job to ensure proper project resources and dedicated hardware/software/support....

    -me

    3466 Firebug errors writing this message!
    Captcha: what captcha, I'm registered....

  • (cs) in reply to its me
    its me:
    Gotta love this PM's professionalism....
    1. Tool he must have isn't specified in his contract so he pirates it.
    2. Doesn't engage any kind of disaster-recovery plan for project management.
    3. When faced with the inevitable catastrophic failure he simply abandons the project



    In a creepy way, it reminds me of the "Monorail" episode of The Simpsons.
  • JS (unregistered) in reply to ammoQ
    ammoQ:
    JS:
    Just shoot an email out that says "Hey, anyone using DEVT09? We're gonna wipe it at 5PM on Friday." Simple. Plus you've covered your ass.

    Bad idea. You will get at least three "I'm not sure, please wait till I've checked" answers (of course without any follow-ups), therefore you never get any work done.
    OK, then take a stronger tone. Say "DEVT09 will be formatted at 5PM a week from today, so you've got a week to move your crap." You still cover your ass, and you still give advance notice instead of just wiping what was "supposed" to be an unused box.

    The essential problem here is that they just assumed the machine wasn't being used before wiping it. Just because things SHOULD be done a certain way doesn't mean they actually are being done that way. In the real world, people don't always use boxes for their intended purpose, because they're dumb. Having dumb people working at a company is already bad, but wiping out a year's worth of their work just makes matters worse. I'm not saying Network Ops is the only one in the wrong here, but they could have ultimately saved the organization much frustration and lost time if they had acted properly as the last line of defense against data loss.
  • (cs) in reply to JS

    I used to manage a single server that was used exclusively for experimental software (during the IE/Netscape release-of-the-hour browser wars). I would be forever reinstalling software on it (Orbix/Visibroker/NES/...  - all alpha releases). About every 7 or 8 days, I'd need to reinstall windows because there was just that much crap and no way to undo it. Every couple of weeks I'd need to wipe the whole disk and start clean.

    The rule was that you could access the server to try the new software, but never put anything on it.

    Every once in a while, someone would put something on there without telling me. One such person in particular used it as a backup drive -  without telling anyone. They never noticed that their backups were being obliterated because they never looked at them. I found out about it 6 months later when they went to retrieve something from their backup files, couldn't find it and started to panic. They went to my boss, and her boss, and complained - loudly - that I trashed their backups. I got called in to explain. My response:

    "What do you expect when you use a dev server named: DoNotUse for backup?"

  • Dazed (unregistered) in reply to Alex Papadimoulis
    Alex Papadimoulis:
    I get the impression that most readers would prefer not to dig through the comments just to understand the Java, PHP, C++, C#, Perl, etc and why it's so bad to do that in that specific language.

    It would however be a learning experience for more readers than would care to admit it ... ;-)

  • (cs) in reply to doc0tis

    My last company played it safe through the use of a post-it note (for system name, machine name, date) and a queue of yanked hard drives.  If no one complained before it got to the front of the queue, it was considered safe to wipe

  • Cameron (unregistered) in reply to Demaestro

    My distinguished colleague said:

    Anonymous:
    4 letters.... O...U...C....H....

    To be fair to the PM though he did ask for a deticated server originally and they weren't up for shelling it out. I would say that for a project of this size that you give the PM the tools he requests to get the job done.

    This is like like hiring a pro electrition for doing a huge buildings rewiring but not giving him a tool to test if wires are live then going..... WTF how did he electricute himself?

    Give your workers the tools they need. And listen to your staff when they tell you something is wrong. Getting the software and hardware for the PM would have solved this. Listening to the developer's concerns also would have helped.

    Save a penny lose a dollar.



    Frankly, there's no room for fairness for this individual. He took a DEMO product and fashioned it into a production tool. It's like working the high-wire without a net. Just plain careless. I appreciate that he didn't get the tool he wanted but sometimes you must work within the bounds of a budget.

    "An ounce of prevention is worth a pound of cure."

  • (cs)

    Too stingy to purchase the right software?

    Well, you get what you pay for, eh?

  • Cameron (unregistered) in reply to snoofle

    My friend and peer said,

    snoofle:


    One such person in particular used it as a backup drive -  without telling anyone. They never noticed that their backups were being obliterated because they never looked at them. I found out about it 6 months later when they went to retrieve something from their backup files, couldn't find it and started to panic.



    One co-worker of mine from years ago found out how to store files under his mail account on our XENIX mail server. When the server crashed we had a backup, but didn't appreciate restoring 300Mb (long ago) of his porn.

    Hmmm.

  • (cs) in reply to Ran

    Anonymous:
    I agree with Dazed (above). Policy or no policy, it's moronic to wipe an in-use computer without backing up its contents just in case.

    I agree. No self-respecting IT person would do such a thing!!

  • SwordfishBob (unregistered) in reply to snoofle

    Didn't anyone think to put the printouts on a table and photograph them?

  • (cs) in reply to ParkinT
    ParkinT:

    Anonymous:
    I agree with Dazed (above). Policy or no policy, it's moronic to wipe an in-use computer without backing up its contents just in case.

    I agree. No self-respecting IT person would do such a thing!!



    Sometimes it's not a matter of respecting yourself. It's a matter of nursing a slow-burning hatred for everyone else.
  • mark (unregistered) in reply to Dazed
    Anonymous:
    Anonymous:
    First to wonder: who is the WTFer here????  The executives who hired the Expert?  The expert who turned a demonstration into the bakbone of the company's biggest project?  The executives who didn't realize this?? The policy of no backup on dev temp servers???

    The Network Operations people are also decidedly guilty. Even an unbacked-up dev server might have a few days work of one or two people on it, and shouldn't be junked without checking. The briefest check would have shown a lot of recently modified files.



    I would bet that IT sent out a notice that server xxx was going to be repurposed, but that no one in the project group knew that they were on server xxx and what was going to happen, so ignored the email.

  • (cs) in reply to JS
    Anonymous:
    ammoQ:
    JS:
    Just shoot an email out that says "Hey, anyone using DEVT09? We're gonna wipe it at 5PM on Friday." Simple. Plus you've covered your ass.

    Bad idea. You will get at least three "I'm not sure, please wait till I've checked" answers (of course without any follow-ups), therefore you never get any work done.
    OK, then take a stronger tone. Say "DEVT09 will be formatted at 5PM a week from today, so you've got a week to move your crap." You still cover your ass, and you still give advance notice instead of just wiping what was "supposed" to be an unused box.

    Depending on the company, this might be even worse. By sending such an email, you confirm that you suspect that important stuff could be on the server (so forget "plausible deniablity") and still there might be someone on vacation who has stored something of importance on that server.

    The essential problem here is that they just assumed the machine wasn't being used before wiping it. Just because things SHOULD be done a certain way doesn't mean they actually are being done that way. In the real world, people don't always use boxes for their intended purpose, because they're dumb. Having dumb people working at a company is already bad, but wiping out a year's worth of their work just makes matters worse. I'm not saying Network Ops is the only one in the wrong here, but they could have ultimately saved the organization much frustration and lost time if they had acted properly as the last line of defense against data loss.

    Well, a lot of people could have ultimately saved the organization much frustration and lost time...  the network ops are IMO the last to blame. At least, they followed the rules.
  • MC (unregistered) in reply to 8bitwizard
    Anonymous:
    Anonymous:
    Lots of blame to go around on this one. I agree that even the cursory of checks before wiping this machine would have prevented this (as a last defense of course). Just shoot an email out that says "Hey, anyone using DEVT09? We're gonna wipe it at 5PM on Friday." Simple. Plus you've covered your ass.

    Hell, just unplugging the network cable or admin-downing its switch port a week before re-imaging the machine would have been something.  Dev-temp box or not, you don't just pick a random box and start re-imaging it


    It wasn't a random box.  It was a very specific box; one that was to be used for temporary, "Danger - this machine can be wiped at any time" purposes. 
  • wyz (unregistered) in reply to Cameron

    The onsite job I'm at currently has all kinds of WTF's. Among them is the servers are the all-in-one variety. The development server host SQL Server with about 15 development databases, IIS development web sites, file storage, VSS, etc. Likewise for the Test server. The Production server is similar with database, IIS, and code programs all-in-one. (At least they try to back everything up, not sure of the succes rate though.)

    Thank goodness for USB flash drives! My work and all critical related files are backed up to it almost every evening. If they lose the server, I have my backups.

    Regarding the school projects and backups, for several years I had backups of my work on 8-track tapes, 5 1/4 floppies, plus paper copies.

    Maybe it is a character flaw, but I have never trusted a single copy in one place of anything that has any importance.

  • (cs) in reply to ewhac
    Anonymous:
    We don't have the tape, nor the bacdwidth to backup dev servers. That's why we run CMS and back that up. If anything dies in dev, just reload from Source Safe. [emphasis mine]

    You're fired.

    Ensign, get this repository transferred to Perforce...



    Under which language does "Perforce" mean "Subversion"? ;-)

    Seriously, SVN has got to be my favorite source control program, especially for my private projects.  It works extremely well under Windoze.

  • woah! (unregistered) in reply to cronthenoob

    It is impossible to waste parts of your life because of someone else. It is possible to blame someone, yes, but it is impossible for it to be the other person's fault.

  • (cs) in reply to JS

    Having dumb people working at a company is already bad, but wiping out a year's worth of their work just makes matters worse

    I dunno, their code was probably full of WTFs anyway ...

    As for the thread starter, that's a fairly spectacular corporate cock-up. For me, the biggest WTF is using a demo server for production processes without telling the network admins. The admins were a bit rash to wipe without warning, but that's what happens to stuff on dev-temp servers.

    By the way, I know it's been done before, but the editor on these forums really is the Real WTF.

  • (cs)

    wtf, that's painful reading.... [image]

  • lurker (unregistered) in reply to John Bigboote
    John Bigboote:


    Sometimes it's not a matter of respecting yourself. It's a matter of nursing a slow-burning hatred for everyone else.


    That would make a great sig. 
  • Anonononymous (unregistered) in reply to John Bigboote
    John Bigboote:
    DigitalLogic:

    What would be the point of a dev server that "Nothing of any consequence should go on"? 



    In our case, playing with a new technology that might never see the light of production, or in any case won't see production in its current form. We've sandboxed around with BizTalk, Team Foundation Server, CMS, SharePoint, as well as several products where the mere act of installation might completely boof one of our permanent development servers.

    So if you're using the sandbox to check out BizTalk, you wouldn't be annoyed if someone took your sandbox and wiped it overnight? Even if there's no data or state on the machine, its going to set you back time to get the software you were testing set up again (and to get new hardware now that the machine you were using was repurposed).

  • (cs) in reply to lurker
    Anonymous:
    John Bigboote:


    Sometimes it's not a matter of respecting yourself. It's a matter of nursing a slow-burning hatred for everyone else.


    That would make a great sig. 


    I'm thinking about submitting it for our "Vision Statement" contest.
  • LRB (unregistered) in reply to ammoQ

    ammoQ:
    Anonymous:
    ammoQ:
    JS:
    Just shoot an email out that says "Hey, anyone using DEVT09? We're gonna wipe it at 5PM on Friday." Simple. Plus you've covered your ass.

    Bad idea. You will get at least three "I'm not sure, please wait till I've checked" answers (of course without any follow-ups), therefore you never get any work done.
    OK, then take a stronger tone. Say "DEVT09 will be formatted at 5PM a week from today, so you've got a week to move your crap." You still cover your ass, and you still give advance notice instead of just wiping what was "supposed" to be an unused box.

    Depending on the company, this might be even worse. By sending such an email, you confirm that you suspect that important stuff could be on the server (so forget "plausible deniablity") and still there might be someone on vacation who has stored something of importance on that server.

    The essential problem here is that they just assumed the machine wasn't being used before wiping it. Just because things SHOULD be done a certain way doesn't mean they actually are being done that way. In the real world, people don't always use boxes for their intended purpose, because they're dumb. Having dumb people working at a company is already bad, but wiping out a year's worth of their work just makes matters worse. I'm not saying Network Ops is the only one in the wrong here, but they could have ultimately saved the organization much frustration and lost time if they had acted properly as the last line of defense against data loss.

    Well, a lot of people could have ultimately saved the organization much frustration and lost time...  the network ops are IMO the last to blame. At least, they followed the rules.

    I think the likelyhood that an executive would blame you for sending out a notice and then deleting important data on a "temp" server because you "suspected" that there was important data there just because you sent out a warning notice is far less likely than getting blamed for not following common sense precautions and by not sending out a warning message.  Maybe when playing golf you dont' yell four because that would mean you thought you were hitting a ball purposefully at someone.  Or you don't wear seatbelts because that would be admitting that you're a bad driver.  Just because someone may possibly act stupid is no reason for you to act stupid.

    And we don't know what the full policy at the company was or was not regarding the temp server.  But even if I have the choice of following a company policy to the letter of the law and not using common sense, or to go above and beyond the company policy and use common sense, I will use common sense every time if there is even a remote possibility that not doing so could cost the company millions.  And I've worked at many companies that had policies for dev temp machines that required notice to all possible parties that could be using the server, i.e. all users who have access to the server over the network.  And some companies, even required changes to dev temp computers to come be fore the Change Control Board for approval. 

    Sure it's possible that there company policy expressly forbid sending out notice that a dev "temp" machine would be wiped.  But there is nowhere close to definitive proof of this, and I've yet to hear of a place with a policy like that.

  • (cs) in reply to cronthenoob

    Holy shit.

    cronthenoob:
    This reminds me of something that happened to me in college!

    It was my final semester and my final project was coming along very nicely.  The guy next to me was creating a sort of email type thing,  I don't exactly remember. 

    Well he didn't secure it.  Some spammers got ahold of the script and sent out mass amounts of SPAM email.  The ISP shut the web server down.  After a few weeks, the server was finally online again.  The guy never secured his code, so of course it went down again.  Eventually my teacher decided to take the server and move it into the classroom where we could at least work on our projects locally. 

    We moved the server in the classroom, hooked it up, turned it on, and nothing happened.  All the data was corrupted somehow, everybody lost everything they ever created for the past 4 years.  I don't remember but I think we were able to recover some of our work.

    in the end, the school payed me back my tuition.   But I still have to live with the fact that I wasted 4 years of my life because of some idiot who doesnt know how to secure a PHP mailer.
    I'm sorry, but... what?

    You're saying that you weren't graded until the very end of the four years?  Worst-case scenario, it should have wiped everyone's work for the semester, but the machine should have been backed up and you should have had copies of all your work on your personal machine anyway.

  • JustBackItUp (unregistered)

    Where I work, pretty much every server is backed up - unless it's in a "lab" such as DR, SOE Testing, etc.  Even those - in the labs - are, in effect, backed up, because they are restores from other environments.

    Yes, backup is expensive.  Could be $50k to backup 2TB, for example.  One salary.

    There's no such thing as too expensive to back up, no excuse for anyone - admin teams or individuals - not to back up.

    On projects that I work on (all development - they then get handed to support, and we're onto the next project), the Development server is the most important.  Lose a day's work on that, and it's cost you 10 days worth of highly paid developers.  Lose production for a day, and you fail back to your log shipping DR box.  Costs about 1/2 a day of a support person running around and making sure the business understand that they've temporariliy up to an hours transactions - and they'll get them back soon, so just sit tight.  About 1/2 a day to coordinate the fail back and execute when required.

    I'm not saying prod backups aren't important, but when evaluated in terms of lost productivity for an entire business, dev backups are as least as valuable - I've had no trouble convincing bean counters that this is the case for 15 years.

  • (cs) in reply to JS
    Anonymous:
    ammoQ:
    JS:
    Just shoot an email out that says "Hey, anyone using DEVT09? We're gonna wipe it at 5PM on Friday." Simple. Plus you've covered your ass.

    Bad idea. You will get at least three "I'm not sure, please wait till I've checked" answers (of course without any follow-ups), therefore you never get any work done.
    OK, then take a stronger tone. Say "DEVT09 will be formatted at 5PM a week from today, so you've got a week to move your crap." You still cover your ass, and you still give advance notice instead of just wiping what was "supposed" to be an unused box.

    The essential problem here is that they just assumed the machine wasn't being used before wiping it. Just because things SHOULD be done a certain way doesn't mean they actually are being done that way. In the real world, people don't always use boxes for their intended purpose, because they're dumb. Having dumb people working at a company is already bad, but wiping out a year's worth of their work just makes matters worse. I'm not saying Network Ops is the only one in the wrong here, but they could have ultimately saved the organization much frustration and lost time if they had acted properly as the last line of defense against data loss.


    Everyone comes up with this "server will be formatted in a week" but forgets about the dev's request for a terminal server. If I requested a terminal server and I got the reply "you'll have it in a week", I'd be really mad and complain loudly about how crappy this policy is. You all say that wiping a temp machine without notice is counterproductive, but how about having to wait for a simple terminal server for a week?

    Yeah, you're right, the IT should have a pool of unallocated servers but the someone asks for a new temp server and another one and the pool is empty. And we all know how quick the process of buying a new one is at a company of this size.

    So what will IT do? Wipe the oldest temp server allocated. Don't forget that it had been allocated as temp for over a year . Now having temp data for over a year is obviously nonsense, isn't it? Again, I can only assume that the general level of professionalism of the company's dev team used to exceed that by lightyears. Before the super-PM arrived, that is.
  • (cs) in reply to Bob Janova
    Bob Janova:
    ...

    By the way, I know it's been done before, but the editor on these forums really is the Real WTF.

    <font size="5">A</font>t least it works now.  A while back, it was necessary to avoid switching between Design and HTML if you didn't want your message to become read-only or in some cases disapear.  Preview had to be disabled because it tended to make a mess of your post.

  • SL (unregistered) in reply to GoatCheez
    GoatCheez:
    Technically, it wasn't random at all. The last time that machine was ever used for anything was probably when the PM asked for a demo server for the software they were using. When they wiped that machine, that request was over a year and a half old.


    If that's the case, I'd be tempted to say that The Real WTF (TM) is that this machine was plugged in and running for a year and half without being used for anything. If it's a machine that could be taken away and wiped clean at any time without notice, nobody (in their right mind) would ever use it. If the machine is never used, why even have it running?

    Captcha: hotdog. Just what I planned on making for dinner tonight...
  • SomeCoder (unregistered)

    Really, the blame rests with the PM.  Yes, IT probably could have handled the situation differently but if you read the original post, R.B. repeatedly told management and everyone that storing the data on a temp server was a bad idea for this very reason.  A very minor IT WTF I think but a HUGE "Expert" Project Manager WTF.

     

    Captcha = clueless... like the "Expert" Project Manager

  • (cs)

    Three sides to this WTF coin, the front face ( Development ), the back face ( IT ), and the outer edge ( Executive Leadership ). Each is equally complicit in it's failure of responsibility.

    In a flip of the coin to assign blame, odds are - the coin won't come to rest on it's outter edge.

  • Russ (unregistered) in reply to SomeCoder
    Anonymous:

    Really, the blame rests with the PM.  Yes, IT probably could have handled the situation differently but if you read the original post, R.B. repeatedly told management and everyone that storing the data on a temp server was a bad idea for this very reason.  A very minor IT WTF I think but a HUGE "Expert" Project Manager WTF.

     

    Captcha = clueless... like the "Expert" Project Manager



    I think the real WTF is that with such a huge budget for the project they couldn't afford a few thousand $'s for a server... I mean seriously... you can get a kick ass server for less then $5k nowadays, so I think it's really a management WTF for not letting them get another server (although I wonder what the cost of the software was, and I guess they didn't want to pirate the software by setting it up on another server, and this one was supposed to be only for test purposes...)  
  • (cs)

    reminds me of when a guy we were working with, a supposed oracle guru, was managing our production oracle servers... one of the juniors accidentally did an update with a missing Where clause and updated all the rows in a very large table, then did a commit.... no big deal, had happened before, and we would normally just roll back to the previous day... well thats what we thought we could do until we found out that the daily backups didn't happen because the oracle guru had told the network team they didn't need to worry about backing these databases up, because he'd written a script that would back them up quicker than their other software....

    His script di something, i don't know what, but it basically would copy the information down to his local machine... which was good and all, except his local machine was a laptop.... that he took home each night.... there had been no backups done for around 6 months

  • (cs) in reply to lomaxx
    lomaxx:

    there had been no backups done for around 6 months

     

    Grandfather from The 5th Element:

      You are fired!

     

    This is a good WTF.  Nice to see that I wasn't the only who had to put up with similar stupidity.

  • (cs) in reply to wyz
    Anonymous:

    Regarding the school projects and backups, for several years I had backups of my work on 8-track tapes, 5 1/4 floppies, plus paper copies.

    Maybe it is a character flaw, but I have never trusted a single copy in one place of anything that has any importance.

    The important phrase is "in one place."  We had some workers that resided in a portable office building, and had been doing research for about two years.  They did regular backups of all their programs and data, which were then stored in a file cabinet in their office.  When a forest fire burnt their portable office building, it destroyed their computers and their backups.  Truly two years work "up in smoke."

     

  • ewhac (unregistered) in reply to Oliver Klozoff
    Oliver Klozoff wrote the following post at 08-28-2006 5:03 PM:
    [image] Anonymous:
    We don't have the tape, nor the bacdwidth to backup dev servers. That's why we run CMS and back that up. If anything dies in dev, just reload from Source Safe. [emphasis mine]

    You're fired.

    Ensign, get this repository transferred to Perforce...

    Under which language does "Perforce" mean "Subversion"? ;-)

    You know, I thought about that for about fifteen seconds before posting before settling on Perforce. I like Subversion, too, but if I were in a managerial position selecting a mission-critical SCM system, I'd select Perforce.

    Once Subversion earns a couple more years of a trouble-free reputation, I'd probably be much more comfortable selecting it.

  • YodaYid (unregistered) in reply to Dazed

    Totally - that's what got me into this site :-) Real-world antipatterns are very instructive, and I'm sure plenty of newbie programmers have learned quite a bit from these pages.

    That said, I like Symbolic Installation (the Wingdings story) - possibly my favorite "management" (i.e. non-code) WTF.

  • (cs) in reply to GoatCheez
    GoatCheez:
    Alex Papadimoulis:

    GoatCheez:

    Normally I wouldn't complain so much.... no wait... I would.... Still though, the last Code WTF was: [Enterprise Beautification (2006-08-14)]

    There were two "code-related" ones last week:

    Two "code-related" articles are scheduled for this week. It's difficult to do "All Code" articles because I haven't received a new bad pattern lately (I question if there are any left), just repeats of the "for-case paradigm," "pointless conversion code," etc. What remains are convoluted messes of code that require dechypering lots of lines of often language-specific code just to understand what's wrong with it. Go take a look at the Side Bar for examples of what I'm talking about. I get the impression that most readers would prefer not to dig through the comments just to understand the Java, PHP, C++, C#, Perl, etc and why it's so bad to do that in that specific language.


    Even though I wouldn't count those two as code-related (see below) I'll forgive you since you replied ;-P.

    Abstract Candidate I wouldn't classify as code-related because the WTF isn't in the code really.... The "programmer" couldn't even code to begin with. Also, the "code" doesn't even compile lol.

    Poor Mr. O'Hare only HALF counts. It qualifies the below criteria, but c'mon... I want more than one line!

    I'm talking things like When (n<0) won't do. You know. The kind of wtfs that produce code that executes properly, and does stuff, but does them in the worst possible way (or damn near close to it). You know, the kind of stuff where you know the guy/gal coding the stuff is at least partially intelligent (they do come up with very, uh.... very "creative" solutions) but he/she just doesn't realize how retarded the stuff he/she is doing is because he/she fails to understand some simple concept or something of the like.

    It sucks that you haven't received any new bad patterns yet, I'm sure there are plenty more. Also, why not just re-do some wtfs that may repeat the same pattern, but in a new way?

    Alex, thanks for not totally concentrating on code specific issues. Coding issues are fun because they are fun to solve. However, The whole picture is important.  Workplace, collaboration, architecture, security, support, planning, marketing, and management issues complete the picture.

    This WTF re-affirms that code is really a small cog in the big machine... That at any point in the big picture, someone can drop the ball and loose the game for everyone... That our best efforts are vulnerable to any idiot with a keyboard and credentials.

    Yet...in blind defiance of better judgment, we relish the rare, somehow workable, profoundly stupid... code example. We need a good dose of really bad code.

  • brian (unregistered) in reply to doc0tis

    Suppose that netops' usually generous bonuses were dependent on the company making their numbers -- which this fiasco prevents. Guess they can console themselves with the fact that 100% of the blame is on the PM...

    Sometimes a little proactivity pays off.

  • (cs) in reply to ewhac

    Anonymous:
    cronthenoob:

    But I still have to live with the fact that I wasted 4 years of my life because of some idiot who doesnt know how to secure a PHP mailer.


    No; you wasted 4 years because you didn't back it up, right?  Just like the PM.

    Yeah man, don't blame me for your mistakes! PHP is gay anyway.

    Anonymous:

    Oliver Klozoff wrote the following post at 08-28-2006 5:03 PM:
    [image] Anonymous:
    We don't have the tape, nor the bacdwidth to backup dev servers. That's why we run CMS and back that up. If anything dies in dev, just reload from Source Safe. [emphasis mine]

    You're fired.

    Ensign, get this repository transferred to Perforce...

    Under which language does "Perforce" mean "Subversion"? ;-)

    You know, I thought about that for about fifteen seconds before posting before settling on Perforce. I like Subversion, too, but if I were in a managerial position selecting a mission-critical SCM system, I'd select Perforce.

    Once Subversion earns a couple more years of a trouble-free reputation, I'd probably be much more comfortable selecting it.

    Yeah, and subversion doesn't have a cool walking P4 dude as a busy cursor. Lame.

    And for GoatCheez, just to make <FONT color=#ffffff>troll</FONT> you <FONT color=#ffffff>troll</FONT> happy <FONT color=#ffffff>troll</FONT>......

    Wally was an Enterprise Micro Funge developer who was called in to fix a problem with a program that a previous 'expert' had left. Occasionally, when the program encountered a section where it was supposed to log some information, it would hang and consume all the system resources.

    After a few hours of searching the code, Wally found the section that was failing. It was the part that was supposed to print out a null terminated string followed by a new line character......

    <FONT face="Courier New"> v,<                        
    <>:?>                     
    ,$@>a</FONT>

  • rob_squared (unregistered) in reply to cronthenoob
    cronthenoob:
    This reminds me of something that happened to me in college!

    It was my final semester and my final project was coming along very nicely.  The guy next to me was creating a sort of email type thing,  I don't exactly remember. 

    Well he didn't secure it.  Some spammers got ahold of the script and sent out mass amounts of SPAM email.  The ISP shut the web server down.  After a few weeks, the server was finally online again.  The guy never secured his code, so of course it went down again.  Eventually my teacher decided to take the server and move it into the classroom where we could at least work on our projects locally. 

    We moved the server in the classroom, hooked it up, turned it on, and nothing happened.  All the data was corrupted somehow, everybody lost everything they ever created for the past 4 years.  I don't remember but I think we were able to recover some of our work.

    in the end, the school payed me back my tuition.   But I still have to live with the fact that I wasted 4 years of my life because of some idiot who doesnt know how to secure a PHP mailer.


    Oh. My. God.

    I would have demanded the school also find that man/woman and assassinate them for me, so that I wouldn't have to go to prison to see them die.

    That pisses me off just hearing it, and it doesn't effect me in any way!
  • (cs) in reply to brian

    Anonymous:
    Suppose that netops' usually generous bonuses were dependent on the company making their numbers -- which this fiasco prevents. Guess they can console themselves with the fact that 100% of the blame is on the PM... Sometimes a little proactivity pays off.

    Wrong... the blame falls on all participants.  All shared in a responsibilty that they should have known better. It's a best practice WTF.

  • (cs)
    Anonymous:
    Some Idiot:

    <FONT face="Courier New"> v,<                        
    <>:?>                     
    ,$@>a</FONT>



    This would be wonderful, if I only knew WTF you were trying to type. Or is that the point?

    captcha=genius !not

    The code is written in Enterprise Micro Funge which, while it has no published specs, is a fungoid.

    The code in question was anonamised. The original code was in Funge-98. 

  • (cs) in reply to John Bigboote
    John Bigboote:
    Anonymous:


    I disagree. Why should they look at this server before wiping it. It's a temp server which (I assume) to their knowledge (and they're the ones in charge) no one is using. Why bother looking at it? My company doesn't have the resources to look at the files just for the heck of it. Sure in this case it would have saved a ton of time/money, but if it wasn't documented that there is something running on that server, and if the PM was willing to let all critical documents go unbacked up, then 100% of the responsibility is on the PM.

    --doc0tis


    I'm inclined to agree. It's mentioned as a "dev temp" server. Don't know the specific application of this phrase to their company, but it sounds an awful lot like what we refer to as the sandbox server. Nothing of any consequence should go on it, and it's understood that it can get wiped at any time with no warning whatsoever.


    What reason would a company have to ever make such a machine accessable to users?    It's a business right? Even sandbox work is work, and costs time/money. I can't think of any situation where a machine can be safely nuked without everyone with access to it being notified.   That's why you see scratch spaces that say "your file may be deleted anytime after X days or even X hours. A scratch server where your files may be deleted 30 seconds after creation isn't useful, not matter how trivial it is to recopy the data.

    If there was no documentation of something running on the server, then no one should have had access to it. That is a first order sysadmin/operations WTF.

  • Saemus (unregistered) in reply to cronthenoob

    cronthenoob:
    in the end, the school payed me back my tuition.   But I still have to live with the fact that I wasted 4 years of my life because of some idiot who doesnt know how to secure a PHP mailer.

    I would have fought through my teeth for the peice of paper at the end.  Worst case scenario, I would have ask for a refund for the final year project, and repeat it the next year.

    Maybe Australian Universities/Colleges are different, but our courses were all very disconnected from each other.  i.e  Our java units between semesters had nothing to do with each other.  To suggest that someone else's stuff up means you have to start again is down right madness!

  • BP (unregistered)

    Certainly not the best move using "unsanctioned" software for everything but I have had a systems department wipe a development box without asking.

    Definitly negative marks for the EPM, but I'd be knocking on Systems door to explain this one.

  • BP (unregistered) in reply to BP
    Anonymous:
    Certainly not the best move using "unsanctioned" software for everything but I have had a systems department wipe a development box *without asking*.

    Definitly negative marks for the EPM, but I'd be knocking on Systems door to explain this one.



    meant to say never had a box wiped... time for bed...

    hmm... funny... the captcha is "bedtime"... I guess the universe really means it this time.

Leave a comment on “Back That Thang Up”

Log In or post as a guest

Replying to comment #:

« Return to Article