The Worst Development Job You've Ever Had? 1078
manavendra asks: "I'm currently working for a solution provider for telcos, and as part of product migration the entire API has to be 'internationalized'. Owing to a legacy architecture, most (if not all) application logic is still embedded in PL/SQL stored packages. My job: find hard coded strings, and replace with calls to the globalization API.
Yes there is a script written to handle most tasks, but its quite primitive (not to mention fears of automating 'too much'). Boredom is at all time high. Have tried all means of whittling away the time, and hence this question to other Slashdot users: What's the worst ever job you had to do in the name of 'software development' (or as a software developer)?"
In the name of "software development" (Score:4, Funny)
Re:In the name of "software development" (Score:5, Funny)
quote from a former boss:
"while it may be faster than dlt tapes, 're-typing' is not a valid recovery strategy."
Re:In the name of "software development" (Score:5, Interesting)
Anyway, I was the only one on the team that wasn't there when the software was written. Every damn function had at least one parameter that was a poorly named and undocumented void *. In fact, there was NO documentation of a single function parameter in the entire 100million+ lines of code that was our product source tree.
In addition to this, we had no Internet access on our desks. So when I wanted to look up docs for the hardware or OS I was working on so I could interface with the appropriate IOCTL's and such, I had to wait in line at the lone Internet terminal that was shared by 40+ developers, break it up into 10MB chunks if it was big, and email it to myself through our internal corporate mail system and pray it didn't get caught by the virus/spam filters.
5 months of this job nearly made me cry. Thank God I found another in such short order.
Re:In the name of "software development" (Score:5, Interesting)
Comment removed (Score:4, Funny)
Re:In the name of "software development" (Score:5, Interesting)
In the name of showing something that worked (this was students, and we needed to track parent contacts) I showed them something simple, flexible, and in keeping with how you do a database.
The customer, unable to differentiate between paper and a screen, required me to show spaces for three parent records for every student, irrespective of the actual number of parents.
No thought given to what was to happen if mom and dad divorced and both remarried; on step-parent would presumably be unviewable.
I argued theoretically, that the interface knew way too much of the data, and this was a Bad Thing
I argued practically, that I had a working implementation, and going back and lobotomizing it in the name of an ignorant requirement wasn't in the financial interest of the customer now, or when the reality set in and they had to go back and un-hack the tasteless crap I would have to do
I argued pragmatically, that what was already there was superior in functionality to what the customer thought they wanted, and giving it to them there way would be a regression.
Boy, did I waste my time. Didn't last much longer on that project, and it was only worth it in that it showed me just how hard good customers are to find.
Finex Vent-ex.
Re:In the name of "software development" (Score:4, Interesting)
Re:In the name of "software development" (Score:5, Funny)
Couple of years ago I (a lowly coder scrub) told a director (over a couple of hundred people) that the design that some ad firm made up wouldn't work. We're talking everything with rounded corners, overlapping, with dropshadows everywhere and some weird ass font for all the text. And it was all "critical" to have. On any browser. On any platform. Over a 28K modem.
Now, I'm a hell of an HTML hack. I've committed more cross-browser rendering engine abuse than is legal. But what she wanted was flat out impossible in HTML (in Flash, sure...).
After being shot down multiple times in a big meeting, I'd had it. I just said "Look, it DOESN'T WORK THAT WAY. If your designers can figure out how, I'd be very impressed". So she gives me an "I'll show you" look and tells the designers to produce an HTML prototype.
A week later the revised design (sans impossible stuff) was on my desk. Bitch
Re:In the name of "software development" (Score:5, Interesting)
I'm currently on a not-so-big-project that has gotten totally out of hand. It's a 12 table informix database containing a philosophical bibliography of approx 75K records.This bugger has to be exported to something readable by a printing company to create books out of it. So far so good.
however, this is a academic project and those f#*n academics decided they needed SGML. So they export the sucker to SGML. Now you gotta know that the DB itself (which costed 100K to make by a specialised fucked up DB company X1) runs on a sparc10 with only 64MB Ram. So generating the SGML equals a 20hour trip in swapland since the thing is stuffed up to the neck with crossreferences.
But that's not all. Once in SGML, it needs to be reconverted to another XML format, because after 2 years they decided to drop the book and go for a CD only. The company X2 that makes the CD only accepts a very specific XML format (you can kill me if I know why !) they hired a 3rd company X3 to do this conversion. Turns out this 3rd company is just a lonesome cowboy with a perl tumor. He writes totally unreadable perl scripts that the IOCCC peeps would be proud of. Now hell breaks lose :
company X2 goes bankrupt. No CD company anymore. So they hire me (my dad is an academic at the same univ) to make the CD from the XML since they managed to get hold of the sourcecode for the XML-to-CD-runtime. So just recreateing the XML should be enough to update the CD (big mistake !)
Company X3 (the cowboy) stops delevopment, gets addicted to some dope and moves to africa for a 3 year safari. So no SGML-XML conversion anymore
Company X1 who generates the SGML is so fed up with the trouble they refuse to work any further on the project.
Anyway. I figured out how to do DBexport from the informix. I rewrote the SGML - XML shit to do straight conversion to the internal CD-runtime format, which converts the whole shebang in less than 2 minutes. But now I'm stuck with a runtime that's buggy and I face the task of rewriting that sucker too...
sigh
Hey, don't knock it... (Score:5, Interesting)
So I says, "Boss-man," I says, "where's the product database? Show me the data structure and I'll have that stuff Web-searchable in a few days."
Boss-man says, "We don't have a product database."
"...All right, where do I get the product data? Is it on CD? Do I have to get it from the manufacturers?"
Boss-man walks off and returns in a few moments with a huge stack of manufacturers' paper catalogs, and the unwelcome news that we're "just" a distributor; we don't get product data in any usable form. Being short-staffed, I also end up being the guy charged with the task of typing in product data from the catalogs to a database. For obvious cost-saving reasons, this data is packed sardine-like into the catalogs in as small a font as they can reasonably get away with, so entering a page of the stuff would take f-o-r-e-v-e-r.
Now remember, I hired in to design a Web site for ten bucks an hour, expected to take a couple weeks at the very most...at this point I'm still the cheapest labor in the building, so this is not such a gross misapplication of a resource (me) as it seems. So I did this for, oh, a couple hours or so, 'til quitting time. Enter one line of data from the catalog tables, consult another set of tables at the back of the catalog to determine the remaining data (thermal, etc.), check for typos, enter the next line...
Boring, boring, boring. Not to mention horribly inefficient. Not being the type who likes to do more work than necessary (ahem, I mean, being the type who likes to maximize efficiency), I showed up the next day with my flatbed scanner and some OCR program. A few test scans of catalog pages to determine the format the OCR software spits out, a throwaway Perl script to convert this to comma-delimited and look up stuff from the thermal/etc. tables, and my job suddenly became a lot more fun, while also increasing my data rate roughly 2000%. It went something like this.
1) Prop feet on desk.
2) Rip page from catalog, stuff into scanner, press scan.
3) Nap and/or surf the net while waiting for scanner (remember, I already set up a Linux box for the web server, so I can surf the 'net from an official-looking server-admin-doing-important-server-admin-stuff telnet window. Lynx = awsome.)
4) Optional step. Sip coffee, eat donut...
5) Repeat steps 2-3 whenever I hear the scanner buzz its way back to home position.
6) Run perl script once there's a whole s***load of OCR data to crunch.
I never imagined a data-entry task could suck so little, but there I was. (Of course, now I'm a hardware/firmware hacker, which is way more cool
Re:In the name of "software development" (Score:5, Interesting)
In my very first job, I did a rookie mistake of asking for a favour from my boss's boss, instead of asking from my boss.
Result I was assigned a job to stare at a monitor in a vacant room , and note down any messages that scroll on it. (No Seriously).
Withing 2 days I got so fustrated, I started writing my own netowrk code, to fetch the data from message log and send them directly to a printer
I learnt TCP/IP , socket programming, shell scripts , unix internals, IPC (shmem, pipes etc), thread programming) in 6 months.
By the time my boss was no longer angry with me and wanted me to work on some development, I was way ahead in terms of productivity as compared to my other colleagues.
Good News, Bad News, Who Can Say? (Score:5, Interesting)
Subsistance farmer. Prize possession: a horse, that pulls the plow. Horse escapes.
Farmer faces starvation. Neighbors console. He says:
"Good news, bad news, who can say?" (GNBNWCS)
Horse returns, drunk(1), several other wild horses in tow.
Neighbors ecstatic. This is the ancient Chinese equivalent of winning the lottery. He says:
GNBNWCS
Farmer's son out breaking one of the FNG ponies. Thrown, compound fracture, now looks like Yassir Arafat(2).
Neighbors console. He says:
GNBNWCS
The king comes through the village, gathering young men to go fight. Farmer's son is convalescing, so he stays. The rest go. (The story relates nothing of the causa belli, but it may have had something to do with evening a score with another ruler over an assasination attempt on the king's father).
At any rate, the king is defeated in battle, and the villiage sons are wiped out, except the farmer's.
GNBNWCS
(1) OK, not in the original, but this is
(2) This story favors the Artistic License over the GPL
Perl for Domain Name searcher. (Score:5, Funny)
Turn batch perl scripts for searching domain names for sale into a live cgi.
The "server" was a P133 running bsd. Once I got it to run, it would take 15-20 minutes
to generate the output. The web page would periodically reload once a minute. The Boss
had a cable modem set-up where after a certain number of reloads, they would just cache the
page. He never actually got to see it work.
THe next day another guy just loaded all the possible names in a database on a fast machine
with gigs of ram. Response time? Sub-second.
I still got paid, though (much to the chagrin of the owner).
Re:Perl for Domain Name searcher. (Score:5, Interesting)
I on the other hand, many years ago, working for a telecom, was working on an application, in coldfusion, to automate some billing functions... only to find out that there was a whole other development effort doing the same exact thing! Yeah, no one talked to anyone at this company (which is probably why its just a sad pathetic footnote in the world of telecom).
That was the worse, being half-way through the project and someone coming along and saying "uh yeah, we have another team working on this." My manager, turns out, was making a power play. Nice being a pawn
Re:Perl for Domain Name searcher. (Score:4, Funny)
Re:Perl for Domain Name searcher. (Score:5, Funny)
Do that for 5 months straight and still have absolutely NO IDEA what the hell you're working on. Some of them had been at it for years. The bosses would come in, give us our next assignment, and leave with the old one. That's all we saw of our bosses.
I found out later what the code was for (combined to become the lamest of all the great lamnesses) but you try finding a programming job later and answering the question "So what kind of programs did you write" and answer with all honesty "I have know Idea"
tshirt (Score:4, Funny)
worst. job. ever.
Re:tshirt (Score:5, Funny)
Memories...ahhh.. memories. (Score:5, Interesting)
~12-13 years ago I was working at a place developing software for the trucking industry. One day I came to work and the door to our offices was locked (I was usually the first one in). I went to the landlord saying "The door to our offices is locked." He held up a bounced cheque and said "I know."
Fortunately I had some cash saved so I lived for a while but then I got a phone call many months later from Revenue Canada (like the U.S.' IRS) saying I hadn't paid any income tax on my income for that year. "Uhh.. I have my paystubs showing that it was deducted..." Turns out the owner was deducting tax, charging taxes, etc and not remitting. Faxed in copies which saved my butt.
That isn't the worst development job I've had but it was the one that left the worst taste in my mouth.
Re:Memories...ahhh.. memories ... The worst (Score:5, Interesting)
After eight months of joy and fulfillment (the project was really good and enjoyable) I was reassigned to take over a project started three months before my arrival (it was 11 months old when I took care of it) because the Project Manager had been fired. The project had to be delivered in two or three months and was the bigest pile of sh*t I have ever seen: harcoded strings, copied and pasted all over the place, used three different database servers (Oracle, MS SQL Server, Postgres) depending on the mood of the developer, used a client/server architecture when it was not needed and created a lot of innecesary APIs (it had a complete implementation of a SOAP-like protocol, implemented for communications, instead of using SOAP or Axis). It was about one million lines long and 40% done. Those three or four months where living hell trying to decode what the heck where the developers thinking (BTW, the project did not have any single piece of comment).
At the end we delivered the system with one month of delay, but the client was happy and to ease the pain I was promoted after setting it up on production
Software? (Score:4, Funny)
Re:Software? (Score:5, Funny)
Of course, everyone's had a job in your mom.
I Can't Find (Score:4, Funny)
Y2K Conversions (Score:5, Interesting)
Re:Y2K Conversions (Score:4, Funny)
Re:parent Interesting? more like funny... (Score:5, Informative)
Y2k was WAY over hyped. I mean you would have to be really retarted . . .
It's obvious you've never seen a large COBOL program (I wish I hadn't) with two-digit-year fields and all the validation that's done on them. These even include birth dates in programs for HMOs and insurance companies. There are massive banking, insurance, and payroll programs written in COBOL. Try disrupting the banking industry or stopping people's paychecks, and then ask them if that's a "bad thing".
Y2K was no joke, and it hasn't been avoided, only postponed. Nobody expected those programs to last for thirty-plus years when they were first written. With all the *windowing* that was done to avoid Y2K, the problem has just been pushed into the future. If the *fixed* software isn't replaced in the next thirty years or so, it will be a Y2K redux, only worse.
Keane (Score:5, Interesting)
I found out after hiring on that Keane had actually just lost that contract with the company I wanted to work for, and the few people they still had there were being extricated one by one as their projects finished.
So I got shoved off into a corner writing unix C/SQL query library routines of the form "do this exact query, just like it's described here, and stick the results in these variables, and then return them - no, don't ask what these queries do." It was for a local Telco. The work was dull, but the pay was good. But it only lasted about 2 months. I was a bit worried that despite being the new guy on the project (of three people) that I knew more about the technical aspects of the programming environment than the people who were already on the project. I knew how to run the dbx debugger, for example. No, seriously - nobody else knew how to do that - they were saying "I thought unix doesn't have debuggers.." Understandable for an end-user, but these guys were writing code...
I sat "on the bench" after that because I didn't have the skillset that matched their contracts. Their contracts were all visual basic and some old mainfraime MVS stuff. They claimed there was no demand anymore for someone who knew unix/c/c++/perl/ and so on. (I suspect they just didn't have the ability to convince companies in that line of work to use their consultants.) They said I should learn VB while waiting. I offerred to learn Java instead, which they accepted because it was a new buzzword at the time.
Then they gave me some kind of nationalized standard skills test they have in C. They figured they could check if maybe some other city had good work that would match.
They said I scored higher than anyone in their branch ever had before.
I got scared. I know I flubbed up a few things on that test. I know I only did "okay" on it - probably somewhere around 85% correct. But if that's the best they had, then that means their reputation among places trying to hire C programmers would be awful and I'd never get good contracts with them.
As I was contemplating quitting, they said they had an opening in Mineappolis (about a 6 hour drive away), and that it needed someone with C and unix experience. While it was a matter of maintenence rather than development, they were trying to migrate from an old system to a new one and needed someone who could understand the old one to help. While not the greatest job, it still sounded interesting, so I decided to give it a try.
So, a week later, living out of suitcases in Keane's furnished apartment in Minneapolis, I started my first day on the job....which turned out to have nothing to do with my skills at all. there was no C. There was no Unix. There was no SQL. The old system they were migrating from was OS/2. The program was rexx scripts. The job was not to migrate the program at all, but to just babysit it and watch the output logs for errors until the new system came online. They lied to me. Plain and simple. They lied about what the job entailed when they said it needed a person with C/unix skills. I asked the local guy what else will the assignment entail after this portion is over - of watching the program and reporting errors - he said, that's it. That *is* the assignment. I was not involved in the migration. I was not involved in programming anything at all.
Two days later I'd found another job over the internet (a job I still am happily staying with 6 years later) and had quit Keane.
There was no excuse for their practice of
(1) lying to me about what the job entailed.
(2) sending me off far away when they do it,
probably under the hope that I'd roll over and
take it since I'd be so far removed from my
support network for job hunting.
Claim Ownership (Score:5, Interesting)
Needless to say, I said no, almost got fired, and eventually fled the sinking ship a year later. They ended up spinning off, failing miserably, and selling for less than the cost of my current house.
My biggest regret is not swiping an Aeron as I left.
Re:Claim Ownership (Score:4, Informative)
It wasn't quite like that. It was much more like "make it look like we wrote this, that it's proprietary, cutting edge, and that nobody else even comes close."
I don't remember all the details any more (this was about 4 or 5 years ago), but everyone I worked with agreed that it was way over the line, and could easily get us sued. Fortunately, when I complained (and got booted from the dev team), nobody else was given the task, and we were able to fail on our own merits.
Re:Claim Ownership (Score:5, Funny)
VB is Evil (Score:4, Informative)
Re:VB is Evil (Score:5, Funny)
Re:VB is Evil (Score:5, Funny)
How many billions of lines of Java did you end up with?
Re:VB is Evil (Score:5, Funny)
Re:VB is Evil (Score:5, Funny)
Re:VB is Evil (Score:5, Funny)
But its forebears were worse! (Score:5, Interesting)
My worst programming job? 1991 - I had to build a lockable databasing/math/graphic app with full idiotproof GUI
It took me a week to even figure that the language didn't really have variables. I'm not kidding. You put formulas in cells, and the formulas returned their results to those cells, just like in regular Excel sheets. Except that you didn't see the results or have any way of knowing this was happening, because code sheets (unlike data sheets) display the formula rather than the result. Then you gave that cell a name, and used that name like a variable. But the cell had to have a location in your code column. None of this was documented.
Instead, all the examples put the name of the variable in the column to the left of the code; the documentation seemed to imply that putting the name there created a variable you could use later on. On the contrary, that text in the left column was just a comment; to create the "variable" you had to name the appropriate code column cell using a menu option. Identifiers didn't appear in the code anywhere.
After two days of trial and error, I was able to write code with variables. Then the hard parts began.
Over 90% of the development time was spent just trying to deduce how the language worked.
From my point of view, VB is a godsend.
I know. (Score:5, Insightful)
Re:I know. (Score:4, Insightful)
I'm sure some people will challenge that. The worst thing I did was roofing a house and that was only for a weekend. Five layers of shingle to remove, 105 degrees Fahrenheit to work through.
But I still agree with you. McDonald's has jobs, and if you're qualified to work as a developer, you're qualified to flip burgers. Managers for a McDonald's can get paid as much or more than some developer jobs too.
Bottom line? Forced unemployment is not satisfying and the pay is awful.
Re:I know. (Score:5, Insightful)
I've had jobs that made me completely miserable. In fact, the job that paid me the highest salary I ever made was like that.
On the other hand, I spent the last year unemployed and had a pretty great time, all told. I traveled to Italy, Spain, England, a couple of the United States ... I worked the door at a bar for a while, that was fun ... I sat around, I got caught up with friends I had lost touch with, I got involved with personal projects. I kept my ear to the ground about job opportunities, though there didn't seem to be many of them, and eventually I got myself another job.
And right now, unemployment is feeling like the best job I ever had.
Managing unemployment is a skill, of course. Fortunately I didn't blow all my money on 3-D video cards and stereo equipment before I was laid off, and I came up with a decent strategy for managing my finances with no sure income. Moreover, I had enough skills, both technical and communication-wise, that I was able to market myself sufficiently to get some freelance work in the interim between full-time gigs. And when a decent opportunity did show up, I was able to seize upon it and pick up more or less where I left off ... not quite as senior a position, not quite as much money ... but than, that really is the point at which, as you say, a job's a job.
Once I was (Score:5, Funny)
Re:Once I was (Score:5, Funny)
.com with aggresive transexual boss (Score:5, Funny)
Re:.com with aggresive transexual boss (Score:5, Funny)
"...had to be frisked before i went to my office..."
"...my boss would threaten to 'fuck our asses'"
You actually bought the old "people are stealing stuff" line, huh? I'll bet Big Gay Al lists that job as one of his favorites.
Re:.com with aggresive transexual boss (Score:5, Interesting)
Crossdressing != Transexual
Crossdressing is engaged in by both heterosexuals and homosexuals and is generally done as a means of gaining sexual satisfaction.
A Transexual/Transgendered person is a person with what is known as gender identity disorder (GID) or gender disphoria. In this case there is no sexual pleasure derived from the act of "crossdressing". GID is a documented condition where the brain tends to develop more similar to that of the opposite sex of the person. While the cause is currently unknown, many belive that it is caused by an improper amount of hormones delivered to the fetus at a critical stage of development. (for Male to Female transexuals this generally means that the brain was not given a proper testosterone bath during the second trimester, while for Female to Male transexuals the fetus was given too much testosterone).
Re:.com with aggresive transexual boss (Score:4, Funny)
You should have embezzled money from him. I mean, after that, is a federal pound-me-in-the-ass prison really a deterrent?
Converting from Opensource to Proprietary (Score:5, Interesting)
And then, some PHB felt that this does not have adequate punch since it would not convince potential customers, and so there was this plan of changing it to using propritary stuff.
It probably had a lot to do with the fact that the company was hiring cheap MCSEs rather than competent programmers.
So, all the perl/cgi/php code was converted into ASP, Apache to IIS, MySQL replaced by MS-SQL and platform shifted from Linux to Windows NT (NT - mind you).
And oh yes, did I say we had agents on the *nix box which had to be rewritten in VC++? Which, not to mention, kept crashing every two minutes or when there were too many connections.
Everything turned messy, the whole project was deigned useless and a good product turned bad.
Re:Converting from Opensource to Proprietary (Score:5, Funny)
Creating a document standard for a hospital. (Score:5, Interesting)
I had the "good" part: create a structure to which all these documents could be adapted and then make an application for putting the documents in a database.
Two intern developers had the "bad" part: scan and OCR 15,000 pages of hospital documents. Proof-read them for OCR errors. Since no one was willing to pay for a tie-in between the OCR program and the application I developed, the interns had to cut-and-paste the documents from Word to my app. I wanted to cry for those guys.
Easy... (Score:5, Funny)
Re:Easy... (Score:5, Interesting)
A former co-worker of mine was building a point-of-sale/accounting system for a strip club. For a while, he was building it from his home office, but the club owner wanted him to come interview the managers and...er...entertainers to learn where the money changed hands.
<side note>
For those of you who don't know, most strip clubs use what's called "funny money". Let's say you come in with $100. You exchange that $100 at the door for what is essentially play money. You spend that play money inside the club. That way, there's one controlled spot at which cash flows. This is to reduce theft.
</side note>
So my buddy starts hanging out in the strip club and learning how the business works. In the process, he learns something about strippers: although some small percentage are *ahem* putting themselves through college, most are alcoholics, addicts, hookers, porn stars or all of the above. Most of the middle managers are crooks. And that's the part that became worst about the job. He learned that the managers were skimming cash - this was easy because funny money often got torn up, thrown away or otherwise lost - and ripping off the owner. And the managers became aware that my buddy knew this.
Thankfully, he got out of that situation with all his limbs intact.
Re:Easy... (Score:5, Funny)
My worst job ever was the time I was hired to break some guy's knee caps to keep him quiet about a little hanky panky going on in the money room of a strip club.
The son of a bitch split the day before I got there, and I never got paid. I had to hang out with the strippers to get my fix and drunk. Bastard...
Keep Your Sanity (Score:4, Insightful)
Try to come up with more and more clever scripts for finding where changes need to be made rather than doing it by rote brute force.
Not only does it make better use of your brain and avoid boredom, but until you get to the last 1% of changes, it is the more efficient thing to do. Then, at the very end, cave-in and make 10 changes by hand to get the overall beast to work.
There is nothing more mind-numbing than doing repetitious work that a machine could be doing. It's kind of like moving rocks, only worse, because you can't disengage your attention from the task as much as you can when moving rocks.
Independant Development (Score:4, Interesting)
I had an independant contract that I was working on not too long ago. I love the "real" job that I have, but the on-the-side project would have provided some extra cash.
My friend and I went into the deal without writing up a contract, and also without requiring a final set of specifications up front. This was our biggest mistake, because the guy we had the contract with kept changing the specifications on a whim. You could tell that he hadn't ever done real development work either, because he though his changes would be simple, when in fact they usually involved two to three days of work.
As it went, we took far longer than we had estimated, and we never got paid for the work. I guess we still own the copyright on the code, but it isn't really useful for us in any way. I had spent many nights coding a program that I didn't really enjoy instead of doing hobbies or going out. I had to endure a number of phone calls that occasionally came later at night, because the guy that we had the contract with was socially inept. Lastly, he did not speak English very well at all.
That whole experience almost turned me off to the whole independant project experience. At least now I know that everything needs to be defined in the beginning, with little room for change. The design needs to be in place before the coding, otherwise you'll get bogged down in a quagmire of continuous "extra" features.
I'm a Microsoft Windows coder... (Score:5, Funny)
Re:Seriously, though: (Score:5, Interesting)
Everything about that job was great, although I tired of programming after a while and decided to change careers.
The best part, if you don't like the project you're working on you can easily transfer to another dept. Want to work on an OS, Server, Console, Game, Web site, etc?
My Worst. (Score:5, Funny)
Re:My Worst. (Score:5, Funny)
The beginning of the program went something like this
INTEGER MAXCORE
MAXCORE = (memory on machine)
DOUBLE PRECISION A
DIMENSION A(MAXCORE)
Yes, the array A took up every bit of memory. What about other variables? There weren't any. There was A. Store your data in A. Do you remember what A(326) is?
I seem to remember some 2-d arrays in the code as well. Well, not really 2-d arrays, they were A. Just make sure to keep track of the rows and column indices, ok?
worst job ever --- HAND GOES UP!!!! ho ho ho!!! (Score:5, Funny)
The XAS code was closed and only the boss had access to it. However he wanted us to develop some VB apps that would work with it. We had no documentation and when I asked why the boss told me that we don't work with documentation anymore but with UML. I asked where the UML models were and he muffled something about not having any.
I tried guessing what things did by their variable name but the boss enjoyed variable names like varTempOne, var1, var2, var3, generic1, generic2, myVariable, etc...
One day I asked if I could see the source code to XAS. I learned quickly that it was a mistake.
Clients were constantly calling because the XAS servers were going down unexpectadly. The problem was the logs growing to more than 2 gigs in size. Every second line of the logs would have a copyright description with the name of my boss all over the place. He was so proud of his XAS. Unfortunatly though his XML wasn't valid in any sense. He pissed me off so much!
After 22 days of this BS I had rashes from the stress of working there. I told the boss I needed XAS source code to work with or documentation to work with. That night I received a phone call telling me I didn't need to come in the next day, that they were going to do without me. I was so relieved I did a huge party.
I talked to the boss's boss the week after. I explained what was going on and a month later the boss I had trouble with got fired along with his bum buddy. I was so happy! :)
Last I heard the guy's wife left him too. I couldn't be happier! :)
Programming 1-900 apps (Score:5, Interesting)
I had a job in the early 90's programming IVR applications (i.e. call an 800 or 900 number and interact with a computer via touchtones). Most of these apps were the front-end interface for the psychic lines you see advertised on late-night TV. You call in and either choose to try and talk with either a specific 'psychic' or a random one. Either way, the service bureau's system calls a psychic working out of their house on the back side and connects the caller with the 'psychic'.
Now, the app language I used was called CLASS, and it allowed for a whole whopping 99 variables ($00 through $99, the first 30 of which were reserved) and looked a lot like a bastardized cross between BASIC and assembly language. Something like this:
start:
say
wait start: $46 (wait for a touchtone, if none go back to start)
if $46 = 0 presszero:
if $46 = 1 pressone:
goto start:
pressone:
You get the idea. Evil stuff.
So I'm writing apps in this crap all day. Not exactly the most maintainable code in the world, let me tell you.
And then there are lots of fun things like up-front limiting. This means that there are tons of freaking losers in the world who will gladly grind their fingers to the bone punching buttons to talk to a 'psychic' and ringing up $5000 phone bills every month, but then charging them back when they get their phone bill. ("It wasn't me! Somebody snuck in and spent 8 hours straight on my phone!") So you have to make sure and limit the amount they can use per month.
Also, I had one client whose 'psychic' pool were either "your personal angel" or "your salem witch" depending on which 900 number you called. We had to make damn sure and play a tone to the 'psychic' to tell them which one they were supposed to be for that call or hilarity would ensue, let me tell you!
Combine all this with the fact that the company I worked for was pretty much run by the clients, and you have a pretty sucky high-pressure job writing in a crappy language.
Not a job per se but a class... (Score:4, Interesting)
My assignment:
Develop a BIOS for an 8086 SBC, using an HP64000 develpoment system.
Use Pascal.
Ignore the lovely and idle Motorola 68000 SBCs and development systems occupying the lab. Those were off-limits. HP had just donated their development systems, Intel the SBCs and 8086's, and the free databooks for all students. We had to use those. Oh, and remember that they had a bug that miscompiled indirect relative addresses, in other words, linked list buffers were unallowed. Use arrays.
It didn't matter if you could patch the buggy assembly output yourself. It didn't matter if you could fix the damn broken development system. Use arrays.
Oh, and you're stuck with the lab partner assigned, by adjacency on the student roll. My partner did zero work. I worked 50 hours a week for a 1 semester credit hour lab. I wrote the linked list buffers, patched the assembly code, and found the error in the compiler.
And failed the assignment. So I redid the buffer routines (in Pascal, remember) using arrays, and got full credit.
For the class, I scored 92.5% out of a possible 100%. Unfortunately, the final grade was assigned on a strict curve, with the mean at 95%. Therefore, for all my work, I got a C-, and so did my partner, who did nothing...
I switched to straight EE the next semester. I decided I'd rather design microprocessors than program them. Even thermodynamics was easier than that lab. (And we used Kittel and Kroemer's wacked-out thermo text.)
Being Micro-micro managed to death (Score:5, Interesting)
Imagine being a developer with 10 years experiance having your code read daily, then being criticized on the following:
Variable names -- BlueDog change to DogBlue, but changed back the next day
Can't use pointers in C++ code, because the manager doesn't understand them. Must use almost useless references.
Can't use INI files because "Microsoft is going to remove support for them from the OS".
Can't use byte or short because the compiler is faster with ints.
Then to add to the stew being threated with:
Contractors fired exactly on the 3rd week.
Contractors fired for voicing an opinion. Any opinion.
Contractors being fired after being told no one was going to be fired.
Being told you need this job more than we need you.
Perhaps this doesn't sound like much, but when it occurs day in, and day out, for months on end, it's a very hostile and unpleasant working environment. It's like being a sock puppet for the village idiot.
Re:Being Micro-micro managed to death (Score:5, Interesting)
The funny part, he was a manager, and he didn't have a clue what our products name was, he knew the acronym but didn't know the full name (even after being told TWICE!). Talk about a clueless dolt.. So anyways, the manager still works there, and now, the company is going downhill due to customers complaining that his department "Doesn't know which way UP is" (true statement from a customer).. Guess that 2 nights of training wasn't sufficent compared to my 5 years of experience..
Re:Being Micro-micro managed to death (Score:4, Interesting)
Have a similar, second hand story. I had a coworker who worked on power supply units for submarines, circa 1998. They had some incident happen where a computer crashed - I don't know if it was a test stand or at sea. It was serious, though, and the fecal matter hit the rotational ventilation unit. The Navy ripped the project apart, demanding answers. So far, so good - rational customer behavior.
It turned out that the fault was a bad ISR that got hung up. The techies tried to explain what had happened and how to fix it, but they apparently did a very poor job. Instead of demanding stricter coding standards, reviews, or the like, the admiral involved got completely freaked out by the notion of an ISR. He'd never heard of such a beast and the idea that a computer could interrupt its normal processing and then return was incredibly risky and blasphemous (never mind that it is possible to formally prove that your ISR can and will return).
The Admiral's judgement: "There will be none of these ISR things on my boat!" Crazy, but he was the Admiral.
Imagine: You're coding dozens of embedded systems on a submarine and you can't use interrupts! The entire power supply was recoded to use a polling architecture, monitoring flags in a main loop and then servicing them instead of letting an interrupt run to do it.
Not suprisingly, my coworker soon left.
Re:Being Micro-micro managed to death (Score:5, Interesting)
Reminds me of a job (that I managed to stay in for 5 days before handing my notice in) where I was told that we weren't allowed to use ++ in C code, as some people might not understand what it meant. The response "Well, they shouldn't be let near the code then" didn't go down too well.
Let me tell you about my first job (Score:5, Interesting)
Later cow-worker decided something needed to be shipped to a custommer. Rather than grabbing my working code off of a newly installed fileserver - he goes onto my machine, finds a module in my development directory, packs it up and ships it with the rest of the application to the custommer. When somehow my code didn't work the next day (suprise suprise - I was halfway through rewritting an ISR), I had to sit through being yelled at for 2 hours by the owner of the company. I agreed to never leave any code around that wasn't fully functional (basically I started encrypting my development areas on my hard drive) so this could never happen again.
Too many other stories to relate... two days after getting my BS degree, I handed in my resignation and count it as an experience on how NOT to develop software.
Let me count the ways... (Score:5, Funny)
I once was employed by an insurance product publishing company in indianapolis. The project manager made all his decisions with rock-paper-scissors. I'm not making this up. Whenever a bug needed to be fixed, he would call all the developers into a room and play RPS until there was a loser.
Once, I worked for a company run by Scientologists. They did software for the timeshare industry. I lost that job when the IRS seized the company for failure to pay payroll taxes.
While working at walgreens corporate, i was once asked to clean desks with paper towels and windex... for $68/hr.
I once worked for a trading firm in downtown chicago where my boss, while standing behind me to look at my code, would put his... package... on my shoulder. I would scoot in to get away and he would step closer until I could no longer get away. That job didn't last long.
These are just the highlights of my ilustrious IT career.
Re:Let me count the ways... (Score:4, Funny)
Game coding on a crappy project (Score:4, Interesting)
7 day weeks
Evil, manipulative boss
Terrible game-design
Weak lead programmer with no management skills
Fragile, super-crufty codebase
Emphasis entirely on marketability as opposed to quality
Unhappy, fragmented team
I tried resigning, which was met with various nonsensical threats, eg:
"We will sue you for your entire earnings to date",
"I will make it my mission to ruin your reputation in this industry, you'll never work again",
and my favourite,
(him) "The publisher will not stand for you resigning"
(me) "I'm not breaking any contract or law, what can they do?"
(him) "I'd rather not say how, but they will get you"
I ended up getting forced into working 4 months notice. During that period, I managed to completely forget that I love programming and I love videogames. It made me want to go work in McDonalds.
Perjury (Score:5, Interesting)
The crowning moment, though, came when a hardware guy (father, scoutmaster, perfect citizen) had to miss a day for jury duty. That afternoon, my coworker called in and said he would have to miss a second day because he'd been picked as a possible juror on a case but they'd not gotten around to directly questioning him yet.
Our leader promptly badmouthed my coworker in front of our entire staff for not "doing what he needed to do" to "get out of it." While it was never spelled out, it was obvious he was angry that my coworker hadn't perjured himself to get off the jury.
Two days later, my coworker returned as promised. As he'd predicted, he hadn't made it through the direct questions - he's an engineer. When he heard about what had happened in his absence, I made sure that he was one of the first to critique my resume.
Forgot to mention... (Score:4, Interesting)
Wasn't an active member of the bar or serving a counsel, though. A shame, as I'm sure we could have done something if he was an "officer of the court" encouraging perjury.
most pointless job (Score:5, Interesting)
Spent 3 months designing and building the CD-ROM, got to beta, and suddenly a person at the corporation that the third party "forgot" to bring in for reviews saw it, hated it, and said "start over". Was assigned a new producer.
Spent 3 months designing and building a second, all-new version of the CD-ROM, got to beta, and a person who had been part of the reviews "changed their mind" and we needed to start over. Was assigned a new producer.
Spent 3 months designing and building a third CD-ROM (midway through the producer resigns and I get another one), and at beta, they decide they want "changes" -- then "significant changes" -- then "let's just start over one more time". Was assigned a new producer.
Spent 3 months designing and building a FOURTH CD-ROM, and a month before beta submitted my resignation, to take effect the day we hit beta. My company heads begged me to stay "until the CD-ROM (was) done", but based on what had happened in the past, I dedided the likely completion date would be 2018, so bailed the day we hit beta.
I have no idea what ultimately happened to that project. At least I learned quite a bit about the subject matter, more than any user of the CD-ROM ever will.
Re:most pointless job (Score:5, Funny)
The project was outsourced to India, where more time can be wasted for less money. This will ultimately be good for the economy as a whole.
Probably not the worst... (Score:5, Funny)
I was working at a dot.com-focused consultancy during that period in which the "New Economy" was going down in flames but no one was really talking about it yet. After completing my development work on one project, I was informed that I, along with a few other developers that had survived the last round of layoffs, was being given an "alternate assignment."
Since our sales department couldn't sell work for shit, we were assigned to work to help them find leads. What that amounted to was the following: we were each given a section of a list of big companies in the area. First, we were to ascertain what kind of web presence they currently had, and propose some ways our company could help them improve it. Wait, that's not the funny part.
Second, we were to obtain direct contact information for their CEOs, CTOs, etc. by whatever means necessary. Now, occasionally you could dig something like this up via the company's literature, possibly with the assistance of a phone book, but usually it wasn't publically available. In this case, we were encouraged to call up the company and tell them whatever we had to for the receptionist or whoever to give us that information.
Picture, if you will, a small handful of mostly socially inept geeks. Picture them cold-calling companies and try to string together various tall tales, misdirections, and outright lies to scam poor employees of said companies out of the direct line phone number, e-mail address, and home address of several of the companies' top executives.
Hilarity ensues!
Here's a good one... (Score:5, Interesting)
Our flagship product is written completely in VBA. The front-end was created using Microsoft Access. The back-end for data storage is Microsoft SQL Server. Oh-hoh, but you've heard NOTHING yet.
The VBA developers of the past was the VP and a few interesting individuals. None of them knowing how to program, nevermind in VB. It's largely a mass of 150,000 lines of spaghetti code. Functions are far from being imdepotent -- you'll have forms that touch all portions of the application. Lots of globals that are used frequently, often with conflict. One guy apparently didn't know how to use variables, so he'd embed text boxes on the main form, and set their visibility property to false, and use them to store values. Not only for the current form, but for the ENTIRE APP. It's great fun debugging those!
The database schema is just as bad. There's no normalization. We're talking strings that describe a product being primary keys. There are no constraints on columns, and adding them would break a lot of existing data in most deployments. Everything seems to be tacked on, often without thought. So instead of having detail tables, or linking tables, folks would just add columns. There are numerous tables in the database that bump up against the limit of how much non-BLOB data can be stored in a row, since nothing is normalized.
There's lots of other weirdness too. Someone apparently had fun learning from books -- why use the built in REPLACE() when you can write your own that only replaces one character (as opposed to substrings), in only one instance, can't define a start and end position, and doesn't support binary replace. And then use it throughout the entire app, improperly at that.
150,000 lines. How many are comments? 200. Written documentation? None. Spec? They didn't use specs.
Did I forget to mention that the database schemas also different from customer to customer, and the front-ends themselves, including weird one-offs for individual customers. I spent a month consolidating schemas and front-ends so we could have ONE distribution.
There are some reports with 1000 lines of code-behind. Yes, reports. Why? Since the database is a mess, and the only way folks apparently matched data up was through joins after joins after joins (ever see 4 nested outer joins to match up two colums? I've seen it FIVE times in the same sproc!).
Did I fail to mention that there's no record locking? Yup, deadlocking issues are abound.
Did I fail to mention there are no CASCADES? That NOTHING in the app is transactional, including pushing accounting data into other packages -- some methods in which involve DIRECTLY modifying the other package's tables!
Did I fail to mention that between all the hidden controls, and virtually everything being databound (running this app over anything but a 100Mb LAN is near impossible), actuall causes some interesting issues in which multiple threads fight for the same data, in which pointers apparently get crushed and misused, resulting in Access itself crashing.
Triggers. 800 of them. Why have a sproc wrap everything neatly within a transaction when you can have triggers do all sorts of wacky things!
Naming conventions. Something like boolWhatever isn't a bool, it's a double. Things that should logically only support 2 states, are really 5. Maybe our app supports quantum indecision, I don't know.
Did I fail to mention that is uses ADO 2.1, and EXPLOITS several bugs in it. Moving to ADO 2.5 (or newer) comp
Re:Here's a good one... (Score:5, Insightful)
Re:Here's a good one... (Score:5, Funny)
One of the funniest and scariest things I've ever heard in my life: >extreme anger "GOD DAMNIT VISUAL C IS A FUCKING PIECE OF SHIT! IT ONLY ALLOWS 16384 LOCAL VARIABLES!!!!"
easy (Score:5, Funny)
I had to assemble my own cubicle. I died a little bit that day.
Man, there are so many... (Score:5, Interesting)
The important insight I had about Andersen Consulting years later, was that Andersen's main product isn't software, it's billable hours. They don't actually want to produce workable software, because then the billable hours will stop flowing in. So instead they do everything in their power to fuck up the project royally. At the time, I was baffled by their behaviour because I was driven to produce high quality software that did what the customer needed, and I couldn't seem to get that done under Andersen conditions. Understanding that simple fact about their main product made all the following experiences make perfect sense.
- Andersen always operates in "crash mode". Their people work incredible long hours, and if you work along side them they expect you to work the same hours. On one 9 day long project, I got an average of 3-4 hours sleep a night. I once saw one "Anderoid" yell at another because she was leaving at 11pm, to which she responded that her boss told her that she had to work 36 straight hours the next day so she was going home to get some sleep. One time one of the Anderoids and I were trying to solve a specific problem, and I was having a hard time concentrating and it seemed we were going around in circles, so I went home to sleep at around 1am. The next morning, I came in rested (by Andersen standards) and the guy I'd been working with was still going around in the same hopeless circles. I restored the hack job he'd done on the source code from my personal backups, and tried out an idea I'd had in the shower that morning, and it worked perfectly first time. Subsequent times working together, I told my company that I wouldn't go unless I had control over my working hours - I'd work long hours if I had to, but they wouldn't be the norm.
- Andersen hires idiots. They used to boast about how they didn't care about qualifications, as long as they had the "Andersen Attitude". One of the guys on the projects I was on had a philosophy degree. He knew about as much about programming as I did about Cartesian Dualism.
- Andersen is more concerned about looking professional that actually getting work done. One job we were in a large echo-ey room - about 100 of us at big long tables with no partitions or anything to deaden the sound. I brought in a Walkman because I was having trouble concentrating, and was told that I couldn't wear it because Andersen didn't think it looked professional. Evidently 15 people standing around having animated conversations right beside my chair was "professional", but listening to some music with headphones wasn't.
- Andersen are slave drivers of the worst sort. As well as the long hours, they also don't seem to pay that well. And they can transfer you around the country (or overseas) with almost no notice and you have very little say in the matter. One guy on the projects we were on together said that in your entire career at Andersen you can only refuse one assignment - if they wanted to transfer you to Antartica tomorrow, and you've used up your refusal, you have two options: go buy a down parka or quit. He told me that he hadn't been back to his home base in over two years. It was little wonder that the only married Anderoids I met were married to other Anderoids. And even that was no guarantee - one guy I met had been transferred to another city from his wife, and since they'd both used up their refusals already, they hadn't lived in the same city in over a year.
- Andersen enforces their bizarre behaviour requirements on their people by holding this carrot and stick: If they do what they're told, work long hours for little pay and have no sleep or personal life, they will eventually make Jr. Partner. The working conditions don't get any better, but the pay does.
On the first project we did together, my company actually poached one of the Anderoids to come to work for us. On the second project, he came along - you should have seen the faces of the Anderoids when he and I got up at 10pm and said we're going home.
First was Worst for me (Score:5, Funny)
My first programming job, right out of school was with a small mortgage company. I knew things were going to be bad when the monthly processing run to distribute interest payments to the various loan 'investors' crashed on my 3rd day, while I was still figuring out where my predecessor had hidden stuff before he was fired.
2 years later, I quit after my entry in the employee pool on which regulator would close them didn't win. My final check wasn't really a check, since no bank would open an account for them. I got a paper sack literally filled with small bills.
I thought I was done with them, but 2 months later the trustee handling their bankruptcy called and I went to work for him as a consultant, recovering their data. We got almost 90% of the principal identified and recovered, which surprised everyone and netted me a nice bonus. But the real bonus didn't occur until over a year after that, when armed guys with badges and everything showed up at my door. I didn't even know postal inspectors carried weapons, but they do. They wanted me to help them prosecute and convict the owner of the mortgage company.
There is nothing in the world as satisfying as the sight of a former bad boss being led off to serve time in federal Pound Me In The Ass prison.
Worst Function of All Time (Score:4, Interesting)
Within it, I actually found a leap-year-determining function which went like this:
IF Year = 1980 THEN RETURN TRUE
ELSE IF Year = 1984 THEN RETURN TRUE
ELSE IF Year = 1988 THEN RETURN TRUE
ELSE IF Year = 1992 THEN RETURN TRUE
ELSE IF Year = 1996 THEN RETURN TRUE
ELSE IF Year = 2000 THEN RETURN TRUE
ELSE IF Year = 2004 THEN RETURN TRUE
ELSE IF Year = 2008 THEN RETURN TRUE
ELSE RETURN FALSE
Why do I call this this worst function of all time? Because A) it doesn't actually do the job it's supposed to B) It transcends obfuscation into the realm of the deeply sad and C) It's actually harder than doing it the obviously right way!
FORTRAN II (Score:4, Interesting)
So I went to work for the US Geological Survey. They put me to work translating some old FORTRAN II programs into FORTRAN IV, the programs were old NASA programs used for data analysis. I had an old Hazeltine dumb terminal hooked up to a fancy new Data General Nova with an array processor. Everything had to be tediously edited with a line editor, one line at a time, no full screen editor was available. The first part of the job was translating everything from 8 bit words to 16 bit. This was the first step to getting them ready to conversion for the array processor. It was incredibly fucking tedious. But the worst part was testing the programs. When my first conversion was ready for testing, I took it to the boss and asked him how I was supposed to test it, did he have a data set to run against it? And if I could get them to run, was there someone who could check the results for accuracy? And then I got the shock of my life, the boss admitted he had NO IDEA what the programs DID, so I was completely on my own.
Life in a cubicle began to really suck. I didn't think it could get worse, but all that sitting at a desk aggravated a medical condition, I developed "Jeep Rider's Disease," a pilonidal cyst. Sitting down was unbearable, so I had surgery to remove the cyst. It was horrible, essentially they cut out a big chunk of your ass crack, and leave the raw meat exposed so it slowly grows back together. After a week or so of recuperation, I returned to cubicle-land and sat on a little inflatable donut shaped pillow. It was even more painful than my prior condition. I tried to work at home, sitting on my stomach while typing on my homebrew computer, via a dialup. I was still getting the work done, putting in well more than 8 hours a day, but nobody saw me in the office, so I got fired for chronic absenteeism. Actually, it was kind of a relief.
I hung around Denver for a couple of years total, working at a couple of different developers. And here's the punchline: for the two winters I was in Colorado, there was a freak winter drought, it only snowed ONCE in two years. There was never enough snow to ski, and they didn't have artificial snow machines yet, this was the Rockies and nobody ever figured they'd need artificial snow. I never got to go skiing even once.
Art Conversion (Score:4, Interesting)
PS if anyone can find the C64 version, I'd sure like a copy. I've long since lost my copy.
a couple of "sour taste" jobs... (Score:5, Interesting)
So I managed to get them to the state of having a playable demo of the game in only six months. At about that time, however, one of the more "shifty" employees hacked into the financial records of the company to check people's salaries. Well, of course, being a "hired-gun", I was making at least twice or three times as much as anybody there. And of course, this scumbag proceeded to announce my salary to anybody who would listen.
Now, the other employees didn't really begrudge MY salary because they could see visible evidence that I was worth the dough. However, it only served to underscore how little THEY were being paid, so they threatened to mutiny if they didn't see a little more equity.
Can you smell what's coming? Management's BRILLIANT decision was to attempt to cut MY pay. I said no. They countered with, "This is the way it has to be." I said, "I'm outta here."
Luckily, I had a consulting gig that I WAS going to turn down, until this turn of events. However, management at the game company then tried to offer me a 25K BUMP if I would come back and save them. Well, by that time, I knew that they weren't trustworthy, and wouldn't live up to their side of things in the long run, so I said, "No way."
My other sour taste was when, as the 3D engine guy for a games company, the publisher was purchased by another company, and the new owner decided to do a financial audit of all of the current projects. And, of course, my salary was a severe sticking point with the new publisher. They didn't seem to understand the importance of the 3D engine guy, so they INSISTED that the developer lay me off, or there would be no more funding. This was despite protests from the game company that employed me.
For some reason, a lot of management seems to think that engineers are interchangeable cogs, and this was no exception. It didn't matter that I had developed the ENTIRE DAMN ENGINE, as well as the associated artist tools. Heck, I think that by the time they laid me off, the game company's management had half convinced themselves that they COULD finish the game with the remaining engineer, despite the fact that he'd never done a 3D engine before.
So after I was laid off, development of the game slowly ground to a halt. The moral to all of this is that if management insists on nickle-and-diming when it comes to experienced engineers, this behavior will INEVITABLY bite them in the ass.
Theft, Law Enforcement, Intrigue (Score:5, Interesting)
So the brilliant plan was -- he would issue me student financial aide, then with the help of another crook in the accounting office they would alter my work records stealing hours here and there so it looked like I was overpaid, and I owed the university money. I would then pay the money back, and it could re-enter the accounts presumably in some form they could steal. And oh, BTW, I was supposed to refile my taxes and get money back from the government because that income `never happened`. I got to commit fraud twice! :)
I was really angry, the fraud really only put ME at risk. I would have been the one who got audited, I was the one they were lying to. They tried to explain that i had been accidently paid out of the wrong account, and we just needed to do this thing to fix it...
Not being STUPID, I went to the police, and they devised an undercover operation where basically I acted like a dolt and got them to explain everything really carefully and I wore a wire and a tape recorder (backup). The plan was to then actually proceed with the fraud as they planned and let a forensic accountant trace where the money had actually gone to. It was *ALOT* of fun wearing a wire, but not so much fun being naked in a police station while they wired me. But screwing the people who were trying to screw me (yay revenge!) was priceless.
Problem was, they got cold feet and they devised another method to steal the money using. It was still illegal but almost impossible to prove. Long story short, they were never charged, and the university promised to senture them but they never got around to it.
Meanwhile its impossible for me to find a job because nobody wants to hear you were involved with the police at your last job (it actually *literally* lost me job offers).
I beat you all.. (Score:5, Funny)
On the bright side, she is definetley the most intelligent boss I've ever had and when I do spend time with her, its been the best use of my time among any other boss I worked for. Plus I'm guarenteed a vacation in another 17 years and 3 months!
This is a good student job. Allow me to explain. (Score:5, Funny)
On top of all that - it was $9/hr.
Worst job ever? (Score:5, Insightful)
--Getting a call from an America consultant (no names) for this 6 month Clarion gig in Miami for a big insurance company (no names).
--Having done this for a very professional Cdn firm (contract renewed twice) I figured it had to be better because it was American. I take the deal.
--Drive 2 hours to the border. Try to get TN visa. Turned back for lack of documentation (University transcript)
--Drive home. It is a long weekend in Canada. University closed. Wait.
--Endure rigmarole and pay $ for dox. Takes all day. Drive back to border next day.
--Get third degree from US Customs. Reluctantly issue TN visa. Charge 50 USD.
--Drive to Miami. In Titusburg Florida meet hacker legend the Cheshire Catalyst. See a shuttle launch. Highlight of the trip.
--Arrive on the spot. Its now an AMERICAN long weekend. Wait.
--Tuesday. Go to the office. The instant I walk towards the elevator three security guys jump out of nowhere. A Black guy in a suit with sunglasses and a walky talky and two white guys in uniform. They demand to know why I'm there. They check out my story and disappear, and I never see them again, but I know they're watching. This does not happen in Canada (and this was WAY before 9/11 too.)
--At the office, nothing is ready. Run around looking for cables for my computer. Have to install own copy of Clarion 5. Spend rest of day getting LAN access. NT shop. Sys admin has never heard of Groups so I have to be assigned access to each resource separately. CoWorker smiles right in my face as he welcomes me to the shop.
--Wednesday - was given the code I was to work on on a floppy disk. Really. At this time I realized this is an amateur shop. Ask Smiling Coworker question regarding Clarion initialization which I had not done for a very long time. He smiles, answers, and goes and tells my new boss I am incompetent.
--Friday. Fax in my time sheet and phone consultant that its there, like I did at the Cdn job. He tells me the firm is letting me go. I break into a flop sweat instantly.
--I confront the boss. You see, I was not supposed to find out about this then. He tells me this isn't for learning experiences. This is when I figure it out about Smiling CoWorker. I tell the boss I do not appreciate this treatment. I do not raise my voice or use profanity. I pack and leave the office. I do not erase any of my work. Someone had to be the professional there and it wasn't them.
--Leave the building. I never see security, but I can feel their eyes on my back.
--Go back to digs. Call consultant. He asks me what I said to the boss, as the boss called him the moment I left the office. So, not only is this guy heartless and brainless, he's gutless too.
--Cry myself to sleep. I really did and I was 43 at the time.
--Wait a week for my cheque. Intercept it just as they are about to mail it...
--drive back to Canada. Lose about $1,000 and all my respect for American management. I am home before the shuttle I saw take off lands. I later read a book that says 'At a new job, beware the guy who's really friendly'. Too true.
Re:The worst job you can have (Score:5, Funny)
Re:The worst job you can have (Score:5, Informative)
Re:The worst job you can have (Score:5, Funny)
Re:The worst job you can have (Score:5, Insightful)
And just because I'm autistic doesn't make me retarded.
Re:The worst job you can have (Score:4, Funny)
Re:The worst job you can have (Score:5, Interesting)
For a while I treated it as a game...raced this guy I worked with to see how many file drawers we could do in a day. The two of us got up to 27 or 28 per day before the manager (now my mother in law) asked us to slow down. See, we were budgeted to be there all summer, but they couldn't pay us if there was no work, and at our pace we were each going faster than any other three people working there combined.
So instead, we slowed down and chatted with each other. Showed each other the uglier male prisoners' photos, and the prettier ladies. We read off the obscene things some of these folks did that put them in the big house.
Basically, we dealt with the drudgery by inventing tiny bits of fun. My friend's father did the same when he worked for IBM. At the time, he was also the resident poet at a coffee house. So any time he'd maintain a program, he'd inject a quick haiku or image poem in the source code. Supposedly, the poems are still there...
Re:The worst job you can have (Score:5, Insightful)
Like when your boss has chronic halotosis (or "halo" for short.)
mine does.
Re:The worst job you can have (Score:5, Funny)
Re:The worst job you can have (Score:5, Informative)
Re:The worst job you can have (Score:5, Informative)
Well, I feel your pain on most of your post...but, in the area of database...if there isn't a proper natural key for the primary key, I'm a big fan of sequences and triggers to generate unique integer primary keys. And if the database is to be on a RDBMS, then hell yes, it had better use a related model...gotta be normalized. If you have a good model, the rest will fall in place.
However, I will agree with you about the expensive gear, but, with Gov. rules, they pretty much rule out trying to do things with open source...something I try all the time. Heck, have linux on many desktops around here...but, they are trying to get them out....and forcing that NMCI piece of crap down everyone's throat....
But, I gotta speak up for the database parts you complained about....you can't shortcut on that...ESPECIALLY if you are dealing with 100+ million records....
Worst Job I Ever Had (Score:5, Informative)
Working in porn is easily the worst. (Score:4, Interesting)
Oh, sure, all the /. teenyboppers (emphasis on bop) will be saying, "sounds like my dream job", but it really was horrible.
While it is not a requirement that porn companies be run by schizoid paranoic losers, they all seem to be.
This gig was no exception. The guy who ran the place clearly suffered from chronic depression, only barely understood how web technology worked, and was mind-bogglingly penny-wise/pound-foolish.
An illustrative example. For another client, I was being sent on an expense-paid trip to the colo facilty they shared, so I told Nutcase, "If you can get me a pile of CDs of the latest content-tree, I can load it onto the server while I am in town" This led to a several-day whine-a-thon how his CD burner was on the fritz, and he was going to have to go to great lengths to borrow a friends and blah blah blah. "Well, that's fine -- I leave for Los Angeles on Tuesday at the crack of dawn, so if you get them into DHL for morning delivery Monday at my house, I can load them up."
I get back from LA later that week, and he asks, "Did you get the content up?" "No," I reply, "I never got the discs in time..." "Why didn't you cancel the trip!! This is really vital for me!"
I patiently explained that this wasn't his trip, and I will deal with his content when I get the media.
Some weeks later, I finally get a box of CDs (he had sent them parcel post. Mean shipping time between the US and Mexico for parcels is like six weeks), and tell him, "Okay .. I got the CDs today. Do you want to pay for a trip to L.A. to do the load up, or what?"
"I thought you said it would be free ... "
"I said it would be free if I were making the trip on other-client's nickel. That is: If I were in town for his thing, I could stick your CDs in the drive while I was there. Now, you've MISSED that window, so what do you want to do?"
"You're always trying to fuck me over like this.... OKay -- I won't pay for the travel, but you can upload them from there, right?"
I think to myself: God, I hate this man.
"Sure, I can do that ... "
So, he paid me USD 25 an hour, for dozens of hours, to use a very slow connection to upload twenty CDs worth of content, because he did not want to spring for a fifty dollar round-trip train ticket to LA.
Or, another time, we're having some issues with one of the admin tools, so I'm on the phone with him. But he doesn't want to talk about the ####ing site, he's busy bragging how he's nailing this model or that model.
I am not the kind of guy to break his balls because he has figured out how to pay for sex without calling it prostitution, but I really could not care LESS who was waxing whos chili. I just want to get this problem resolved and close the ticket. But I do not get that. I get three and a half billable hours listening to him talk about his sex life.
On top of that, it's a harsh development environment. You have every horny hacker-nerd out there trying to steal your content, so you have to be on top of every possible security loophole. You get slammed bandwidth wise at random intervals as the whims of the horny public swing around in the wind.
Finally, it's a real negative point on your resume. Other employers will steer away from you, because you must be "tainted" in some way.
I'd do Telemarketing before I do programming for another pr0n site.