100

See title, but I am asking from a technical perspective, not

Take my 40 year old virgin niece on a date or you're fired.

Thomas Owens
  • 79,623
  • 18
  • 192
  • 283
µBio
  • 2,466
  • 4
  • 22
  • 23
  • 21
    If she's a 40 year old virgin, she's probably also an employee. Wouldn't that be against policy? – Tim Post Sep 09 '10 at 18:23
  • 51
    can you return her unopened next morning? – Mawg says reinstate Monica Sep 10 '10 at 01:49
  • 14
    Go read http://clientsfromhell.net/ – Pierre-Alain Vigeant Sep 10 '10 at 20:11
  • @Pierre-Alain I've read quite a bit of that site...good stuff. – µBio Sep 10 '10 at 20:44
  • 2
    This whole Q+As is like Dilbert, but in real life. – Agos Sep 10 '10 at 22:40
  • @Agos or office space. Either one applies to everywhere I have worked, large, small, big-business to engineering centric, new, old...and everywhere in between :) – µBio Sep 10 '10 at 22:43
  • @BioBuckyBall: Which guidelines of the big 6 do you think this question apply? Gradually we will close questions that doesn't fit on the 6 Guidelines for Great Subjective Questions. If you think your question doesn't meet enough points it would be a good thing the author of the question initiate the close process. Otherwise community or moderators can take the initiative if they they consider this question inappropriate to this site. Thank you. See more: http://blog.stackoverflow.com/2010/09/good-subjective-bad-subjective/ – Maniero Oct 01 '10 at 20:33
  • 2
    @bigown Because it's the only question on prgrammers that Joel answered? Seriously, this is the kind of question I thought programmers was for. Close it if you want, I'm done. – µBio Oct 01 '10 at 22:10
  • @BioBuckyBall: Do you read what I wrote? Do you read every word? – Maniero Oct 01 '10 at 22:14
  • @bigown Yep, and the linked blog post. And it doesn't meet those guidelines in my opinion, so should be closed. But I still think it's an interesting question about programming. – µBio Oct 01 '10 at 22:23
  • @Tim What policy prevents an employee from dating another ? o.O – wildpeaks Jan 14 '11 at 17:26
  • 9
    Ah, the mods strike again against clear community interest (70 up-votes!). Sigh. You know, maybe if so many very popular questions are against rules, maybe rules need changing? – James May 13 '11 at 21:48
  • My answer: I once worked at a company where they built a web site engine using file system storage because one of the directors did not want to install a Database on his laptop. His laptop was never used for serving sites, just the occasional demo. So we actually had 4 programmers spending god knows how long on a file-storage based system. – James May 13 '11 at 21:50

64 Answers64

182

To market Neal Stephenson's sci-fi thriller Snow Crash, I was asked to write a "benign" computer virus. It would "benignly" pretend to take over the user's computer and replace the screen with snow, a.k.a., a "snow crash." After a minute or so of snow, the snow would fade out and be replaced by an advertisement for the book. This would be "benign," you see. The virus would spread through normal means, but nobody would mind because after taking over their computer "you'd just get a fun ad and then be relieved that nothing bad happened to your computer."

I was actually told to do this at a major worldwide corporation. I had to write a memo explaining all the laws this would break and all 17 bad things that could happen if they really made me implement this.

Joel Spolsky
  • 7,074
  • 21
  • 56
  • 49
135

"This DLL you wrote is only 17kb. Can you add some code to make it bigger? The client is paying us a lot of money, and we want them to get their money's worth."

Scott Fletcher
  • 161
  • 1
  • 1
  • 5
95

Use Visual SourceSafe.

Thakur
  • 141
  • 1
  • 2
  • 7
    Nothing tops this. – Jaco Pretorius Sep 21 '10 at 20:02
  • 9
    Beats having nothing. – rjzii Sep 28 '10 at 02:55
  • 17
    @Rob - I'm not so sure. Having nothing, at least you *know* your source is "unprotected". VSS gives the *illusion* of protection whilst actually making things worse. It's a false sense of security of the worst kind. – CraigTP Oct 12 '10 at 14:13
  • 5
    I'm with Rob. It does beat having nothing. Although I no longer use it. Over my career, I've probably used it for a decade in total and never had any major data loss. @CraigTP, it may be unreliable, but it isn't 100% unreliable as you seem to be implying. A VSS installation that is backed up frequently (and a long tail of backups are kept) is indeed better than nothing. – JohnFx Nov 15 '10 at 17:09
  • 1
    Er.. http://programmers.stackexchange.com/questions/19085/have-you-ever-been-really-badly-burned-by-vss – JBRWilkinson Nov 16 '10 at 00:22
  • 1
    Sure, VSS sucks; but if that's the craziest/stupidest/silliest thing a boss/client has ever asked you to do, you have absolutely nothing to complain about. – Jeff Knecht Jan 14 '11 at 20:30
87

"You know this enormous 20-year-old Cobol program that contains piles and piles of hard-coded business rules that more or less defines our company? Would you mind converting it to .NET?"

Yikes.

We go live in a few weeks.

Wish me luck..

CodingInsomnia
  • 439
  • 3
  • 7
78

My brother and I were working on a multimedia heavy-website for a very famous rock star many years ago.

When the client saw the site he noticed some compression artifacts on some of the JPEGs and asked what was wrong with them. We explained that images need compression for bandwidth purposes and that the images were currently compressed at about 80% quality. He was offended and said something to the effect of

I haven't gotten to where I am today by doing things at 80%, set it to 100%.

We tried to explain how it would affect users, but he would have none of it. It resulted in the slowest "virtual world" website ever. This actually happened.

Jim G.
  • 8,006
  • 3
  • 35
  • 66
