- 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
Well, since COBOL was designed by a woman, what else can you expect. http://en.wikipedia.org/wiki/Grace_Hopper
Do not take personal.
Admin
The first clue than I forgot some minor punctuation in my instruction file for a statistics package was when the main frame operator handed me a printout 13 inches thick. --RA
Admin
Having worked for very large companies, on very large projects, I find the dollar figure comparison quite funny. Which is worse, a mistake that costs $15 million on a $20 billion dollar project, or a mistake that costs $100 on a $10,000 project?
Yeah, the 100 bucks is worse in terms of wasted project resources....
It's all relative, and all the cost of doing business.... -Me
Admin
Admin
We had an operator who wanted to purge jobs 1861-1862. He types in 181-1862. Then he tries to stop the CPU like that would help.
Of course it wiped every report. I and about 10 others spent the next day getting all the reports purged recreated. I spent the evening explaining to the senior operator how to use the TSO console to purge only the two jobs.
The worst part was that they could have stayed there as they were just S0c7 dumps.
Admin
Q: How do you make good decisions? A: Through experience.
Q: How do you get experience? A: By making bad decisions.
Admin
JCL and bugs in trivial programs.
The way to delete files in jcl was to run a program with a data file that was to be deleted afterwards. Something like //RUN IEFBR15 //DD <some stuff> DISPOSE=DELETE
(my JCL is seriously rusty, so don't criticize. I haven't used it in around 25 years)
If you just wanted to delete a file, there was a null program, IEFBR15, which did nothing but return. However, it always returned a failure status because it never cleared the status code.
So, if you deleted a file and then checked the status, it failed. Leave it to IBM to put a bug in a trivial program.
And, as has been pointed out, the console commands were obscure, with commas where you'd expect = and other idiotsyncracies (misspelling deliberate) And you had to request the console to be unlocked, but the computer (as has been pointed out) could interrupt your typing anytime; what it had to say was soooo important.
As for the big error, I once was copying a DECtape (block-structured wide magnetic tape) that contained our source code. I carefully set the write protect switch, and did the copy. Oops - I got the source and destination drives confused, and wiped out the (only) source tape. Fortunately, we had a directory printout, and the copy only erased the directory. I spent the next few hours with an octal editor re-creating it. And then made several copies.
Captcha: craaazy (need I say more?)
Admin
This happened to me earlier this year while working at my high school performing arts center. I was diddling (as we like to call tinkering with things we shouldnt) with the light board and accidentally did something that caused the board to wipe its patch (the data that tells it what channel controls what light). I didnt realize exactly what happened and I scrambled through the Reset Options until I found "Reset Patch..." CLICK " and Show". The crucial "and show" deleted basically every thing we had on the board. The next 3 days worth of shows to be exact. That was the day I learned about the art of backups and still back up that damn board every time I touch it.
Admin
Someone at my office said exactly the same thing, and he had a sign on his desk reading "Where-clause Engineer" :D (Sadly, he escaped the sinking ship...)
Admin
One day he accidentally let a bunch of these guys get out of hand while running as root. Killing them turned out to be a problem, since the machine was now bogged down and new copies would spring up immediately. I was shoulder-surfing him at the time, and suggested that he 'nice' them all to +20 before trying to kill them. It worked; enough CPU was freed up that the 'kill' command was able to nail them all.
Schwab
Admin
That's why I'm always sure to use systems that are too slow to do much damage before I have a chance to hit CTRL-C. Easy fix, really.
Admin
It´s embarrasing and hard to remember, but several years ago I deleted all my boss`s emails from a fuck*g Microsoft Exchange Server while trying to make a backup (Duh?), I spent almost a month to recover less than the 80% of the email (2GB, I wonder why he kept the mails on the server instead of saving it on his machine like everyone else). When I read histories like this, I can feel the blood pumping to my head and the cold-sweat from horror movies back again.
PD: Sorry for my poor english.
Admin
We had core dumps happen often enough that we needed to automatically delete them or we'd run out of space.
One day our VP of engineering decided that the best name for the directory full of the essential files for his project was "core". Several days later, all his sources were gone. Oops.
Admin
Working with Rod today, he actually wrote that article word by word. you will find it in his blog (which I cannot find at the moment).
Admin
Yep, I had this once (when I was juuust given root on our student dorms main linux router) when I wanted to edit root's crontab which was full of important things.
I wanted to type crontab -e, but why hit 'e' if the nice and shiny 'r' is so close, which does not mean "edit" but "remove". Yep, whole crontab was gone, and I had to reconstruct it quickly from short-term memory.
It worked, luckily, and everybody smiled and knew this would never happen to me ever again :-)
Admin
Once worked on an electronic greeting cards system for a major website. Was still learning SQL at the time, and (for want of a WHERE clause) accidentally deleted all of the ecards on the production system. No backups. Oops.
Admin
Admin
Only if the '*' sorted before any other files in the expansion list. (I start all my files with an '@' sign, don't you???)
This is why I always use tab-completetion on file names arguments (it auto-escapes them).
Admin
Wow, you seemed to have found the one thing on the planet that does not have a Wikipedia entry! Unless it's that MUMPS dialect called "Magic" (but that deosn't seem to be the case based on the URL you provided)...
Admin
Allow me to share my first terminal disaster granted this I was 13 at the time and the only thing I lost was Test Drive (version 1) of my own IBM PC XT
put a floppy disk in
c:> FORMAT
Press any Key to begin fromatting C:
'oh I don't want to do that,' mutters to self.
[ESC]
...
some time later, 'Dad I think we need to reinstall DOS'
Admin
Actually, in terms of power, it's more like 1 of them bundled up into a single unit. and even then you'd have to pull most of the memory out.
Admin
Or caused a global recall. Stupid = instead of |=.
Admin
Wait a minute, I'm no UNIX/Linux guru, but wouldn't 733 only forbid the non-owners read-access to your files? Everyone would still be able to overwrite/delete and execute them. Or am I missing something?
Admin
A long time ago in a mainframe shop far far away, I was having ABENDs on an interactive program. One of the old farts showed me how to do a "SYSABEND OUT=A" or whatever the syntax was so that core dumps would go to the printer. What he didn't tell me was how to turn it off again. So I got my ABEND, went to the print pickup point to pick up my core dump, and then went back to my desk to try some things out. But I must have done 10 or 15 more ABENDs, and the next time I went to the print pickup, our group's box was overflowing with all these core dumps. And every printout came out of our group's budget, along with disk space and cpu time. My boss wasn't a happy camper when the next week's bill came, since I'd used several week's worth of printing on that one day.
Admin
or:
#cd #rm -rf *
Which is what one of my testers did a few years ago. First he blamed my program for failing (when it couldn't find files it was looking for), then later he quietly asked me why the system wouldn't boot.
Remember Norton Navigator (Pre-windows)? At my first job another new guy was told to clean up a hard drive to free up some space. Norton Navigator allowed him to remove ".." from the C:\ directory. Never did figure out exactly what it did to the root table, but it wasn't pretty. Re-format time and a big note not to do that again.
Admin
this is why whenever I'm testing anything on the production system I always write this in between my statements.
begin transaction
stuff i want to test
rollback transaction
Admin
Admin
WTF?? The past tense of "to grind" is "ground".
Admin
or maybe some type of transaction control that allowed you to rollback... hmm
Admin
DOS FAT drives do not (at least, did not) have . or .. in the root, only in subdirectories.
Admin
The first three letters, "IEF" indicates that it's an OS utility program.
The 'branch' command in 360 Assembler is 'B'.
The standard calling convention on the IBM 360 series of mainframes stores the return address in register 14 (aka 'r14').
Put it all together and you've got 'IEFBR14'.
Admin
Admin
Easy enough to create an entry for it...
If you are ever asked to code in Magic,
run.... and don't look back
Admin
I like Bramster's suggestion of The Daily Oh Sh!t.
Admin
Reminds me of a quote from somewhere, "Why would I fire him? I just spent $10,000 training him."
Admin
One time this person was coding in SQL and wanted to select all employees from a single table. You can imagine my disbelief at the following SQL request:
/* Oh, unholy demons of HELL, / SELECT -- the unforgiven seeds and name them each as EMPLOYEE_ID, FIRST_NAME, LAST_NAME, TITLE FROM -- the darkest depths of eternal, uhh, darkness within the CORPORATION WHERE -- their souls have been tainted -- with the blood of the undead with TITLE LIKE '%MANAGER%' / Bring forth thy followers and line them within rows and columns */ ;
Points for the output of such a query.
Admin
That sums it up nicely; also adheres to the KISS principle, so I'm for it!
Admin
I know, which made it strange that Norton offered the option, and made the result rather ambiguous as to what Norton thought it was doing in that case.
Captcha: "dubya" Time to go home and get drunk for the big speech tonight.
Admin
The real WFT here is that each mainframe message wiped any command he was typing to correct the error -- so the wtf is in the idiotic design of the system. About the same level of thinking as the infamous "Error: No keyboard; press any key to continue" BIOS message.
Admin
Reminds me of a quote from somewhere, "Why would I fire him? I just spent $10,000 training him."[/quote]
It's generally attributed to Tom Watson, head of IBM, and it was actually $10,000,000
Admin
Except that message actually makes sense- you can wiggle the connection (or plug a keyboard in if it's missing entirely) and then press F1. Much better than letting Windows (or Linux, for that matter) boot without a PS2 keyboard. Back in the old days (think Win 3.1) the system would often lock up if the keyboard was (un)plugged after the BIOS booted the OS.
Admin
Tweedle dee/tweedle dum attack
Admin
yep....
744 would be read only to the group and world with read/write/execute for the user.
I myself prefer in order 740, 770, or 774.
Admin
Ah, mainframes. I am just learning on a System/390, no programming yet ... but I do know that:
It looks like I will have to program on a 390 sometime in the near future. And this is exactly the kind of stuff I fear doing...
My worst "Sorcerer's Apprentice" experience has been one similar to the one described earlier, just uglier:
for (i = 0; i <= 1024; i++) { if (fork() == 0) (child code) else (parent code) }
This code was supposed to spawn 1024 children. Now, you must see where the WTF was ... and why my old Pentium1 croaked shortly after...
Admin
Actually, the Sorcerer should have told him how to recovery from those disastious situation before he left.
For one thing, he is retiring so he wouldn't normally be "standby" want something went wrong. For the others, people tend to do insane try-and-error hoping to recover the damage if they have no idea how to properly fix it, and do more damage...
Admin
Ahh - JCL - I once took a 3 day course in JCL (it was the dummies introduction course but the company thought it was all we needed!). I ended up with a set of 'magic' cards into which I knew where to place my program and where to place my data cards.
For the next year, all my programs had the same name and they all had to read their data from the cards and print out the result.
I really had no idea what the "//SYSIN DD *" (hey! I can remember that bit) actually did but at least I got my output!
Admin
It depends. Interestingly enough 733 on a directory can help with the accidental rm -r in the wrong place as nonroot (as long as you don't own the directory). So does not setting write privileges, of course, or setting the sticky bit if it has to globally writable (like /tmp). But 733 works because a directory without read permission can still be used, but not listed (ie: ls thedir gives Permission denied but you can cd into it and use any file you know happens to be there just fine - using a file requires exec privs on the directory). So chmod a-r on important directories like /bin, /sbin, source directory for multitrillion dollar project on the main repository server, etc, and rm -r stops dead (at least for that directory) because the directory can't be listed (and rm -r can't remove the dir itself until it's empty, and it isn't going to start guessing filenames either). Of course, this doesn't stop root, and it breaks tab completion because the shell can't list the directory either (possible solutions involving linux capabilities (if those can even be effectively used atm) and sudo or a setuid(NOT root) rm might allow normal use but stop rm -r dead in the same way).
Of course, this might be system-dependant, but I know at least linux does it that way. I don't have any other unixish system to try it on, but I figure it's probably a sensible thing to assume (as otherwise, +r would be useless and turning it off is harmless, since +x or +w takes care of everything else that you do with a directory).
Of course he might have meant 744. Which still doesn't save the owner from the ocassional typo.
And on the subject of accidental oopses, I've posted this once before but should mention the one time I wanted to rm -r a subdirectory named bin, via rm -r ./bin, and guess which character I forgot to type (or tried to type but kbd didn't register and I didn't notice)? Yup, the dot.
Admin
Why he just didn't phone up the sorcerer to check back with him ? They had phones in those day's .... (not mobiles, though)
No....he had to do it alone.
Admin
I would think it vice versa: 20 - 30 years ago the mindset was such that mistakes (espsecially with computers) were expected to happen sooner or later - you did something like that and you have gotten off with a (severe) reprimand. Today, everybody needs somebody to be accountable (read: to be blamed) - this guy would have been terminated the next day.
Admin
Perhaps because Exchange is a corporate email and collaboration system, and not an ISP's POP3 server. That being said, 2 GB is out of hand.