- 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
So, did Steve document his work, and save it properly?
Admin
I have a guess. . .No? :)
Admin
This comment is no longer available.
Admin
Why bother, they have such a lovely streak going.
Admin
I guess their standard makefile includes
install:
mv $(EXECUTEABLE) $(INSTALLPATH)
rm -rf $(SOURCEPATH)
Admin
...the source code for that component is no longer available.
sigh Subversion and CVS have been out for a long time, are cross-platform, and they're free. Why do people treat their source code like something written on scratch paper?
Admin
Actually, Alex anonymized quite a bit. The 'system' was a series of daisy chained processes on different platforms, and the source for a critical COM service was gone. The 'hack' was getting them to track back to the systems that used the COM object either by checking documentation (which, as you might guess, was a joke), using a packet sniffer to see where inbound connections came from (and then track those to the calling apps), or just shutting the thing down and seeing what broke.
After several months of political bickering, security decided we couldn't use the sniffer, so we just wound up shutting down the COM process, and in 2 hours, had the list of everything that stopped working. We then just went to the developers of each system, had them search for all calls to the source-less COM object, and figured out the specs for what it was supposed to do like that.
It took 2 days to write a new COM object.
Yes, the new one was documented, and no, they didn't check it into source control (it wasn't my project - I was just helping them out of a jam, so I couldn't do anything about it - except laugh)
Admin
So what does this 'Lead' (pb no pun intended) guy actually do all day? Wouldn't he want to document some of the work his 'team' is doing?
Admin
I like Steve's attitude, though. He can't be beaten down. That is the hallmark of a good Enterprise-y Developer.
Admin
The 'lead' was the manager of the manager who let the rogue developer keep his source on his C: drive without putting it in source control (Alex left out the part that the PC, upon sufficiently aging, was re-blasted and given to a secretary)
Admin
Mmmm.... Decorator Pattern. For some reason, I find the decorator pattern the most aesthetically pleasing on a theoretical level. But almost every implementation I see feels like a hack or an exploitation of a security vulnerability.... (good things like ScrollPane, BufferedOutputStream, Surge Protector seem like the minority). Most of them feel like this workaround or the infamous ATM card-scammer.
Admin
CVS is a 24hour convenience store, not some kind of magical happy place where people can easily place their sourcecode and then forget about it until the need arises again.
I dont know why people keep recommending that place to me, they only have the deodorant i like, not all the useful sourcecode of my past compiled prjects.
Admin
And even if he bothered, someone will probably manage to lose it in some interesting way anyways..
Admin
The real WTF is a business running software where they don't have a clue what it does. Unfortunately this is all to common. I once was tasked with rewriting an "auditing" accounting package for a major defense contractor that was used to report to the DoD the financials for contracts this division was working on. There was no documentation, no source code version control, and no one knew exactly where the information was supposed to come from, or what was showing up on the reports. And the code was stored all over the company's WAN connected by a series of network linked lists. Fortunately the code was an interpreted language.
Worst project that I ever worked on, and I'll camp in the unemployment line before I'll ever do one like it again.
Admin
So... the recycled hard drive that formerly contained the source code is still in the company's posession. Not worth the trouble now, but I might have suggested you send the disk to a forensic data recovery shop. The trouble tag on the disk might give a few of the workers there something to chuckle about. "Used to contain the only copy of source code to mission critical component. Was deliberately reimaged and given to a secretary."
Admin
That's funny, our CVS has an entire aisle of source code. Opposite the milk.
Admin
It's entirely possible, I left the company a few months later, but to my knowledge, the souce still lived solely on someone's PC.
captcha = 'giggity' - um, what?
Admin
Hey, at least it wasn't in the lockbox...
But, if it was in the black box, shouldn't the information be retrievable even if it was engulfed by flames and then submerged in water?
Admin
Wow... source code is vanishing as well as all documentation.
That's an X-File case!
Source managment solutions were invented for that I think.
Admin
Actually, the security folks used to use some norton-esque utility to really clobber the disks, to make them unrecoverable. Dunno if recovery would have worked - would have been itneresting to see.
What I found fascinating is that they went to all that trouble to make sure disks were completely zero'd when files were deleted, but didn't force developers to use source control, forget about documentation *laughs*
Admin
It's called, Job Security. =)
Admin
This reply to your comment is also no longer available.
Admin
That's why I love my CVS so much. They keep the source code at the other end of the liqour aisle. So while it always takes me a while to check out some source, by the time I'm finished, I don't really care anymore anyway.
Admin
I'm not sure if calling this a "blacker box" or a "black hole" would be funnier, so I give them both out for the world to share.
Unfortunately, while you may share this joke, you may not modify it. I'm afraid I've lost the source code for this post.
Admin
So at the bottom of the main post is this link that says "report abuse." And I was soooo tempted to click it, because this story is a pretty good example of abuse...
Admin
Look you wishy washy liberals - sooner or later ya gotta take a stand,.
Either it is Black Boxy or it is not Black Boxy.
If it IS Black Boxy then you are not supposed to ever have access to the insides ever again. Shouldn't even be able to call it and look at the output. Or use it.
In fact, there shouldn't even be any output.
Or input, for that matter.
How can you expect any security if you're allowed to input and output stuff?
And anybody who violates the CLEAR policy regarding non-documentation, non-source code and non-repository will be arrested and turned over to Homeland Security as an example.
Do you love your country or not?
Admin
Just imagine if he HAD put his work into source control with documentation. It would have been quite a
FRIST!!
in that workplace.
Admin
Input is OK. Black holes have plenty, our black box can stand a little (with the appropriate " >> /dev/null" somewhere inside). Some output is OK too, as long as it's completely random (a la Hawking radiation) and bears no relationship to the input whatsoever. (A DHS org chart would suffice.)
Just to push the analogy a little further, the matter (developers) spinning around the black box may heat up to millions of degrees and create a lot of turbulence before getting sucked in.
Admin
From the movie 'This is Spinal Tap'
Admin
I've had to reverse-engineer on several occasions.
But fortunately, those weren't programmed DLLs, but a company logo and a set of business cards -- in both cases the master had disappeared or had never existed.
Good fun, though. :)
This depends entirely on wether or not the Flame engulfing and Water submerging are, in fact, metaphorical.
There is a good chance there is some kind of expression in the programming world that uses the phrases Flame, Engulf and Sumberge.
Admin
Actually, this was the best part of the WTF. So, like, only people they DON'T know about can use a network sniffer?
I might mumble something about security being there to manage risks for the company, and some business system not working is a pretty big risk, but, hey, I won't.
Captcha = craptastic
Admin
What's this CVS everyone keeps talking about? The only thing I know of is the Cadillac CTS. Am I in the right forum? Where can I find the documentation so I can figure if I am supposed to be here or not.
Maybe I'll just ask the 8-ball.
"All signs point to yes!"
Admin
so you reverse engineered a logo???? did you place the card on a wood grain table and snap a picture of it?
captcha = wtf
Admin
Welcome to the real world. Some places mean it when they include "tolerant of ambiguity" in their positions' job skills requirements.
Admin
If the Black Box has no input and no output, then the source code is neither available nor unavailable, but in an indeterminate third state.
Admin
How 'bout a superposition of all possible code states, visible directly only to those who fall into the singularity?
That makes testing harder, of course, but sounds like a good fate for anyone who criticizes your code...
Admin
Wiggum: Whoa, whoa, slow down, egghead!
Frink: But, suppose we extend the state beyond the two dimensions of our universe, along the hypothetical Z-axis there. (gasp) This forms a third state known as indeterminate or a Frinkahedron, in honour of its discoverer.
Admin
<FONT color=#ffffff size=6>MAYBE</FONT>
<FONT color=#ffffff size=6>THEY</FONT>
<FONT color=#ffffff size=6>USED</FONT>
<FONT color=#ffffff size=6>INVISIBLE</FONT>
<FONT color=#ffffff size=6>INK</FONT>
<FONT color=#ffffff size=6>IN</FONT>
<FONT color=#ffffff size=6>THEIR</FONT>
<FONT color=#ffffff size=6>DOCUMENTATION?
;-P</FONT>
Admin
No, that was after he redrew it and printed off the new version so he could display the work on the company website
Admin
I guess that's why CVS is still in business - they have issues keeping current with the milk bills (to the tune of hundreds of thousands). Why those cows keeps giving up their milk for free (or deferred payment), one will never know. :)
Admin
Because it is! You may have read about us on this site before. We do our programming on paper. Same with debugging and testing. (We choose to run a legal operation but we don't have the money or resources for computers, platforms, and software).
Admin
Admin
And they didn't back up the drive.
The developer probably has a copy of the source and documentation at home. Because a real developer takes his source code home to see if it will work on the next generation of development tools.
Admin
CVS is stands for cyclic vomiting syndrome. Remember, google is your friend.
Admin
I took a moment to think about these terms and how they might be used in programming. Submerge sounds like a good name for something that creates closures, so here's a currying function:
(defun submerge (function &rest args)
(lambda (&rest more-args)
(apply function (append args more-args))))
I'll be sure to post them when I think of what flame and engulf should do. Engulf sounds like it should have something to do with method combination.
Admin
And whereas it wasn't worth the trouble to avoid losing several thousand Euros/dollars worth of source code, I guess that taking a few CD-R's home was a dismissible offence?
Admin
Or from Hitchhiker's Guide to the Galaxy:
This post not [pi]-approved.
Admin
<font color="#ffffff">
Good thing I have my decoder ring on.</font>
Admin
Whoops--I see someone beat me to the HHGTTG quote.
Admin
You really shouldn't laugh... I just recently had to do the same thing. The employee that created the logo left the company years ago, and the only clean digital version of the logo was in the possession of the outside printing company. When they went belly up and closed up shop, nobody thought to get it from them. When I came on board last year to get them out of the stone age, and redesign the old website, I asked them for a copy and they didn't have it. I scanned a piece of letter head and recreated it from there.
CAPTCHA: awesomeness