jessegavin
  • 131
  • 1
  • 7
  • 20
    "All these computers and digital gadgets are no good, they just fill your head with numbers and that can't be good for you." - http://www.boston.com/ae/specials/culturedesk/2010/07/prince_the_internet_is_over.html – Evan Sep 11 '10 at 01:03
  • I laughed hard when I first read that article. – jessegavin Sep 12 '10 at 02:34
  • 18
    At least he didn't ask you to turn it up to 110%. – Barry Brown Nov 15 '10 at 17:38
  • 2
    If it really was Prince you were working for, you might want to listen to him. There are very, very few people who can walk into a recording studio, alone, with nothing but a concept, and walk out with a complete master tape for an album that will likely go platinum. – John R. Strohm Nov 18 '10 at 19:22
  • 26
    John. It really was him. Trust me, if I wanted to dress fancy or play the electric guitar like a wizard, he would be the first person I would go to. But not for web design best practices. – jessegavin Nov 19 '10 at 02:16
  • 5
    At first I was reading it as wanting 100% compression, not 100% image quality! – Andrew Grimm Jan 14 '11 at 08:09
  • @Andrew, Good point. I have edited for clarification – jessegavin Jan 14 '11 at 17:20
  • 4
    "I haven't gotten to where I am today by doing things at 80%, set it to 100%." That's actually an AWESOME quote. The person who said it is Prince right? not some manager or something? – Ziv May 14 '11 at 13:36
  • 1
    It was actually him. – jessegavin May 14 '11 at 14:27
  • I had an associate at work who loved to use similar expressions. Me: "We can't make that happen for these good technical reasons". Him: "It's not about how it works on the insides, it's about how the user feels." – Justin Meiners Aug 06 '13 at 23:00
72

We need to delay the site launch by two weeks because Mercury is in retrograde and it's a bad time to start new things.

GSto
  • 8,531
  • 7
  • 39
  • 59
71

Obviously after reading some business magazine on an airplane about how XML was the hot new technology (this was circa 2002), one of our executives asked me if our application used XML, when I said no he asked me if we could add it.

Now, I'm not talking about a feature to import/export files in XML format, he simply wanted it to be part of the architecture for no reason other than it was popular at the moment and would lend credibility to our app.

JohnFx
  • 19,052
  • 8
  • 65
  • 112
  • 5
    I had the same thing in 1998 - except the article was on Oracle, and our app was essentially a workflow diagram editor. We ported the file format we were outputting from disk to a table and took a dependency on Oracle licenses. Made version control very difficult as well. – Rob Fuller Sep 10 '10 at 20:45
  • 3
    Oh boy. I had the exact same thing (at around the same time) and it was also regarding XML. What was it about XML that made the execs start drooling? – CraigTP Oct 12 '10 at 14:16
  • 49
    That's pretty common. It's called "buzzword compliance". – Michael H. Nov 15 '10 at 15:21
  • 1
    That was 2002. Nowadays the executives laugh at you and call you a hippie if you don't use XML. – Jason Baker Nov 23 '10 at 05:34
  • 1
    Managers that insist on XML without knowing why often use the office Internet connection to 'questionable ends'. I'm just sayin ... – Tim Post Nov 29 '10 at 16:47
  • 6
    @CraigTP I think it's the 'X'. It's dramatic and appealing. – Adriano Carneiro Jul 13 '11 at 20:26
  • 3
    Looking back I should have just appeased by saying. Even better, our web app uses HTML which has a whole extra letter in the acronym and the code is like a specialized version of XML that meets our exact business need! – JohnFx Jul 13 '11 at 20:42
  • And now here I am, wondering why TF I have to root through four XML config files to figure out how a combination of Struts, Struts-Tiles, JSP and Spring are coming together to build a single HTML page. – Erik Reppen Jan 19 '13 at 16:46
  • So that's what happened the the Spring framework? – Buttons840 Jun 01 '13 at 06:42
68

"Right now, the usernames are required to be unique, and the passwords are not. Could we make it the other way around?"

Craig Walker
  • 101
  • 1
  • 4
  • 1
    ha.. I made the mistake once where both the username and password needed to be unique. short lived mistake thankfully – WalterJ89 Sep 22 '10 at 22:16
  • 13
    What the heck were they trying to accomplish? – Jason Baker Nov 23 '10 at 05:38
  • 3
    As I recall it was something to do with a client sharing email addresses at a company. Emails and usernames were 1:1, so the idea was to create multiple accounts with the same username and use the passwords to differentiate them. – Craig Walker Nov 23 '10 at 15:30
  • In that case, they might as well drop the usernames entirely and look up the account based on the (unique!) password. Sheesh... did they tell you anything else about why they wanted it that way? – foo Jan 14 '11 at 19:32
  • No, but they didn't need to; it was obviously faulty logic. They got talked out if it quick enough. – Craig Walker Jan 14 '11 at 20:03
  • 10
    @Craig Walker Amazon used to have this. I created one account with my yahoo email address, and then another account using a different password with the same email address. I don't know when they fixed this, but depending on the password I used, I'd get a different account. – Yahel Jul 07 '11 at 04:58
65

About 7 years ago I worked at a bespoke software shop that decided to sell one of its products. It was an end-to-end operations suite for some industry. Well, this industry wasn't known for being super technological, so somehow we ended up providing third-party technical support for their servers and IT infrastructure instead of farming it out to independent small business IT consultants.

One day, a customer's server encountered disk corruption. The server we had sold them was configured with an Adaptec RAID controller, set up for a RAID 1 mirror. Their application database was toast. They hadn't performed backups in months. The backups they had performed were unusable. They ended up losing 8 months of data. They hired an IT consultant to handle this investigative work.

Phone calls ensued, and the sales manager (known for promising impossible features) apparently told them it would be taken care of, and wrote it up in a contract.

The sales manager promised the customer that we would ensure that the application database and any other application-related files would never be replicated by RAID controllers if the files were considered to be corrupt. No configuration should be necessary either. Yep. We were told to deliver this functionality in 2 weeks, or the customer would fire us.

