Slashdot Mirror


What Do You Do When Outsourcing Goes Bad?

Xphox wonders: "Recently we have been referred to an outsourcing company to finish customization on a script that the author had no time to complete. Everything was going fine until recently. At what point do you consider they may have just ripped you off, and how do you know when to file complaints and withhold payment?" "I have been working with what I thought was a reputable outsourcing company, referred to me by the author of the software package. We agreed that payment would be made once everything was completed. After a few missed deadlines, the project finally seemed to be finished. The only thing left was a small bug fix, and an install script which needed to be completed. As agreed, he delivered the install script, and we made the final payment. Upon testing the new install script we noticed things did not work as intended, and all attempts to contact the outsourcing company has resulted in the following answer:
'My guys are still working on it.'
My fear is that if I don't act now, I will not be able to recover any funds, and will be stuck with a product that is useless. It has been 9 days since I've received an email from them, and I'm starting to think I've just been taken advantage of. Since the script is protected with Source Guardian, I am unable to finish the modifications myself."

70 of 751 comments (clear)

  1. Simple test here: by Skyshadow · · Score: 4, Funny

    I can usually tell when outsourcing has gone bad. It's about the time my boss calls me into his office on a Friday afternoon and explains that the company needs to right-size their domestic staff and that, unfortunately, my position has become redundant.

    --
    Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
    1. Re:Simple test here: by Anonymous Coward · · Score: 5, Insightful

      Before the inevitable avalanche of anti outsourcing and anti india comments, let me point out that the author hasn't made it at all clear which country their firm is located in, and wether or not the outsourcing firm in question is located in the same country.

    2. Re:Simple test here: by RWerp · · Score: 3, Insightful

      I hate it when people don't take losing their livelyhoods like good little sheep, too.

      And I hate it when people accept the notion of free market and competition only when they are on the winning side.

      --
      "Long run is a misleading guide to current affairs. In the long run we are all dead." (John Maynard Keynes)
    3. Re:Simple test here: by Anonymous Coward · · Score: 2, Insightful
      I apologize for being so greedy and lazy as to live in a place with a higher cost of living than the third world.

      I've yet to see any foreign company turn out code better than an American development team. They're cheaper, not better.

    4. Re:Simple test here: by greenhide · · Score: 4, Insightful

      I remember being on a trans-pacific flight with this manager for a major corporation. He had been in China overseeing some project.

      He said they're moving out of China soon.

      Why?

      Because the labor (these are specialized workers) is too expensive. That's right, China is too expensive.

      It's true that the wage that the Chinese engineers are asking for has gone up. But that's a natural factor of supply and demand. Eventually, they are going to actual start demanding to be paid what they're worth to the company. However, their wage is still significantly lower than the one that the US engineers received way before the outsourcing occurred. So assuming that all other parts of the equation are the same, the company is still making more profit after *salary* (excluding other expenses) than it did when it wasn't outsourcing at all.

      Nonetheless, this company is going to move to another country where the workers can be paid significantly less, thus maintaining their huge post-salary profit margin (again, discounting expenses in other areas).

      Why are the doing this?

      Because globalization has made it significantly easier to do so.

      Because of globalization, it's now possible to start up a working factory, shop, or headquarters pretty much anywhere in the world. This means that you can specifically target the most impoverished countries, countries where the average person makes a 10th, 100th, or 1000th of what an American might, and set those people to work.

      Now, in a non-growth system, where companies maintained their size and scope, companies would be able to hop back and forth between countries at whim. Whenever country A became too expensive, they'd simply move to country B until it became too expensive, then hop back to country A (now desperate for work).

      However, capitalism cannot exist without constant growth. So, one side effect of this global offsourcing behavior is that as the salaries grow for the workers, so do their spending habits. They then, in turn, cause growth in their country's economy and increase demand for supplies and services, forcing the businesses to hire more workers to supply this demand.

      As a result, eventually there will be no country where the workers haven't gone through this process, so there will be no place to turn to for "cheaper" labor. This, of course, assumes consistent growth.

      Of course, this does pose a problem: currently, we're using up resources on a grand scale. And if our population growth continues as the average consumption of individuals go up, we may end up seeing a problem with a shortage of resources. This will cause prices for items to go up, which means that the increased salaries will have decreased worth (this is pretty much the case now in the US: you can live like a king in Beijing on $20,000 but in New York you'd barely be scraping by).

      Therefore, only those with salaries at a higher order of magnetude will still live comfortably. In other words, CEOs and other financial elite. So, the gap between the wealthy and non-wealthy will continue to grow.

      So, I do think that people who point to offshoring as being a tool to benefit those at the top are pretty much dead on.

      --
      Karma: Chevy Kavalierma.
    5. Re:Simple test here: by ChrisMaple · · Score: 2, Informative
      However, capitalism cannot exist without constant growth.

      There is nothing in theory or in practice that says capitalism requires constant growth. Capitalism is the protection of rights, particularly property rights. Growth results from this because people's efforts provide secure returns, protected from government and private thieves. Other systems don't provide this protection, so people have less motivation to try to improve their condition.

      --
      Contribute to civilization: ari.aynrand.org/donate
  2. Saving your bottom line. by grub · · Score: 5, Funny


    1: Stop payment on cheque.
    2: Demand refund of deposit.
    3: Get one return ticket to contractor's location via Expedia.
    4: If 1 or 2 fail send return ticket to "IcePick" Vinnie.
    5: Pick up Vinnie at airport in a couple of days.
    6: Take money home and count it or enjoy photos of mangled corpse(s).
    7: ???
    8: Profit!!!

    --
    Trolling is a art,
  3. Rule #1 when you pay someone to code for you... by rednip · · Score: 5, Insightful

    Get the source code! You might have called it outsourcing, but what you really did was pay someone to have an code empire in your domain. Even if they do finially deliver the finished product, you stuck with them for further development.

    --
    The force that blew the Big Bang continues to accelerate.
    1. Re:Rule #1 when you pay someone to code for you... by ect5150 · · Score: 2, Insightful


      I thought Rule #1 was to first establish what requirements needed to be met to actually say "its done" to prevent exactly what's happened to this guy.

      That way there is no argument over any money issues or finished product. If its meets a list of requirements, you get the software, they get paid, if it doesn't, they don't get paid, but I guess you don't get a product either.

      --
      I have never let my schooling interfere with my education.
  4. Go public by Giro+d'Italia · · Score: 5, Informative

    Name them, especially here, and let them know you've done it. That will teach them a lesson.

  5. Caveat Emptor by infinite9 · · Score: 5, Informative

    So you paid without testing the final product? I suspect all you can do now is sue. We've received "finished and tested" outsourced projects before that didn't even compile. You have to be very careful out these things.

    --
    Disconnect your television. Do your own research. Draw your own conclusions. They're probably lying. Don't be a sheep.
  6. Lying by Mumpsman · · Score: 2, Insightful

    You know that feeling you get in the back of your head when you hear someone telling a lie? The "OMG...this person is lying to me, and I'm paying them to do it" feeling?

    I usually let that happen twice before I call them out on it.

    --
    No battles to the death are recalled. Mumpsman can hit to attack and cause brainsmashing.
  7. Is this really necessary? by __Maad__ · · Score: 2, Insightful

    I hate to take this stance, but it has to be said. This thread is probably going to get a lot of cautionary posts that ring to the effect of "you get what you pay for" and so on. And seriously -- is it that hard to find someone with the skills to do a task like this ("scripting", as you say) locally, at a reasonable price?

    --
    -- Maciek
  8. You learn... by kzinti · · Score: 2, Informative

    Next time you have a comprehensive acceptance test. YOU conduct the test, or you designate a third party. You do not allow the contractor to conduct the test. You test everything that matters - features, performance, capacity. Whatever. You spell this out in the contract and you don't pay until it passes.

  9. You get what you pay for by JasonUCF · · Score: 5, Insightful

    What time do you have to react? Like if you act now as opposed to two weeks you'll make back your money? Unless you sent the money through a very trusting (read, you do a lot of business with) bank that has some sort of angel stop-payment plan.. you are S O L.

    Where is the contract? Whose laws govern it?

    You went with a company outside of your country to do a deal..

    Why didn't you test what you got first and then pay for it...

    I smell FUD... no details here, is this just an anti outsourcing fable?

  10. Hell, itll bite you. by Dr+Reducto · · Score: 4, Funny

    My friend works as a consultant, and he was consulting at a company where they decided to outsource some programming to Russia. They get the program shortly before the deadline, and it DOESN'T WORK!!!

    So they take the program, rip out all the shit (a surprising percentage of it), and rewrite the whole thing pretty much from scratch in the course of a week. They finally get it working, and hand it into the boss, without telling him how badly they got fucked by the outsourcing. The boss is impressed by the quality of the code, and decides that the next project they do should be sent to the same firm. Luckily, my friend wasn't around the next time they went with the low-cost outsourcing.

    1. Re:Hell, itll bite you. by ESarge · · Score: 2, Insightful

      So don't lie to your boss.

      Never lie to your boss - it's always better to admit you made a mistake then fix it.

    2. Re:Hell, itll bite you. by sh0dan · · Score: 4, Insightful
      They finally get it working, and hand it into the boss, without telling him how badly they got fucked by the outsourcing.
      How on earth did he expect his boss to know not to hire the same firm again? I know most bosses are stupid assholes, but at least give the boss a chance to make an intelligent decision!
    3. Re:Hell, itll bite you. by Anonymous Coward · · Score: 4, Insightful

      Not letting management know how bad the code was is a HUGE mistake and disservice to your employer.

      Never let social pressure or the unpleasantness of being the bearer of bad news stop the flow of information in your organization. If, out of loyalty and dedication to your people you work overtime for a week and get it working, you have to let them know, or they won't be able to be loyal back to you in return.

      It also stops the Russian firm from realizing that they aren't giving out a good enough product to stay in business, and screws them over too.

      Basically, letting information stop with you instead of passing it on damages the whole capitalist system in the long term, and you should only do it if you like being poor and unemployed.

    4. Re:Hell, itll bite you. by s0m3body · · Score: 2, Insightful

      please, tell me one thing

      if they could rewrite it in one week, they could have written it in 2-4 weeks

      so why outsource ? i don't believe that you can outsource a project and get a final result in 1-3 weeks... so it makes NO sense

      i think that you are telling a story which is not yours, and which you don't understand

  11. when it goes bad?!? by macsox · · Score: 2, Informative

    disclaimer: i am a progressive democrat.

    but, really. when it goes bad? i have yet to see an example when the cost savings to a multinational corporation justify the damage done by outsourcing work.

    you'll have people point to the study that came out that says that outsourcing is good for the economy. but is it? what it really provides is a decline in the quality of jobs in america.

    let's think about this. company x has $300,000 it spends on paying 100 engineers. then it discovers it can save $200,000 by sending those 100 jobs to india. so with that $200,000, it hires 200 more engineers in america! net gain of 100 jobs here, and 100 in india! everyone wins!

    except, of course, that the jobs that remain here pay 1/3 of what they used to. and that doesn't even include benefits. the moral of the story is, as always: when the company and stockholders win, you better be a stockholder. because if you're an employee, you're screwed.

  12. Source Guardian??? by Cryptnotic · · Score: 2, Insightful

    You've been ripped off.

    --
    My other first post is car post.
  13. Life's lessons by binaryDigit · · Score: 5, Insightful

    As agreed, he delivered the install script, and we made the final payment. Upon testing the new install script we noticed things did not work as intended,

    You made payment BEFORE you ran formal acceptance testing of the application (yes, including the installer). That was your fatal error. Once you've ponied up the bucks, you've lost all leverage short of a lawsuit.

    If I were you, I'd email then and request a specific timeline/deadline for completing the work. Make sure your email contains language stating that what they delivered does not meet their obligations. Assuming they respond similarly (i.e. "we're working on it"), then at least you have some level of proof that they acknowledge that they are potentially breaching the contract you have. Then take their asses to court.

    Good luck. Next time remember

    - formal requirements
    - explicit deliverables (see requirements above)
    - formal acceptance test to ensure that the software actually meets requirements

  14. Final Payment? by spacefrog · · Score: 3, Interesting

    Let me get this straight, you made final payment *without* getting the source code?

    Wow.

    1. Re:Final Payment? by andymac · · Score: 4, Informative

      Not all contracts for s/w development transfer source code and the related IP. Some contracts will transfer source for use internally only for maintenance purposes, other contracts will transfer it for full use (full copyright transfer, etc.). But it is not uncommon to have a contract where the contractor retains some rights to the IP (in effect licensing the code to the contracting company).

      Don't assume all contracts are the same.

      --
      "Content's a bitch."
    2. Re:Final Payment? by nojomofo · · Score: 3, Interesting

      What if the vendor has a specialty in some domain, and has built up a library over time? The vendor can then build outsourced solutions for less money using the library that they have built up, and save the customer both time and money. In that circumstance, it is very justifiable that the customer might not get all of the source code. Which should, of course, be stipulated in the contract.

  15. Unfortunately the parent option... by tekiegreg · · Score: 4, Interesting

    Might be your best one, legal remedies overseas get sickening. Particularly in the India(is that jurisdiction?) judicial system. Something most outsourcing companies really don't understand, if the sh*t hits the fan on your contract the best case scenario is that it would take you a while to legally get compensation; worst case scenario is that the courts tend to favor the natives to their country more than the foreigners and you're out of luck.

    --
    ...in bed
    1. Re:Unfortunately the parent option... by Skyshadow · · Score: 5, Interesting
      I have to agree with this 100%.

      I assume from the lack of considering a legal option that the OP is talking about off-shore outsourcing (I know the outsourcing apologists in this thread have been busily suggesting it isn't off-shore... Sure, guys). Getting any satisfaction from an off-shore court is almost impossible.

      My last company was the victim of out and out fraud on the part of a Chinese firm. When my company threatened legal action, they basically laughed at us. They were right to laugh -- essentially there was no above-board way to get any legal judgement against them. We were foreigners, plus we didn't know who to bribe (the Chinese legal system is incredibly arbitrary and corrupt).

      We never saw a dime. When the investors found out we'd lost a huge amount of money *and* didn't have the scheduled release, they took over the company and liquidated it.

      That's part of the reason I'm not too worried about offshoring as a long-term trend (as opposed to the fad it is now) -- you can't entrust anything critical overseas because you have zero recourse if you're screwed over or incur liability.

      --
      Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
    2. Re:Unfortunately the parent option... by ari_j · · Score: 3, Interesting

      You can get a judgment, no problem. The hard part is enforcing it. In the US federal court system, you can sue a foreign company and the US federal courts will assert jurisdiction over it if that company has passed a given legal test, which I will refrain from enumerating here in any way, but essentially covers cases over the specific involvement that company has within the US. For instance, a company that sells cars in America would be subject to jurisdiction here. It's my first thought that the federal courts would assert jurisdiction over outsourcing firms, as well.

      The problem is that, even if you get a judgment against the foreign company, how are you going to enforce it? The courts can't imprison them for contempt, because they're in another country. Extradition for contempt? Ha, I wish.

      So, if you get a judgment against a foreign company, you'd have to go over there with Vince and collect on it the hard way, anyhow. Why not save the legal fees and just go over there in the first place, without having to file any expensive lawsuits in federal court?

      Disclaimer: I am not a lawyer. Everything I just said could possibly be wrong, but may not be, and is in no way intended as any form of advice, legal or otherwise. If you believe anything I've said in this comment, you assume all risks and liability that may ensue, be they personal, civil, criminal, or otherwise. I have also never played a lawyer on TV. Confusing me with someone who has would be flattering, but incorrect and foolish.

    3. Re:Unfortunately the parent option... by bani · · Score: 5, Insightful

      don't get mad, get even.

      just write a nice letter to the chinese embassy / chinese law enforcement, that a company you were working with turned out to be a front for a pro-democracy revolutionary group, falun gong, or pro-taiwan-independence movement or something.

      i've gotten chinese spammers shut down this way, when they laughed at me. they aren't laughing anymore.

    4. Re:Unfortunately the parent option... by Johnny5000 · · Score: 2, Insightful

      i've gotten chinese spammers shut down this way, when they laughed at me. they aren't laughing anymore.

      Wow, you're right... getting a brutal dictatorship to torture and kill people who send you unwanted emails is *awesome!*

      asshat.

      --
      The libertarian solution to the failures of capitalism is to apply more capitalism til the failures are fixed.
    5. Re:Unfortunately the parent option... by bani · · Score: 3, Informative

      while the chinese government might do a lot of distasteful things, they dont always do things completely arbitrarily. even totalitarian states like to have an image of due process. :)

      anyway what happened is they had their offices searched and their computers confiscated (according to the whiny semi-apologetic mail later received). they were basically shut down totally, at least for a short while.

      they werent killed or tortured or even imprisoned. but they were definitely scared shitless, and they arent laughing anymore. it cost them time, money, and probably a heart attack or two.

    6. Re:Unfortunately the parent option... by Altus · · Score: 2, Insightful

      "Report me to Homeland Security for terrorist links because i disagree with you?"

      you joke... but how long until that becomes a viable way of dealing with undesirable people... the same way it is in China.

      --

      "In America, first you get the sugar, then you get the power, then you get the women..." -H. Simpson

  16. When to ask by doombob · · Score: 2, Funny

    When you realize that the outsourced company thought you wanted Finnish customizations on your script. That would be a good time to ask for your money back.

  17. When you hire a... by glenrm · · Score: 4, Informative

    Software Engineer, you get more than just a coder, you get IQ, you get somebody who understands the low and high level testing that needs to be done, you get somebody who can help you ask the right questions, you get somebody who can make sure the code compiles, that makes sure you get the code, that can rewrite or the crap code you already have, somebody that can save your ass, that is why we cost so much...

  18. Firsthand experience by cOdEgUru · · Score: 5, Interesting


    I consulted for an Atlanta firm which dealt in Sarbanes Oxley compliance software and my firm agreed to develop a rule based data adapter which sucks in raw data from external enterprise systems such as SAP and translate it. And my firm agreed to do so without having any one (else) with a bit of enterprise development experience hoping we would be able to outsource it to someone else in India (despite all my "muted" protesting).

    Well, we picked a firm (which I believe was cheap enough to be picked), talked to a couple and they seemed knowledgeable and we were on. I wrote down the requirements myself and passed it on to them. There were two who where hands on and I provided any help they required plus the project management. It all went to shit in a couple of days. First, they wanted to bounce ideas off and around for a few days. Here, I am working from 8:00 AM in the morning through 2:00 at night, drilling requirements in to their thick heads, answering questions, go to bed late, only to wake up and realize that they had the same questions and were waiting all day for me to wake up!!

    I got so pissed off after having to spend most of my waking day working on what they were supposed to, putting together answers to questions already answered, and chatting with them over IM, losing layers of patience bit by bit before calling them morons to their face. They were still billing us a full 8 hours for doing nothing, blaming it on unclear requirements.

    After going to and fro for over a week, when nothing got built, I turned around and got my buddy who works for HP in Cupertino to pick it up. He coded it in his sparetime and pretty much finished it single handedly in the time that it was promised.

    The biggest pains in outsourcing, from where I stand, is the disconnect between the teams, the clarity in requirements and the work ethics. I have seen the other end of the spectrum too, when I left for India for a short stint and worked with a team on a high risk project and had to deal with all sorts of management stupidity and workplace politics, putting my team through 14 hour work days, getting pissed drunk together on build nights and delivering on our promise with in the expected timeframe. The work ethics atleast on a developer level is not that different, if you get good young kids, they are smart and loyal. But if you step up to the level of management, you do find hundreds of incompetents who suck the living blood and exist solely to serve their own interests and to collect their paychecks.

    I am not prejudiced. Infact, I am Indian and everyone mentioned above is, as well.

    1. Re:Firsthand experience by Monty_Lovering · · Score: 2, Insightful

      I am a Client Service Manager for a European high-tech contact centre. We do support work for hardware, software and Internet security companies based in Europe and the USA.

      We cover 16 European languages, so obviously fulfil an outsourcing requirement American companies couldn't hope to do in house. Nothing to complain about there.

      We also outsource support work, first in English to a web-based (like Siebel or RightNow) support centre in Karachi.

      They are cheap and pretty good. Their RPA (responses to solve an assigned incident) is around 1.5, about the same as US-based teams or our own European teams. They do close about 10% less incidents on the first response (FCRR) than the Americans or Europeans though.

      This is about half due to them not being native English speakers and either misunderstanding at first or being misunderstood, and half due to them persisting in doing 'shotgun' initial posts, giving one likely fix and a few others, and thus confusing some customers.

      The main thing is you cannot hint, or suggest, or tell. You have to ask; if you've got a good suggestion they will embrace it, they will accept one they don;t agree with, but tell them to do something without consultation and they are a little insulted.

      Also, actually SHOWING you are annoyed is sometime the only way to get your point over; they're a more emotive and dramatic culture. Being all off-hand and English sometimes goes over their heads.

      They crap over a Latin American team run by the client from a great height. I really like the people I work with.

      The European side of the business is far more easy about having a Pakistani support centre doing work for them. Some of the attitudes on the American side of the company are a little less relaxed. South Pakistan is actually comparatively cosmopolitan compared to the tribal north; most people living there moved from India during partiton, so it's a mixed society with no single and ultra-"orthodox" tribal view holding sway; one of the techs is a woman.

      The US head office insist on the Pakistani techs using 'European' names. I'm sorry, but if someone has a problem with having a problem solved by Iqbal Abdul, then they can take their bigoted ass to the FAQ's. Funny thing is, just like Taiwanese people can have really whacked-out ideas of what an English name is when they choose one (Ceiling Fan, I shit-you-not, and Euphoria Wu. Seven and Golden were really popular too), so too are Pakistanis ideas of European names rather droll. Paul George, Martian Nighcolls (sic) etc..

      I think this is insulting, and in fact another American client with a vastly more complicated product uses a massive phone support centre in India and the agents use their own names.

      The idea of a customer getting racist or abusive to one of the Indian staff is something that makes fire come out the boss of the US company's support department, so different companies/indivduals have different views.

      I grew up in a really cosmopolitan part of London, and really am not bothered by dealing with the guy who runs the place, and is _really_ Muslim. Of course, he hates the bad guys just like everyone else. They write really old-fashioned courteous English, and sometimes US customers take offence because of it.

      Recently the company closed a US phone support centre and outsourced their US phone support to Canada. We couldn't compete with the price (using an Irish partner to take the calls).

      We had a bad time setting up a partnership with a centre in the former Yugoslavia, but now have a pilot going well in Roumania for the 'big five' European languages.

      Invariably most current volumes of support calls will be there within two years. In Holland we shall just support still more high-tech products; a consumer multimedia program is a tad simpler than administering network security. So staff will go but be replaced by more skilled, better-paid jobs.

      In effect the shittier jobs will go to people in other countries who think the

  19. EULA? by sremick · · Score: 2, Funny

    Getting your money back for bugs in the software? Well, did you "accept" that End User License Agreement presented to you on install? Heh.

    If so, you're probably SOL. I've never managed to get my money back from Microsoft due to the bugs in their software either.

    It probably said something about this EULA superceeding all previous EULAs and contracts too.

    (Note to the humor-challenged: this is a joke. Sorta.)

  20. Wrong website by acidrain69 · · Score: 2, Informative

    This is not a slashdot issue. Just because the people are writing software, doesn't mean it is a technological issue.

    This is a business issue. Is my contractor delivering? What do they have done? Ask to see it. What milestones have been met, and what is being done to resolve the remaining issues? Perhaps your agreement with the outsourcee needs to be rethought, it sounds like it wasn't planned very well.

    I have absolutely ZERO experience in outsourcing and writing scripts as a job, and ZERO experience in managing a business and relations. These are obvious answers to obvious questions that do not belong on Slashdot.

    If you just tried to save a buck by outsourcing, then you deserve to get burned. You are just jumping on the outsourcing bandwagon without making sound business decisions. There is a level of control lost when you outsource something. You sound like you have no method of feedback and reassurance. Shame on you.

    --
    -- Having a Creationist Museum is like having an Atheist place of worship
  21. What I do... by HangingChad · · Score: 3, Insightful
    What Do You Do When Outsourcing Goes Bad?
    • Point and laugh, fighting the urge to add "I told you so" during the hysterics
    • Raise my rates
    • Profit!!!
    --
    That's our life, the big wheel of shit. - The Fat Man, Blue Tango Salvage
  22. Worse possible math EVER. by hummassa · · Score: 2, Insightful

    300,000 $ = 100 engineers. 1 engineer = 3,000 $
    100,000 $ = 100 india engs. 1 ie = 1,000 $
    200,000 $ = 200 engineers. 1 eng = 1,000 $

    each eng here will survive with the same salary as in India? I think not. The manager will get 50,000 $ in bonuses, and the VP the other 150,000 $. everyone wins, if by everyone you mean the PHB and the VP. ah, and the stockholders won't see a dime, too.

    --
    It's better to be the foot on the boot than the face on the pavement. ~~ tkx Kadin2048
  23. File *NOW* by erikharrison · · Score: 2, Informative

    Put the pressure on right now, seriously. Then never, ever work with them or any other outsourcing company that "protects the source" by wrapping it up somehow.

    I've worked with these "reputable" outsourcers before. Really, there is a crop of programming companies that have turned up in the last few years that make the 15 year old outsourcing companies sick. I've been in a position where I had an internally modified GPL source, needed a feature added, and when the CTO decided to push that work out of house, we wound up with a binary and that's it. And it didn't do what we needed it to do.

    The company you're working with has probably been behaving this way as long as it's been around, but this shit needs to stop. Lay down the law and pull out, as much and as fast as you can. There are reputable companies who do this kind of work. However, it is almost always small companies, which also release real products that will get you the best result - like Omni, who makes OmniWeb for the Mac, also was well known for being outsourced to for game porting. Look for someone who also makes a product, then you'll have found someone potentially worth working with

  24. Tried this by PsiPsiStar · · Score: 2, Funny

    Our company went with this option. Vinnie has taken our check but has yet to extract vengance. Inquiries into the matter via his secretary get the reply "I'm working on it."

    --

    ___
    It's the end of my comment as I know it and I feel fine.
  25. I think you got used. by Badgerman · · Score: 2

    The best bet I'd say is talk to your lawyers and review the contract. But you made several mistakes.

    1) Always test the application yourself from compiled code. Its too easy for people to code to pass tests.
    2) Always have source code. Always.
    3) The final version should be compiled from source code.
    4) The code should be reguarly reviewed by your staff for errors and suspicious code. NEVER give someone else access to your network.

    Outsourcing is a real Pandora's box.

    --
    "The Sage treasures Unity and measures all things by it" - Lao Tzu
  26. Re:Hire domestic programmers next time by SmokeHalo · · Score: 2, Insightful

    Funny, nowhere in the text did it say that the outsourcing company was not domestic.

    -1 Assumption

    --
    I'm not good in groups. It's difficult to work in a group when you're omnipotent. - Q
  27. 3 letters known to management... by catdevnull · · Score: 2, Insightful

    The 3 letters that management are just now starting to understand are : TCO. Total Cost of Ownership isn't something that comes from a single ledger in the bean counter's office. It's often learned the hard way by unexpected costs like the cost to fix mistakes or the loss of important clients or businsess deals. When an out-sourced company/individual does a poor job because you spent the least amount of money possible, the return on the investment is low. ROI are 3 more letters. After a while, the executives in charge figure out that investments are tied to ownership.

    I think the outsourcing epidemic is abating because of the backlash to the off-shoring. The two are different but have become synonymous. I think both are a trend in which companies experimented and won and lost. It works for smaller companies who can't afford their own IT department so they can hire a company to provide a level of service they cannot match themselves. Conversely, it might be considered a step down for a fortune 500 company to look to a start-up company to handle their enterprise level needs. I might be generalizing a bit, but it works for some things but not others. For example, Janitorial staff might work but IT desktop support probably might be a bit more difficult. I think the outsourcing option might not be on the table when/if the economy improves.

    --

    I might know what I'm talkin' about, but then again, this is Slashdot...
    1. Re:3 letters known to management... by captainClassLoader · · Score: 2, Insightful

      catdevnull says:

      The 3 letters that management are just now starting to understand are : TCO.

      I think another 3 letters the original poster's managers could stand to learn about would be CYA, as in the non-existing contingencies for nonperformance section of the so-called contract they signed with that dodgy outsourcing firm. Doesn't seem to be much CYA going on in the original poster's company, let alone the subtleties of TCO.

      --
      "The plural of anecdote is not data" -- Bruce Schneier
  28. Ice PIck Vinnie by Alien54 · · Score: 2, Funny
    I usually reserve for spammers.

    On the other hand, Igo Kutchyakokov is reserved for over seas operations. He works with a marvelous Japanese Italian negotiator, Makya A. Soprano, related to the New York City and New Jersey Soprano families.

    --
    "It is a greater offense to steal men's labor, than their clothes"
  29. OUTSOURCING != OFFSHORING by drew · · Score: 3, Insightful

    good grief, like 2/3's of the comments here are rants about paying people in another country to do your work or claiming that the poster is screwed because he did business with a company from another country. he never stated where the business he asked to do the work is located. it's possible that they are in the same city. (of course, they might be in india, but nobody here knows that, you're all jumping to conclusions.)

    there are a lot of companies that need programming work done from time to time but don't see the need to pay dedicated programmers full time salaries. there are also companies that have dedicated programmers, but occasionally have more work at one time than their in house staff can handle. i've done work for both types of companies before- sometimes they were located only blocks away from me.

    anyway, that being said, if you had a contract, and it specified that you wouldn't pay until the work was complete, you should first try and stop payment with your bank if it's not too late. if it is too late, i would get a lawyer on retainer, and notify the firm of that fact. sometimes just knowing that will be enough to get them to cooperate with you. if not, then you've already taken the first step towards either getting your working product or getting your money back.

    and it may be too late now, but for future reference, never sign a contract that doesn't give you the source code. now, even if you resolve this issue with your provider, you are stuck going back to them for any future modifications....

    --
    If I don't put anything here, will anyone recognize me anymore?
  30. What else do we do? by big-giant-head · · Score: 4, Insightful

    Please I haven't seen any Indians who can do my job better than I. In most cases it isn't as good, however they can work 5$ an hour I can't. So even If I can do the job of 3 indians, it's still cheaper to hire 4 or 5.

    Thing is with American middle class losing thier jobs who will buy Overpriced American products ( they stay overpriced because the CEO's must still make Multi-Multi million dollar pay checks)

    I don't see Indian Programmers making $5K a year standing in line to buy $2000.00 MayTag fridges and $30,0000 ford/Chevy/dodge SUV's .... etc. etc.

    We are already seeing the short sightedness of all this Look at the stock market it is contiually weak, in spite of the fact that we have been in a 'recovery' for 3 years. Why, because consumer demand isn't as strong. Well when you are destroying good jobs and replacing them with lowing paying jobs, people are not rushing out to buy non-essential crap. Add rising health insurance rates which no one in the US wants to do anything about.

    If the Indians think they are so great now, just wait, there is No great love for them here in the States, As soon as the Chinese or Africans or whomever can do the job cheaper, the Indians will be left with a bunch of vacant Call Center/Tech Centers and rising unemployed middle class. What will they do then, Nothing they have nothing to sell anyone wants other than the fact they were cheaper, for a while. To boot they will have left behind some major bad will on the part of the American public....

    All the 'Free Market' fans here (everyone is free market till they lose thier job, house etc....) will be on the Chinese/African ..... band wagon.

    There is No such thing as a free lunch or a free market someone has to pay......

    --

    So Long and Thanks for all the Fish.
    1. Re:What else do we do? by j-pimp · · Score: 3, Informative

      There is No such thing as a free lunch or a free market someone has to pay......
      Free market is free as in speech. Free lunch refers to free as in beer.

      --
      --- Justin Dearing http://www.justaprogrammer.net/ We're just programmers.
    2. Re:What else do we do? by networkBoy · · Score: 2, Interesting

      You can make more money than your 'replacement' flipping burgers,

      When adjusted for cost of living this statement is not true. I live in California, where we have one of the highest costs of living. I make reasonable money at my high tech employer, yet I am barely able to make ends meet. I'll acknowledge that I can likely live on less, but if I were flipping burgers I would also be completely homeless. I can not live on $6.75 an hour. Not when the cheapest rent I can find is $750 a month in some really really shitty apartments. I opted to upgrade to $800/month apartments because the area was better and I can feel safer with my wife and two kids. I normally don't bash H1B's and such, as I work with many of them, they are nice, and I enjoy their company.

      What I can't stand about your post is that it assumes that they are getting more benefit from my job than I give up by loosing my job. To that I cry bullshit and such very loudly. The nature of the beast is to move where the costs (labor, EPA, Building, etc.) are lower. This I understand. I simply re-create myself into something too valuable to be shipped overseas, now I stay employed. If I loose my job to an individual over there, they will earn a reasonable wage, but it will not be the same total dollar amount I earned. Likely it will be 10x less. Thus your argument that one dollar does them the benefit of my ten may be true, but it doesn't matter, because they are only going to get paid one dollar for every ten I make. At the best the loss of my job helps my Indian counterpart to an extent equal to my loss. I think that is not how it would work though. I think I would loose much more than they would gain. -nB

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    3. Re:What else do we do? by LoveTruthBeauty · · Score: 2, Insightful
      Adjusted for the cost of living a US standard of living vs the cost of living an Indian standard of living, perhaps, but that's apples and oranges, which is exactly my point. The cost of living in the US is certainly much higher than in India, but so is the quality of life. Some people believe that they deserve to be wealthy because they were born in a wealthy country, and therefor those born in the 3rd world must deserve that. I am not one of those.

      For an Indian to pay for the same health care, same education, same clean streets, same safety etc. it would take the about the same amount of US$, and even then they best they can do is create an oasis of comfort in a sea of poverty. This can be seen by looking at the hotels. The cheap ones are definately cheap - less than US$1 /day, and it shows. If you want to stay in India at the same quality as your US Best Western, it will cost you about the same as in the US. Its very expensive to provide 1st world amenities in a 2nd/3rd world country.

      > At the best the loss of my job helps my Indian counterpart to an
      > extent equal to my loss.

      Even if this were true (its not), India needs more help than the US. When Indians clog their city streets with SUVs because they want the freedom to go offroad oneday maybe, instead of the lucky ones transporting their entire family on a 50cc step through, then the US will have an equal claim.

      Its understandable that someone who hasn't been to India might begrudge losing their job to an Indian, but if you take the time to go to India and see for yourself the difference in quality of life, you will be amazed at the reactions from locals who just cannot fathom being so wealthy as to be able to throw away such a fortune on a holiday! The amazing thing is, for the cost of a few month rent, you can fly to India and live like an Indian for months. I highly recommend it.

      --
      Which nations do you trust to use nuclear weapons responsibly?
  31. Contracts and Escrows by eventDriven · · Score: 2, Interesting

    I would be surpised to find that contract boilerplate does not exist for these scenarios, but here is what I think my general (oversimplified) guidelines would be:

    If the script was some sort of feature unique to my business or processes, I would contract to own the source.

    If the script is for a general feature that the developer wishes to maintain as an offering to other customers, than the contract should be written as though you are sponsoring the development of the feature (1.e. lower price)

    If the situation is somewhere in between I would negotiate source escrow for specific deliverables/metrics.

    But in regards to your current situation, continue to request his attention to your concerns. If that fails, request the source. If all else fails flame him all across the web.

    I don't think I've ever heard it discussed much, but distributed flaming/shaming (flashflames) could someday be an effective punishment. It sounds stupid, but I'm sure there are employers out there googling prospective recruits/contractors.

  32. I work for a consulting firm by merlin_jim · · Score: 2, Interesting

    I like to think of us as one of the good guys. We try to do what's right for the client every time, not necessarily what's right for our bottom line.

    At what point do you consider they may have just ripped you off, and how do you know when to file complaints and withhold payment

    If you're asking yourself that, it's time to withhold payment and start addressing your concerns. I would recommend an e-mail to them, then a third party arbitrator, then court.

    And some of these points have been mentioned here but this is my general advice when it comes to outsourcing:

    1. You get what you pay for. We've been told by our clients that we charge nearly 3 times as much as some of our competitors. We've also been told that it's worth that to them to know the project is going to be done on time and to spec.

    2. You own all project collateral, and payment is contingent on receiving it. This should be a contractual agreement before work is started.

    3. Requirements should be clear and measurable. No requirements should be implicit.

    4. Most outsourcers right shitty code. The Gartner Group estimates that 90% of the cost of an application comes after its initial release. Writing good code can greatly reduce that cost. But the economical reality is if I give you a project estimate that costs 4 times as much and will take 150% as long as the other guys, you are more likely to accept their contract. Even if, in the long run, you'd probably be better off going with us. How do you mitigate this risk? Meet the developers, talk to them, understand their viewpoints. And do code reviews. Unfortunately there's no objective way to say that a piece of code is good or not. However there's no reason you couldn't make it a contractual obligation that their code has to pass an internal code quality and standards audit before payment.

    A good outsourcer will require you to sign an End User Acceptance Test Approval or some such document at the end of the project; if they don't, require that they do. And don't sign it (or pay them) until you're satisfied that all project collateral has been received, that all the requirements have been satisfied, and that the code passes your quality standards.

    You would be surprised how many times we bid on a project, lose it to the lowest bidder, and then a few years later hear from that same company again because the relationship went south and the person's code is completely unmaintainable. Many times they end up paying us to rebuild the app at that point...

    --
    I am disrespectful to dirt! Can you see that I am serious?!
  33. AskSlashdot is your first clue by bokmann · · Score: 2, Insightful

    I'd say that posting a question about it on slashdot is your first clue something is wrong.

    Wait... maybe thinking to turn to SlashDot for answers is your first clue that something is wrong with your management strategy.

  34. FQT clause in contract by Johnboi+Waltune · · Score: 3, Informative

    You should have had a FQT (Formal Qualification Test) requirement in the contract. That means there is a document somewhere that very clearly qualifies what tests the software has to pass before the contractor meets their last milestone and gets paid for it.

    Usually, representatives from the contractor and from our company get together, have a demo, and check off every requirement as it is demonstrated. Then everyone signs off on the document and we cut them a check.

    It would be totally worth it to fly a rep from the Chinese company out to the States to follow this procedure. I've dealt with lots of Chinese people in my career and they tend to be strongly opportunistic and legalistic (but only if being legalistic can help them). It's just how their culture is. If you don't do anything to withhold payment until you get a working product, they'll think you deserve to get ripped off.

    --
    "The advanced societies of the future will be driven by competing systems of psychopathology." -JG Ballard
  35. Simple solution by Mudcathi · · Score: 2, Interesting

    Contractor: "Well, you asked for code, you paid for code. OH, you mean you wanted *working* code! Well, you should have asked for working code... that'll cost ya extra."

    To prevent getting ripped off, structure your payments in a written agreement, like this:

    50% at delivery
    40% at one month after delivery
    10% at 90 days after delivery

    Specify in the payment agreement that the 40% and 10% amounts can be withheld for longer periods, at buyer's sole discretion, if flaws are found and until those flaws are resolved to buyer's satisfaction.

    Many companies are willing to accept graduated payments that cover their up-front costs upon delivery, overhead costs with net 30 days, and net profit within 60-90 days. They won't like it, but most will accept it if it means getting the work or losing the contract opportunity.

    Best of all, if they screw up and won't fix it, at least you have a little money left over in the budget to pay someone else to perform first aid.

    Final caveat: always put in a clause allowing for disputes to be settled by an arbitrage firm, with the costs to be divided by each party. Most firms would rather correct problems than pay for half of an arbitrator's expense, even if it means hiring a competitor to mend their own defective products or services.

    --

    "He who throws mud, loses ground." - proverb

  36. Good Outsourcing by micromuncher · · Score: 4, Informative

    A lot of these comments have whizzed by, but you need to take a page from OTHER engineering on construction fields when you pick a company to outsource to.

    1) What is their experience (how many years they been around) and reputation (do you have references)?
    2) What is your access to the work and resources?
    3) Can you evaluate their work independantly?
    4) What contingencies does the contract provide you if work isn't done or doesn't meet your needs?
    5) What payment schedule is provided to you?
    6) Who can you talk to when you have business as opposed to technical issues (accountability)?
    7) What are the deliverables, and who owns them?

    ANYONE that takes cash upfront to do work I'd be wary of. The cash is your ONLY bargaining chip unless you are willing to go to court.

    If you pay someone to develop something for you, YOU own the code.

    You should have secure and free access to anything developed for you, and that includes the right to walk into their offices (homes) and demand materials. You have, after all, paid for it.

    In big outsource projects (fixed cost), companies often hold back payment 40-40-20. That means a cost is agreed to, 40 percent is paid up front for the resources, 40 percent during the estimated duration, and 20 percent for completion.

    In smaller ones, that are usually time and materials, unless you know the developer/shop is reputable, it is best to work ok similar principles - that is give a retainer to start work (if they accept money to start they are legally bound), and after you figure out the hourly rate - you withhold some portion for completion. The alternative is NOT to pay biweekly or monthly (based on hours), but to pay by function points. That is, they can bill you when they provide you with a deliverable.

    --
    /\/\icro/\/\uncher
  37. no sympathy by fred+fleenblat · · Score: 2, Insightful

    "Recently we have been referred to an outsourcing company to finish customization on a script that the author had no time to complete..."

    (a) the person(s) who did the referring should be notified, so that they don't try referring other projects into the same fate.

    (b) if you paid the original author the money that you spent on outsourcing, he probably would have *found* the time to complete it. One likely scenario is that the original author got annoyed with you or your company management and just plain left.

    (c) why on earth would you have allowed it to be shrouded/obfuscated? work for hire should be delivered in source form.

    (d) you specifically called it a script not a program. this gives (me at least) the feeling that it wasn't a very ambitious or important project, more like a proof-of-concept that got blown out of proportion. if it was intended to serve a real business need, it should have been taken more seriously.

    (e) it's sounds like you're less interested in getting the script to work than you are in getting your company's money back. the thing is, the lawyers will charge $250/hour, so it's probably best to just chalk it up to experience, let your manager chew you out for screwing it up, and accept the lessons life has taught you.

  38. Outsourcing by Run4yourlives · · Score: 2, Informative

    has nothing to do with a country, or its borders.

    The term you're looking for is offshoring.

  39. Re:The problem with your doom and gloom by EddWo · · Score: 2, Insightful

    Like to see you come up with a substitute for Oil. It has taken millions of years to form and is being used up at an ever increasing rate. While we might come up with alternatives for an energy source there are many products and industrial processes that depend on oil or it's derivatives.

    Sometimes there just isn't an alternative to be found.

    --
    "Taligent is still pure vapor. Maybe they'll be the last who jumps up on Openstep... "
  40. mod this up, people by irritating+environme · · Score: 2

    Dead On. My only comment: for those free-traders frothing over how everyone wins with free trade, recognize that the American worker's standard of living suffers greatly in the averaging of equalization, then relies on the global growth rate, which means that in our lifetimes, barring life extension, things look gloomy for most working classes, blue or white collar.

    --


    Hey, I'm just your average shit and piss factory.
  41. "Tested and Delivered" - ROTFL!! by Mandatory+Default · · Score: 2, Insightful

    An outsourcing company I used to work for (completely US based) had a standard contract that all bugs found from testing would be fixed before each milestone was delivered. Development wasn't going well, so the project manager simply stopped testing. No bugs found, no bugs fixed! Instead of getting in trouble, the manager was praised for "sticking to the contract" and "increasing profits by not performing unnecessary testing."

    I resigned shortly after this happened.

    My opinion is that if you are going to hire an outsourcing group, you must have both a contract negotiator and a project manager who know the tricks of outsourcing groups. Otherwise, save yourself a lot of aggravation and just flush the money down the toilet.

  42. This is why "source code escrow" is vital. by johnnys · · Score: 2, Interesting
    --
    Sometimes the "writing on the wall" is blood spatter...
  43. Experiences by Brandybuck · · Score: 2, Interesting

    Slightly off topic, but apropos to the whole idea of "you don't know what you're getting in Bangalore until it's too late." Last week I did my first code review for some code developed in Bangalore by my company's new team of whiz-bang offshored developers. During the pre-coding phase we were quite happy with them. The rumours that Indian developers are great process people are true. They produced the required process documentation in record time, specifications were complete, and there was enough UML to cause several PHBs to burst into spontaneous song.

    But now I have actual product in my hand, and I am reviewing it. It's a minor component written for a complex system. A single developer wrote it. It's not horrible code, but not excellent. Slightly above mediocre. It's good enough for other companies, but it's not good enough for ours. So I log my findings and send them off. The next day I get my response.

    Except for the suggestion to use more comments, the developer REFUSED to fix anything. Among the things the developer refused to do include: using the company standard API for error reporting; use try/catch blocks instead of those weird BEGIN, END, FAIL macros that were used instead; stop using hungarian notation per our coding standard; etc. The developer even refused to consider the use of constants in place of single-element enumerations. In every case (but the comments) the developer has some stupid excuse ("but that's how I learned it in school", or "but the other developers aren't doing that!")

    Needless to say, we are not going to accept this developer's code. But this is only the first bit of code we've gotten back. It's all going to start coming in soon for this one project, and we're sitting here with clenched buttocks hoping beyond hope that this one particular developer is a fluke.

    --
    Don't blame me, I didn't vote for either of them!
  44. You now own a writeoff by po_boy · · Score: 2, Funny
    At what point do you consider they may have just ripped you off?

    Sometime between when you receive code obfuscated by Source Guardian and when you ask Slashdot about it.
  45. Re:Hmmm by Marxist+Hacker+42 · · Score: 2, Informative

    I'm pretty sure any process up to now for making energy spends way more than the amount produced.

    Actually, Argentina and Chile are having good success with sugarcane-based ethanol. And Vanuatu is having good success with coconut oil. So there is some success from the ethanol/biodiesel method....

    --
    SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
  46. Re:My helpful suggestion by Magickcat · · Score: 2, Insightful

    If you outsource particularily overseas, you're usually headed for trouble. I don't have any sympathy for you, sorry. It looks like you are infact the one who'd wasting things at the moment too incidentaly. The job should have stayed in the USA regardless of your motivations, financial or otherwise.

    The IT industry is suffering because of bad decisions like yours, and if you haven't figured out by now that outsourcing offshore is more costly in the long term when things go wrong, then tuff.

    Spare me your indignation. You handed a project to someone that you didn't know, and I bet you didn't do a contract (of any kind) either. Of course you'd be hard pressed to deal with the company in an American court anyhow. You didn't stipulate that you wanted the source, and so now you've realised that your leaned over a table. You didn't hire a good tester either. Essentially your cheap and nasty job has come back to haunt you.

    Well, had you employed someone who knew what they were doing, even to manage the project, you wouldn't be in this position. Next time, contract someone to manage the project properly. If it's important enought to want it, it's important enough to hire someone to do it properly in your own country.

    Good luck with your Hindi lessons. Until clutzs like you figure it out, our industry will just have to struggle on. But we'll be happy to overcharge you when you return to Western programmers.

    Your Indian company will probably get around to finishing the job - but if they don't, bad luck.

    --

    Si tacuisses philosophus mansisses. If you had kept quiet, you would have remained a philosopher.

  47. Here's what's funny: by mcrbids · · Score: 2, Informative

    I've worked as an outsourced programmer for years. I've also worked with outsourced programmers with reasonably good results.

    I see lots of recommendations to "get it in writing" and "make sure they finish BEFORE you pay them..."

    I've never, ever, not even ONCE seen things work that way! Trying to adhere to fiction will get you fictitious (and painful) results.

    1) Write your contract so that venue is the location of the outsourcer, and all legal hassles happen there.

    2) Demand ownership of all sources. It's OK to cross-license rights to use sources in other non-competetive ventures - nobody wants to think you own their thoughts!

    3) Demand a reasonable NDA - don't try for everything under the sun and moon. If your NDA is too severe, you generate ill-will without much benefit, and that never helps.

    4) Provide a development server, and require them to work on it remotely via SSH or VPN. That leaves you with all the cards, but still prevents the IRS from considering them as "employees" since they have to provide the keyboard and monitor. It also lets you see what they do and how often, and in real time. Perform backups of this work on a regular basis, and keep backups going back in time that they cannot access.

    5) Pay promptly and frequently, maybe even weekly. It's easy to cancel a contract that's not going well when there's not $60,000 on the line. That also keeps both sides a little on edge as there's no big, fat lever to screw each other with.

    6) It's a relationship. Be friendly! It never works well if somebody resents your contact. If it gets cold and uncomfortable, say so, and demand immediate correction or leave. You don't have to like each other personally to work well professionally. If you leave, do so quickly and without delay.

    7) Forget extensive spec development before beginning. Scope creep always arrives at the party, and software is *NEVER* "done" - it's always a work in progress. Spec development, and change the spec as anticipated needs change. It's OK to pay by the hour since you have the source anyway - You can leave and go somewhere else if you don't like things.

    In short, arrange the contract so that if your contractor decides to flake, you have options.

    At this point, you've pretty well shot yourself in the foot, since you don't have sources. Big mistake! Your only options are:

    1) Cajole them into doing the fix (which hasn't worked so far)

    2) Have the work redeveloped, or

    3) Sue for a fix in a guaranteed timeframe and or access to source code, and financial losses.

    Sorry you're in this situation, but never EVER outsource software development without sources. Never. Just don't do it. Can you imagine a tractor company investing in huge, million-dollar tractors, and not ensuring that there's a backup copy of the key?

    Neither can I.

    --
    I have no problem with your religion until you decide it's reason to deprive others of the truth.