So the program manager -- who had some large enterprise CRM products, and other serious development successes, under his belt -- and I had a meeting with the COO, and the sales manager. The program manager was detailing how insane, impossible, and insanely impossible this was. The sales manager (military background) would simply scream in his face (literally!), "I don't care! How hard can it be to make the RAID thing not RAID?! Their data would be fine on the other drive if the RAID thing hadn't screwed it up!"

At the end of that meeting, the program manager quit with a zero-day notice. So I was now tasked with this. Over the next week, I petitioned both Adaptec and LSI Logic to provide an engineer for a conference call, simply to laugh in the face of the sales manager.

Ultimately, they obliged, and held up their end of the bargain. And they went into detail how ridiculously unfeasible it was. The guy from LSI was particularly harsh - he didn't sugar coat anything.

I didn't have to implement the feature. One I did have to implement was a custom security scheme requested by a customer, that would allow them to toggle any of the application's controls - on a control by control basis - as visible, disabled, enabled, read-only, or read-write. In theory, there were 146,000 combinations. And if you accidentally screwed up by say... disabling a control group, you'd have inadvertent side effects. Needless to say, when I was given the ultimatum that it had to be implemented, I also quit with a zero-day notice.

The Lazy DBA
  • 101
  • 1
  • 3
  • 44
    `+1` for "quit with zero-day notice", because sometimes you just have to leave, and some people never get that and keep muddling on. – sbi Sep 13 '10 at 11:56
58

They asked me to search a Commercial Product that could find and fix source code bugs automagically.
Still searching..since 2001 :).

systempuntoout
  • 3,545
  • 3
  • 29
  • 33
  • 5
    Why can't you use an open source product to do this task? Do they just love spending money? After all, it'll be expensive! :) – alternative Sep 10 '10 at 00:37
  • 35
    "Could we have a list of all the unexpected errors, please..." – Evan Sep 11 '10 at 00:56
  • 3
    Imagine if a client doesn't need a developer to develop his application. He himself can write anything and debugger will solve it automagically. Let me google it, Ill let u know if I find anything like this :-) – Zerotoinfinity Sep 17 '10 at 07:00
  • 1
    Familiar with Mutivac? http://www.multivax.com/last_question.html –  Nov 22 '10 at 09:18
  • 7
    I actually have such a tool. The problem is that it takes several weeks or months depending on the problem at hand, tremendous amounts of interaction with your team, lots of coffee, and is very expensive. – Michael Haren Nov 22 '10 at 18:11
  • 2
    @Michael send me two copies please, I need to getting job done. – systempuntoout Nov 22 '10 at 20:17
  • @Thor thanks for the Multivac link, really enjoyed it. – systempuntoout Nov 28 '10 at 08:48
57

I once had a client specification that literally called for code capable of traveling backwards in time.

My employer harvested data for the client, and we were to deliver it in file format X at ten-minute intervals between 9 AM and 5 PM, save for the final delivery, which was in format Y (just X with a different footer). I did just that ... and they freaked. We were collecting low-volume data, and really only had one or two data points to deliver on any given day.

"QUIT SPAMMING US WITH EMPTY FILES!!!" they cried. "FIVE K'S EVERY TEN MINUTES ENCLOGULATES OUR BANDTUBES!"

Okay. So, my code checked every ten minutes, and only delivered if there was anything to deliver. Fair enough.

"BUT THE LAST FILE MUST BE IN FORMAT Y!!!" they screamed. "MODERN TECHNOLOGY CONFUSES AND ANGERS US! FIX IT OR WE WILL BEAT YOU WITH A MASTODON FEMUR!*"

(* -- It is possible I'm misremembering portions of the conversation.)

"So, I'm only to deliver the file if there's fresh data to deliver."

"YES."

"And the final delivery for the day is supposed to be a different file format."

"YES."

"Except I have no way of knowing which file will be the last of the day until the end of the day."

"YES."

"So the only way for me to implement this is to write code that goes backwards in time at the end of the day to redo the format on what turned out to be the final delivery."

"COULD YOU HAVE IT REPORT SPORTS SCORES? WE SAW BACK TO THE FUTURE II. BIFF TANNEN MAKES US HAPPY."

I refused, in part because violating causality is an unethical programming practice, in part because CPAN.org didn't have a module that would let me do it. (I checked.) In the end, they allowed me to send a file in format Y at the end of the day, regardless of whether or not it had any actual data. I'm pretty sure their bandwidth survived the hit.

BlairHippo
  • 8,663
  • 5
  • 41
  • 46
  • 61
    `+1` for "violating causality is an unethical programming practice". Now there's a rule that needs more attention. – sbi Sep 13 '10 at 18:43
  • 7
    And you didn't consider sending a file every day at 11:59:59 in format Y containing "This is the last file of the day"? – DJClayworth Sep 13 '10 at 19:38
  • @DJClayworth: You mean, send a file containing garbage data, rather than the file containing no data, as described in the final paragraph? Can't say that I did, no. – BlairHippo Sep 13 '10 at 19:56
  • 7
    This reads like The Oatmeal. – Kyralessa Sep 29 '10 at 01:55
  • 1
    You could've withheld the last piece of data for each delivery to roll it over to the next one. This way at the end of the day you will always have at least one piece to send in format Y. :) – Fixpoint Oct 02 '10 at 00:45
  • My guess is that the file in format Y was supposed to contain all the data collected that day. But what do I know, I'm just a snail. – Joey Adams Nov 02 '10 at 03:01
  • This is one of the funniest answers I've ever read. It should indeed be an Oatmeal comic. – Neil Aitken Nov 18 '10 at 13:45
  • 3
    @Joey Adams: On the internet, nobody knows you're a snail. – Alan Pearce Mar 10 '11 at 11:49
52

Without any discernable cause, I was brought into a private meeting, and told not to check if my computer was being monitored - including, never ever checking my task manager for any reason. I asked if they were monitoring my computer, and was told (roughly) "this is just a preventative thing -- you know, our lawyer told us to tell the employees about this -- but you know, we can't really say -- but I'm not monitoring it now."

(nudge, I think they were monitoring my computer, just not while they were telling me not to look for any monitoring programs. In fact, a few weeks later, I came in early and literally watched the mouse moving around my screen as if by remote -- so I looked through the window of the CEO and saw him remotely clicking around on my computer from his laptop.)

50

I once had a long "discussion" with a pointy-haired boss who insisted that we could store a 2 in a bit datatype because it was "only one digit."

Joe Stefanelli
  • 251
  • 2
  • 7
47

The stupidest thing I've been asked to do is probably a ground up rewrite of a very large project. It was about 350k lines, all C (with a little perl mixed in for 'helper' scripts) and worked well no matter what clients did to it.

Almost a year later, we had:

  • Lots of functions that basically did the same thing as the old functions
  • No real improvements in speed or functionality
  • A slightly smaller memory footprint
  • A much larger executable
  • Annoyed clients

Basically, we accomplished nothing that sensible refactoring could not have accomplished. But my boss was happy, we got rid of the helper scripts.

I consider it to be the most egregious waste of time and existing code that I've ever seen.

Tim Post
  • 18,757
  • 2
  • 57
  • 101
46

Client: We've been using your database software for a couple of years, developing our own applications with it, and calling you from time to time for help.

Me: Yes, we appreciate doing business with you.

Client: Yeah. Every time we call, you tell us how to use a new feature, or you help us debug our usage, or provide a workaround for some issue.

Me: Sure, we're always happy to be of assistance.

Client: Occasionally, your product has an actual bug in it, and your company fixes it and gives us a software update.

Me: We do our best.

Client: Well, what we need from you now is some assurance that we won't have any more issues.

Me: . . .

Bill Karwin
  • 1,511
  • 13
  • 22
  • 11
    My face twitched a little while reading this. – Daenyth Sep 16 '10 at 21:07
  • @Daenyth, I got that too! – DaveDev Sep 17 '10 at 12:21
  • 28
    This is a true story. The client above was a manager at an company who developed air-traffic control software for logging flight data. The sole developer on the project (who had no one reviewing his code) called to report a "bug" frequently, but it turned out to be an error on his part 9 out of 10 times. He didn't know about his own errors because he refused to check error statuses returned by our API. Why? Because he said any error must indicate a bug, and our library should have no bugs. – Bill Karwin Sep 18 '10 at 00:49
  • 2
    @Bill, sounds like you library should fail badly and loudly including the last 10 error codes returned to calling code. –  Nov 28 '10 at 14:09
  • @Thorbjørn: It was a C API, so there were no exceptions. Just return values. Since the client programmer refused to check return values, there was not much we could do. – Bill Karwin Nov 28 '10 at 15:57
  • @Bill, perhaps some internal logging for forensic analysis then? –  Jan 14 '11 at 21:49
  • @Thorbjørn: Good idea, that would allow us to log most of the client's mistakes, but it wouldn't meet their goal of "we won't have any more issues." Anyway, this anecdote is from the 1990's. I earnestly hope that the developer who refused to check return status from our API is now working in a different career. – Bill Karwin Jan 27 '11 at 21:35
  • I don't get this, seems perfectly normal - the software has been shown to have bugs, the client wants assurances it won't have any more. Seems pretty reasonable. What am I missing ? – NimChimpsky Aug 04 '11 at 08:34
  • 1
    @NimChimpsky: Some of the client's "issues" were cases where they wanted the software to do something it was not designed to do, or when they made fat-finger mistakes (like misspelling SQL keywords). They reported these cases as "bugs". – Bill Karwin Aug 04 '11 at 16:16
42

I have been asked to write in a presentation of our software to a major multinational potential customer that we used "spaghetti code" coding technique.

Of course, we're in Italy... sounds good.

36

Do some work for free.

35

Changing my syntax highlighting colors to match the ones used in the version control system.

Warren Seine
  • 180
  • 2
  • 9
  • 3
    haha, a sadist boss/client – µBio Sep 09 '10 at 19:26
  • We so had this... and a requirement that EVERY LINE be commented, in the 79th column, so that the code was down the left and comments on the right. And all of this was enforced by an IDE add-in. – Tevo D Nov 30 '11 at 13:55
30

Let's see:

Write programs in C++

  1. without the use of version control,
  2. no refactoring,
  3. no Boost,
  4. limited STL (I argued and won on this one),
  5. use unverified subcontractor libraries,
  6. without a memory profiler (to help fix subcontractor work),
  7. no unit testing,
  8. stick to 3 letter names for member function names,
  9. no test environment (VM not allowed either) just push to production
wheaties
  • 3,584
  • 22
  • 23
  • 2
    Wow. What's your company score on the Joel Test? – DJClayworth Sep 13 '10 at 19:31
  • When I first started, 2, I think. Now that I've been there a while I can say group A: 4 and group B: 8. Guess which one I'm trying to join and guess which one won't let me. – wheaties Sep 14 '10 at 00:13
  • 15
    Clearly, your boss was of the opinion that 'Real' programmers program with a magnetized needle and a steady hand. ;) – brice Sep 21 '10 at 15:17
  • 10
    @brice Don't make me bust out the butterflies... – Note to self - think of a name Sep 21 '10 at 19:36
  • 8
    No one can ever force you to work without version control. Use whatever you want (I'm an increasingly big fan of git, personally) on your own machine, and gradually other developers will follow along. Hopefully. – Tyler Dec 11 '10 at 19:04
  • Well, could do 1-4, and 6-9 just for the sportive aspect - but wouldn't agree on #5 then. If you are sent to No Mans Land on a suicide mission, you at least have to have reliable tools. – foo Jan 14 '11 at 19:39
  • Apart from #8, sounds _very_ a job I took in 2004, I didn't last the 6 month probationary period, I walked long before then – Binary Worrier Mar 10 '11 at 11:01
30

Can you take this 10-page report that I asked you to prepare as a word document and make it into a powerpoint presentation because I am really a visual thinker and won't actually read the written report I asked you to make?

David Alpert
  • 101
  • 1
  • 3
  • may be this is a way of ensuring that you are doing genuine work and all the important aspects are covered in all the steps and finally the most concise lucid idea is conveyed in the end. – Aditya P Mar 10 '11 at 15:02
  • Quit job, if he say "Do it by E.O.D." – Chris Jul 28 '11 at 11:07
26

Ok, I want you to scan this picture of a house, when I come back, you should be able to show me the back portion of it.

setzamora
  • 916
  • 1
  • 10
  • 15
22

"I don't like the way this Oracle database works. Why don't we just write our own database?"

(Admittedly, this was over 15 years ago, but still!)

thursdaysgeek
  • 1,303
  • 8
  • 18
  • 1
    Well, why not? Some people actually did this, and that's how we got OODBMS. Imagine Amazon or Google using Oracle as DB backend... and then think about what impact speed has on their business. – foo Jan 14 '11 at 19:43
20

I was asked to load articles from a competitor's website inside an iframe that would be inside our website's skin, making it look like it came from us.

Kevin Laity
  • 753
  • 1
  • 6
  • 8
  • 2
    Yes ! The same thing happened to me when I was in the training and I was asked to copy contents from various website and paste it into ours and make it look like the original article. I can't give the name of website here but it is still on the internet and grabing thounds of user evreyday.. – Zerotoinfinity Sep 17 '10 at 07:14
  • Ebuyer was well-known for this a few years ago. – njd May 16 '11 at 11:35
  • 1
    Yep. Somebody wanted me to help them build their own version of Craigslist that did this at first until they got "their own content." I explained that I was pretty sure this was illegal by digital millenium act standards but they didn't think it would be a big thing. I didn't take that contract. – Erik Reppen Jan 19 '13 at 17:01
19

For me, the craziest (and quite possibly, funnest) was

See this 10 million lines of code in (out-dated web technology)? Write a compiler to convert it to a working Asp.net site.

It never spit out a working version (of course, I tried to tell them it was impractical), but it was fun anyways.

µBio
  • 2,466
  • 4
  • 22
  • 23
  • 55
    Its nice of Joel S. to let his employees post about WASABI. ;-) – Donny V. Sep 10 '10 at 21:03
  • 2
    @Donny V. haha, I wish. It was much, much, much crazier than that. Dynamic inline sql used server side to generate mass quantities of dynamic server side code, leading to giant buckets of javascript and html with embedded server side code, that executed sql queries that... – µBio Sep 10 '10 at 21:09
19

One major feature of an application our company developed was the ability to search large amounts of documents by the full-text of the document. A competitor made the following claim in a marketing presentation to one of our clients,

Our search technology is superior because it doesn't just search the text of the documents, it also searches the 'bits and bytes' of the actual file in binary form.

They gave a ridiculous example of how the decimal ascii repersentations of the words "boot" and "boat" were much less similar than the same words in binary form, when you compared the actual numeric digits in the representation. So searching based on the 1's and 0's more accurately reflected how similar those two words appeared visually, and thus improved recall.

Naturally I was tasked with researching this technique, which I assume was the result of a marketing guy completely misunderstanding a programmer somewhere, and drafting a response that we could include in our proposal.

JohnFx
  • 19,052
  • 8
  • 65
  • 112
19

Can you write a simple time entry and billing system for our new foreign office that uses a different language, currency and tax laws?

JeffO
  • 36,816
  • 2
  • 57
  • 124
15

Small team of programmers, boss wants us to do a ticket reservation system for a small airline (in a very short timeframe, of course). Team says:

-- as you can imagine, we will need some testers for this project

Boss says:

-- don't worry, learn from the car industry. They recall cars from time to time: users will do the testing.

Marco Mustapic
  • 286
  • 1
  • 2
  • 8
14

I was a part of a mainframe support team that did shifts with other support teams in a data center. After the shift we would usually have a briefing with managers and the team of the next shift. One day our new director showed up and asked the question: "Why average CPU load during your shift was only 72%, while previous shift shows near 95%? I think if we try real hard, we could eventually achieve 100% CPU load!"

13

About 12 years ago when I was in college I worked on a data modelling application for Windows. The project was nearly complete after about 60,000 lines of Win32 code, you know, code targeting the Windows platform. Then the client said the application also needs to run "on the web". She had a hard time understanding how this one "minor little" requirements change could have such a big impact on the project. I started over from scratch in Java but ended up quiting the project before it was ever finished.

Brian Ensink
  • 119
  • 4
13

I was working on a big project in 1996 where we were scoring live sporting events. This conversation happened:

Boss: Go out to the venue for the next event.

Me: What do you need me to do.

Boss: Be there just in case.

Me: Just in case what?

Boss: In case the tech lead loses it. He's way too stressed out and I don't know what he might do.

Me: And if he loses it, what do you want me to do?

Boss: Just get him out of there so everyone else can continue working. I don't care how you do it.

13

First week - Have separate code base line for 2 different client (yes two copy of same code for 2 different client )

Second week (another boss) - No merge both codes and put IF - Else condition on every page

Ved
  • 101
  • 3
12

At the ISP I worked for back in the mid 1990s, the boss was friends with officers from our local police and sheriff stations. They were interested in catching securities fraud. So my boss hatches a plan:

Write a program to scan websites for evidence of securities fraud. That is:

  • Start with IP address 0.0.0.1
  • End at 255.255.255.254
  • Scan every web page you find at each IP

This was back when pretty much every web server had a unique public-facing IP and virtual hosts didn't exist, so technically it was feasible. This was also back when a 1.5Mbps T-1 was really, really fast.

The problem? Even if we could scan ten IPs per second, the entire job would take almost 5,000 days to complete. Yep, had we gone through with such a program, it would be just now finishing its first scan of the entire Internet.

Barry Brown
  • 4,095
  • 4
  • 25
  • 27
12

Just last week someone asked me to make a simple change to an existing DLL (left pad a numerical value with leading zeros).

It was a COM DLL, originally coded in VB 6 - source code long since lost - which interfaced on one side with some external hardware (interface unknown) and whose functions were called from an Active X control on a web page (interface, again, unknown).

It only took me a week and I only slept overnight on the office floor twice.

But I got it done and it is live in the field as of yesterday - working.

Punchline - it was a government project, of course.

12

I was working on a web project in ASP.NET which was to replace an existing PHP solution. The PHP site wasn't bad, just a little outdated so the new project was to upgrade it using a new platform. The first thing to do was setup the new infrastructure by having IIS and MSSQL servers as well as a source control system.

A few weeks into creating the new project the project manager became unhappy with the deployment process which involved getting the latest version of the code, then deploying a build to the test environment. He felt that this was time consuming and that having people work on the same code base and having to merge their changes the wrong way to do things.

His solution was that we go back to the "old way" of doing things: writing PHP on the production server in real time with no source control or deployment strategy. This way you could have instant results and it didn't involve setting up source control or other servers. Needless to say things did not go well. :)

Zero Cool
  • 251
  • 2
  • 5
  • 9
    Ah, the wonders of PHBs: "Why don't you incompetent f***s have any way to know who changed what file when? Fix it!" Same PHB, another month later: "Which one of you incompetent f***ers broke the server again?" `svn log`..."uh, you did, Mr.PHB" In a meeting one day later: "That Subversion thing is just slowing you down, can't we get rid of that?" – Piskvor left the building Sep 13 '10 at 16:23
  • 21
    I love source control and all its benefits as much as the next guy... but it just doesn't get your blood pumping as much as editing on the live production code. – davidtbernal Sep 14 '10 at 08:15
  • @notJim I love it and hate it at the same time. One of my current jobs more or less requires it from time to time. I ended up writing a "GoAway" script to display a down for maintinence message to everyone but me. – WalterJ89 Sep 22 '10 at 22:36
  • 1
    @WalterJ89-I was certainly joking! Some of the more stressful moments of my carreer have been when I've screwed something up on a live site! – davidtbernal Sep 24 '10 at 06:19
12

Wear khakis and a polo shirt.

  • 38
    "Wear a suit and a tie. No matter that the nearest client is three countries and 2000 km away from the dev team (and the clients have no intention of ever meeting the dev team), everyone else in the company wears a suit, as of tomorrow the dev team does likewise; violators will be fired. It Promotes Productivity!" (the Law of Unintended Consequences kicked in, as programmers analyzed the requirements and noted the lack of specification of the suit. A weirder collection of suits is yet to be seen; the Executive Order was cancelled the next day) – Piskvor left the building Sep 13 '10 at 16:29
  • I am reading this in khakis and a polo shirt – shieldfoss Jul 08 '13 at 14:11
11

Well, this one time I bid on a freelance reverse engineering job, only to discover that they quite literally wanted me to be able to change the past.

  • 24
    This cries out for more detail. – Michael Petrotta Sep 11 '10 at 21:17
  • 13
    They wanted me to be able to wait until winning lottery numbers were called, and then have their point of sale system report that they'd sold a winning ticket. Which, at the time, I was really hurting for money, and the system wasn't in the US, and I'd have done that. But it didn't report numbers in a cluster after the winning numbers were revealed. It reported every time someone bought a ticket. So I explained that if I had the power to do that, I'd be able to win the lottery at will, and wouldn't need their money. –  Sep 20 '10 at 16:32
  • 1
    Youch, not only impossible, but also illegal and unethical. I feel for you Torvaun... – brice Sep 21 '10 at 15:26
11

The last company that I worked for (and went bust) got a few bad reviews of the product.

So the decision was made by the upper management not to fix the problems but instead rebrand the product and relaunch it. Bugs included.

The other thing that made it really hard to stomach was the fact that the rebranding consisted of nothing more than a name change, which meant about 3 image swap-outs within the app and a few string replacements. The app looked the same, behaved the same, crashed the same.

Can't say I'm surprised the company didn't last.

Jasarien
  • 656
  • 4
  • 9
8

I was asked to write a report to show all sales and expenses for the future, a Nostradamus module for our accounts system :P He was very serious, it was not supposed to be a prediction but the actual values.

8

"Is there a way to make bar codes appear on the screen so that the user can scan them into the computer?"

Robert Rossney
  • 271
  • 1
  • 6
8

The question is in Bold, It needed a build up.

Client: "You need to write Automated tests using RFT against our popular Web application"

Me: "Okay, in which environment is it deployed?"

Client: "It is deployed in QA but you don't have permission to access it"

Me: "Yikes"

Client: "Can you somehow finish writing the Automated tests without the application?"

Me (in my mind): "I could, if I was superman or Chuck Norris"

sjt
  • 141
  • 1
7

My boss once insisted to me that Google's search results were all sorted by the highest bidder. He flatly refused to believe that Google tried to order its results by usefulness to the user. I tried to explain with simple logic that a system like that would result in the worst internet search engine imaginable to no avail.

In fact, he argued so vehemently that I'm pretty sure he'd just promised the client "the number one spot on Google if they were prepared to pay"... but didn't want to have to call back and look like an idiot.

*sigh*

Django Reinhardt
  • 1,510
  • 3
  • 13
  • 18
7

We had a product release date pushed back a week so we could get the internal company footy tipping competition system running in time for the start of season...

Evan
  • 1,422
  • 1
  • 11
  • 14
7

Back in 2003 we were two developers and a designer that got this...

I want you guys to do an imageserver application where you can just drag'n'drop images to upload them, without any extensions in the browser and it have to work on all platforms.

Truth be told we all looked at him and said something along the lines of

If we knew how to do that, we wouldn't sit in these chairs in your company right now.

Wesley Wiser
  • 186
  • 6
cyberzed
  • 933
  • 1
  • 6
  • 14
6

Boss: I find it disgusting that you come in at 11am every day. I want you here at 8am, to help the data in-putters with any problems, and stay and help the dev team. When they go home at 7pm, you can start uploading changes to the sites.

Ofcourse, because of the ubersecurity for these sites (pharmaceutical company), we can only have one connection from our IP address to their servers, and I had 24 sites to upload. I was coming in at 11am because id be in the office till 3 or 4am uploading sites.

I left very shortly after.

5

To learn a whole new programming language over the weekend.

EddieC
  • 1
  • 2
  • 8
    Seems do-able to me.. at least to get the syntax. You could look up the methods and stuff. – Jouke van der Maas Sep 09 '10 at 20:28
  • This isn't terribly difficult. – alternative Sep 10 '10 at 00:40
  • 1
    I would expect any junior level programmer to be able to accomplish this. – Chris Holmes Sep 10 '10 at 14:01
  • 3
    While I agree, it's do-able and some people do it for fun, it's also the _WEEKEND_ :) supposedly, non-work time. Anyway, junior programmers usually have to do this because they might have had all their experience in language 1, then they get a job and suddenly have to use language 2. The problem arises when you have to make significant changes to a project within days of first encountering the central technology. – John Ferguson Sep 10 '10 at 21:47
  • 41
    Not totally out of line, except for the part where he added, "on the weekend." That's _my_ time. – Andres Jaan Tack Sep 10 '10 at 22:04
  • 4
    Well, if that new programming language is C++, make that 50 weekends plus the weeks in between. `:)` – sbi Sep 13 '10 at 18:48
  • 1
    It happen a lot in my organisation and I guess almost every where. They didn't mean be expert over the weekend. They just mean learn – Zerotoinfinity Sep 17 '10 at 07:15
  • Oh, hell, sure. Bill as an external consultant. Problem solved. – brice Sep 21 '10 at 15:27
  • 8
    you just need a copy of "Teach yourself in 0 billable hours" – AShelly Oct 13 '10 at 21:12
  • 1
    Depends on the language, and how many languages you already know -- and how much mastery of it they expect you to have on Monday morning. – Michael H. Nov 15 '10 at 15:23
5

Can you add some post-processing so that the red part of this greyscale image is emphasised more than the green and blue parts?

Ricky Clarkson
  • 291
  • 1
  • 5
5

i swear to $Deity that a client once asked me to change (a+b)*0.5 to (a+b)/2

  • 7
    context? Depending on the language, those might actually be two different things. – Tyler Dec 11 '10 at 19:11
  • ...or they might not. In Delphi, for example, the two are exactly equivalent. In C, on the other hand, they're not. – Mason Wheeler May 13 '11 at 21:15
  • Did he identify the location? give you the formula ? Or the result of the work was this?. I had to do a similar job but after a lot of debugging the problem was identified as similar to this. – Aditya P May 16 '11 at 05:24
  • some of y'all have only get 1/2 a sense of humor. Or would that be 50% ;) – Michael Durrant Nov 30 '11 at 03:07
4

In my case it would be a client requesting a Web App feature to "block print screen" while on the application, which makes absolutely no sense because in order to do that you have to either disable the clipboard, disable the key for the whole computer, but no, they wanted to disable the print screen key client-side (through javascript), which makes it even more senseless, on top of that no matter what you do as long as you are not affecting the whole computer functionality (which, you shouldn't), the user could work around it by just focusing another application and using print screen when the focus is on that other window.

Ridiculous.

bevacqua
  • 221
  • 1
  • 8
4

Someone asked me to create a website which "copies what Google Local Search does and merges its data with other information coming from a database". I drew something in paper and the customer said it was ok; I charged him with 700 pounds (1000 US dollars) for a 5-days job.

I developed it in 3 nights and delivered it. I was proud of what I wrote until the customer said "It's almost ok. Why are you using the googlemaps rubygem? I asked you to copy, not to use"

PHB.

3

I was working on a digital marketing website where we were selling DRM-protected Windows Media audio files; audio books for the most part. Microsoft pushed out some sort of required compliance update for all vendors to implement, assuming the vendors are deploying desktop client applications on end-user machines. The update required the application to check DLL versions on the client's machine to ensure they're up-to-date. My boss was literally drilling me for every conceivable way in which our website was allowed to check a web client's DLL file versions in his/her system folder, even to the point of suggesting we write our own Windows Media Player skin to do so.

James Dunne
  • 111
  • 3
3

Coming late on that one but... I once worked as part of a QA team for a... let's say fairly big software project, which ultimately is part of a big telecommunications infrastructure.

Think big, as in really big, as in a few million people use it, to, well, communicate. Write, talk. Short distance and international stuff. That comes with billing as well to make sure it really matters.

The reason for me working with this team was that the technical launch date was approaching, and that they were quite late on the QA and defect identification front.

One morning I show up for our stand-up meeting, and the programme manager tells us that after a review meeting with the project's executives yesterday, they've decided that instead of having the software run on Windows 32 bits servers (which was decided like 2 years ago), they wanted it to run on HP/UX 64-bits machines.

No reason except that at the time 64 bits what becoming all the rate, so it must be better right? And totally justified. It was now only 2 weeks before the technical launch. Easy.

We fought this dearly (and with laughter).

Jeff Widmer
  • 101
  • 3
haylem
  • 28,856
  • 10
  • 103
  • 119
3

Got a task that reduced down to the Halting Problem. I had just finished a Ph.D. in Recursion Theory. So funny!

We settled for a (cheesy) approximation.

Stephan

  • +1 for management not understanding the limitations of computation, it would have been more reasonable for them to ask for time travel – recursion.ninja Nov 23 '13 at 18:12
3

At a credit bureau company, I was asked to replace a 100k C code service that checked fraud databases. Asynchronous multithreaded programming in Java replaced old C fork-join thechniques. The time frames were about 400-500 ms and 1-1.5 sec with stress. We managed to get 600 ms with ocassional peaks from databases' cache flushing.

  1. My boss asked to configure it with 100 threads because "you never know" -- I did some research and testing and found 20 threads worked best.
  2. The service depending on the one I wrote suddenly had trouble, my boss asked me to put a hardcoded timeout to cause more trouble, so we can assure I was not the faulty programmer.
  3. My boss asked me to log every single operation to have control of all the process. That's ok I know. He asked me to go production with this version: Gigabyte logs every day. Two monts later I managed to change log to INFO from DEBUG and got 30% faster.
  4. I was asked to go to five or six installations at 3 a.m. to replace the jar and change the name of the jar in the script that launched the service (the old C app was a mess and they were afraid I did the same thing).
  5. The worst: I was forced to manage a team of 8, 5 were outsourcers, at the middle of the project. 1 of us never did anything, the outsources did a web app that 2 years after is not in production yet.
Bill Karwin
  • 1,511
  • 13
  • 22
3

I was asked by my TL to connect the phone line directly to USB (no MODEM type converter in between).

I tried to explain him that it is not possible technically (the connecting of phone to USB directly). but he didn't want to listen.

Then, I had to write him a 20 page document explaining that phone is analog while USB is digital so a converter is very much required. Then he dropped the idea altogether.

3

Client: When the power is lost, the electronic door lock should go to the failsafe position.

Me: Yes, of course. Just for clarification -- the failsafe position is "unlocked", right?

Client: Could you make it configurable in software whether the door is locked or unlocked when the power fails?

Me: (speechless).

David Cary
  • 1,402
  • 13
  • 20
  • 3
    Been there, heard that. Sometimes they want it normally closed so no one can break-in. Other times they want it normally opened so they don't die a horrible, burning death in case of fire. Maybe next time we'll install two locks, just in case. – mcotton Sep 28 '10 at 16:00
  • 4
    They want a persistent actuator in the lock for setting the fail-safe position. In the defence industry this wouldn't even be very remarkable. – Tim Williscroft Dec 07 '10 at 22:37
  • 3
    Not funny as they probably meant can I make it configure it (while the power is up) and set what will happen the next time power goes out. Just make that 'configuration' available thru software. – Michael Durrant Nov 30 '11 at 03:11
3

I was asked to create a tenant blacklist website for landlords handling rental properties.

CokoBWare
  • 538
  • 2
  • 8
  • 11
    Sounds like a great idea to me, though they should call it a blocklist. Some tenants habitually cause real physical damage to properties, never pay, and get kicked out of place after place. How about calling it NotYourSpace.com or Evictus.com ? – Scott Fletcher Oct 05 '10 at 17:50
2

I was asked by my manager, a VP with connections to a support company in China, to transfer the support of my products to an external company. When I tried to explain to him that this was not possible given our contractual obligations to our customers, his response was, "Of course we can do it - we did it at "xxx company" (his previous employer) Never mind that the two companies made different classes of software, and had different licensing models.

2

Make websites...

  • without version control
  • create them on the production server
  • make changes using FTP direct to the production server
  • start programming with no finalised idea of features or design
alex
  • 140
  • 7
1

1) Use an Object Database in an ERP system

2) Use an EVA Database in an ERP system

3) Craziest: Build a visual-based business rules system (a la Outlook Rules) to hand to our users (without a test harness to test the rules) and "throw it over the wall" at them. So instead of us writing programs for our users, we could just write a dumbed-down programming language for them and let them write their own apps.

Chris Holmes
  • 2,244
  • 14
  • 14
  • Just noticed this answer. I'm curious (don't know very much about either), what makes #1 crazy/silly etc? – µBio Sep 14 '10 at 15:59
  • The OODB's we tested ended up being about 40x to 100x slower than RDBMS for reporting and large batch transactions. It's just not designed for an ERP system. They can be great for certain things; db40 is awesome for small projects and embedded apps, for instance. – Chris Holmes Sep 23 '10 at 15:46
1

Q: "See this word here, how do I know if before that I should write 'a' or 'an'?" A: Use "an" if the next word starts with a vowel Q: "What's a vowel?"

1

To make a user manual for an automated process. The user manual basically say "Double click foo.exe and wait until it's done"

  • 1
    Having to deal with the end user of what I write I would say that is almost always necessary unfortunately – Skeith Jul 04 '11 at 09:46
  • 1
    Probably you need another document to tel user to how to use that manual. – Chris Jul 28 '11 at 11:41
1

I had to create and integrate a TCP Server into a Microsoft Access VBA Application.

It works kinda well, but it's probably the most insane piece of software I have ever written.

Falcon
  • 19,248
  • 4
  • 78
  • 93
0

I was once asked to make a field in a database "semi-compulsory" by a manager.

Just recently I was asked to develop a web application I had no prior knowledge of based on some JPEG mocks of what the website should look like that had been created by a design agency in another country who normally do print designs and have no idea about the web.

Dan Diplo
  • 3,900
  • 1
  • 27
  • 30
  • Please add details about the semi-compulsory field. I must know more! – Kevin Laity Sep 10 '10 at 22:19
  • Development based on JPEG out of a print studio? Pfffft! Regular work. Now, about, the semi-compulsory field... tell us more :) – Agos Sep 10 '10 at 22:58
  • 3
    Semi-compulsory isn't as crazy as it sounds; there's lots of cases where it's "required IF condition X is true". With the right DB constraints you can even enforce this... though it'd probably be better at a higher abstraction layer. – Craig Walker Sep 10 '10 at 23:01
  • The semi-compulsory field came about because our database had to confirm to a national schema that defined the field should always have a value. I, naturally, made it non nullable in the DB. However, we also had to import data from various sources, and some of the providers complained that they didn't have any data for the field. Our project manager's solution was ingenious - make it "semi-compulsory". – Dan Diplo Sep 11 '10 at 13:37
0

We work as a Scrum team and do our estimates for user stories in story points. When I looked at my second half goals for this year is was a requirement the the our story points must be within +/- 10 percent of the actual development hours spent on the story. For those involved in Agile you know story points are unitless and are based on a Fibonacci number sequence. I have yet to figure out how to make estimate match the actual how anyone could put such a requirement on the team.