Slashdot Mirror


Does Outsourcing Programming Really Save Money?

itwbennett writes "In a blog post titled 'Why I Will Never Feel Threatened by Cheap Overseas Programming', John Larson tells the story of a startup that shipped its initial programming to India, paying $14 per hour, with predictably disastrous results. Larson concludes: 'I have yet to see a project done overseas at that sort of hourly rate that has actually gone well.' But in this not-uncommon tale of outsourcing woe, is the problem really with the programming or with unrealistic expectations?" The comments on Larson's blog post (originally titled "Why I Will Never Feel Threatened by Programmers in India") seem to me more valuable than the post itself.

53 of 653 comments (clear)

  1. I outsourced this first post! by Anonymous Coward · · Score: 5, Funny

    Seems to work ok.

  2. Faulty Reasoning by gatkinso · · Score: 5, Insightful

    Just because the overseas programmers suck (debatable, but let's assume) doesn't mean management isn't going to go for the $14/hr carrot.

    --
    I am very small, utmostly microscopic.
    1. Re:Faulty Reasoning by nomadic · · Score: 5, Insightful

      Exactly. You should feel threatened, because quality frequently doesn't win out.

    2. Re:Faulty Reasoning by samsmithnz · · Score: 5, Insightful

      It's not because they suck, it's because they don't own the code. If you know you have to maintain a piece of software, you will spend extra time ensuring that it's maintainable and coded well. We have a large team in India and they are very successful, because they are part of the company and are building a career, not being a code monkey.

    3. Re:Faulty Reasoning by Anonymous Coward · · Score: 5, Insightful

      > It might take a few years...

      Yup, I've been hearing that since 2000. How much longer do you think? 20 more years? 50? A century? I don't think so. Show the PHB two salary numbers, he's going to pick the lower one, never mind any other factors (e.g. overall cost).

    4. Re:Faulty Reasoning by Anonymous Coward · · Score: 5, Interesting

      My company outsourced a piece of a project (GUI redesign). The result looked good and met the requirements but turned out to be inadequate. No error conditions were handled, any change to the test cases caused it to fail. However, since they brought it in on cost and schedule they were given a larger piece as a follow-on. We ended up rewriting both the GUI and the second piece and were late by a year. You can blame the spec (they did) but no US developer that had to support the finished product would have done shoddy work. I think the outsource company did it deliberately because they expected to be paid to fix all of the problems.

    5. Re:Faulty Reasoning by Billly+Gates · · Score: 4, Insightful

      Problem is software is an expense that adds little value to bottom line unless your a software company. Therefore go cheap and invest in more sales and accounting gurus who can better raise the stock price and bring better value to the shareholders. That is what is taught in business school and makes sense. You dont save anything as it never generates revenue.

    6. Re:Faulty Reasoning by vlm · · Score: 5, Insightful

      Exactly. You should feel threatened, because quality frequently doesn't win out.

      There are a lot more McDonalds than five star restaurants.

      --
      "Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
    7. Re:Faulty Reasoning by schlesinm · · Score: 5, Insightful

      Outsourcing code development doesn't work unless you have some onshore owners of the code who are able to review for code quality and demand fixes when the quality suffers. I've been working with offshore developers for over a decade now. There are some that are really good and I felt confident giving their code just a quick once over review. There are others where I have to review the code thoroughly because they're not quite up to par (such as the time I had to write the Java time code interface for a coder after he failed three times to figure out how to do it). Without an employee owner for the code, then outsourcing is hit-and-miss for actually saving money.

    8. Re:Faulty Reasoning by nine-times · · Score: 4, Interesting

      I think you're overestimating the rationality of people when it comes to economics. People don't actually do things that are cheaper and more efficient. Most people in management will spend $100 chasing $2, and they'll get rewarded with raises and bonuses for doing it.

    9. Re:Faulty Reasoning by TheRaven64 · · Score: 4, Insightful

      If they're part of the company, then they're not outsourced, they're just offshored. Often the two go together, but they are independent. You can move an office to a different country and you can move the work to another company in the same city. Or you can combine the two. This is usually when you get the worst results. There may be talented people in India, but if you're hiring them at one remove from a continent away then there's a very good chance that you won't be employing any of them.

      --
      I am TheRaven on Soylent News
    10. Re:Faulty Reasoning by niftydude · · Score: 5, Insightful

      I'll probably get modded down for saying this - but over the years, I've worked as a developer/tech arch in Palo Alto, Mountain View, Milwaukee and Portsmouth, and my experience is that the vast majority of US programmers also suck.

      The main problem I've had with Indian programmers is that a lot of them don't really understand english (even though it is the official language of India) - which makes explaining requirements more difficult, but at least they can do math properly.

      Not all overseas developers suck, and not all US developers are awesome. I can see why management would be willing to take the lower cost option, when they aren't guaranteed (or qualified) to identify and hire good talent locally.

      --
      You can never know everything, and part of what you do know will always be wrong. Perhaps even the most important part.
    11. Re:Faulty Reasoning by compro01 · · Score: 5, Funny

      Available evidence suggests you can sell an unfinished program just fine.

      --
      upon the advice of my lawyer, i have no sig at this time
    12. Re:Faulty Reasoning by PCM2 · · Score: 4, Informative

      His point is that, yes, managers are going to be blinded by that $14/hour price tag and go with that route, but those projects usually fail. They are pitched for too many man-hours up front and they usually run over, and even then the result often isn't up to snuff. The result is that they give up and hire American (Western) programmers to finish the job at market rates. Thus most of the "value" of the overseas effort becomes a cost overrun, but the worst part is that time to market suffers because the initial specification valued cost over time to an unrealistic degree. A company can only get burned like this so many times before cooler heads prevail.

      --
      Breakfast served all day!
    13. Re:Faulty Reasoning by next_ghost · · Score: 5, Insightful

      You know the saying: Cheap, good, fast. Pick two.

    14. Re:Faulty Reasoning by Lumpy · · Score: 5, Insightful

      This is because they dont give a rats ass how much it costs in 5 years.
      They care about the balance sheet for the next 90 days.

      This will not change until they fix the problems with corporations.

      --
      Do not look at laser with remaining good eye.
    15. Re:Faulty Reasoning by Lumpy · · Score: 4, Insightful

      "That is what is taught in business school and makes sense. "

      Yet the company I am at that has a non business school owner who goes against ALL the crap they teach at business schools is still here after 40 years and 3 recessions.

      All of out competition is now gone. The last one filed for chapter 11, 1 month ago. WE are the ONLY company now left on this side of the state while all the Business school morons cant keep their business running.

      I don't care if you have 20 phd's in business. you suck compared to a man that pours his heart and soul into a business and does the right thing before maximizing profits.

      Honestly, business school grads are some of the stupidest people I have met. They can't comprehend concepts like customer satisfaction, customer retention, talent retention, and paying people what they are worth, not what they will begrudgingly accept.

      --
      Do not look at laser with remaining good eye.
    16. Re:Faulty Reasoning by rcuhljr · · Score: 4, Informative

      While I don't really have too much of a horse in this race, and I don't think it's indicative of all outsourcing teams, I remember one gem from an internship I was working during college. We were given a code base developed by a 'guru' from eastern European country, I want to say Ukrainian. The product was an add-on for Outlook, and at one point I was given the problem of 'The app is slow with more then 10 contacts, almost unusable, speed it up.' After a bit of hunting around I found the problem was where the add-on was searching through the contacts lists trying to find a subset.

      They'd managed to create a search algorithm with a big O of something around n cubed. I set about rewriting it to get it down to N all while wondering why on earth Outlooks API didn't support this relatively basic feature. It was at this point that I discovered that the API actually did support it, however the programmer had written a wrapper around the API hiding the method in question, then re-implemented it in the train wreck of code I was removing. That was the last time I ever worried about competition from cheap outsourced labor.

    17. Re:Faulty Reasoning by tbannist · · Score: 5, Insightful

      The way thing work now, that's never going to really happen. It's the MBA effect. The goal of an MBA is increasing ROA, there are two ways to do that, either increase revenues or decreases assets. One is hard to do, the other is pure profit for the current quarter. That's why many projects (and factories for that matter) get outsourced. Reduce the assets and the magic number goes up. Brag about it to your peers and get promoted to some other job, the sucker who comes after you gets to clean up the mess.

      The "it will cost more later" argument won't do anything as long we allow disposable idiots to run businesses. That why it's so remarkable when someone who doesn't consider it their one and only goal to increase a magic number comes along and leads a company to (temporary) greatness. There's a convincing argument that Google, Apple, even Microsoft (among others), became huge because their CEOs looked beyond the numbers games and actually cared about the companies they were working on. Dell's the current example for the idiot CEOs who only care about numbers that don't actually mean anything, Dell gradually sold off it's assets to a Chinese company, now that very same company is in the process of cutting Dell out of all the businesses it used to own. Why? Because Dell doesn't own anything but a brand name and a web site, now.

      --
      Fanatically anti-fanatical
    18. Re:Faulty Reasoning by xclr8r · · Score: 4, Insightful

      I'm on board with your comment but one item that I've seen actually help is detailed reports of color printer and photocopying. It's saved my department thousands of dollars; now we can afford the coffee and paper clips again.

      --
      Beware of those who profit off the docile and persecute the unbelievers.
    19. Re:Faulty Reasoning by tbannist · · Score: 4, Insightful

      Only if the managers who made the decisions stick around. If they take their bonuses and leave, then it may be the guy who ends up cleaning up the mess who also gets the blame. After all there wasn't a problem until he pointed out that the work wasn't going to get done on time, and now he's spending so much money to fix a problem that was only supposed to be a small fraction of that to start with...

      Office politics can be as stupid and unrealistic as the real stuff. Also once the decision has been made, some people can become completely unable to accept that it was a mistake or that it should have been done differently. They'll blame someone else for hiring the wrong outsourced IT company or not tracking the project closely enough.

      --
      Fanatically anti-fanatical
    20. Re:Faulty Reasoning by jellomizer · · Score: 4, Interesting

      Those who tried in 2000 probably have switch back or in the process of switching back, or out of business.
      Those who tried in 2010 are feeling the pain now.
      I am not finding any shortage for American Software Developers work for good developers.

      I think a lot of the rub is the fact the businesses are no longer tolerant like in the 90's to those unprofessional quirks of those IT people and expect a more professionalism in their organization. So the Jeans and Tee-Shirt are being replaced by Slacks and a collared shirt. Working flex time is pushed more to 9:00-5:00 and we are no longer getting Huge Salaries just to write HTML.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    21. Re:Faulty Reasoning by King_TJ · · Score: 5, Insightful

      Wish I could mod your post up higher (but hey, it's +5 Insightful as I speak, so what can a guy do, right?).

      I, too, work for a small manufacturing business where the owners are not from "business school backgrounds". They simply understand our industry and have hands-on experience with it, and do their best to run a successful company.

      I've seen plenty of other places run by the folks with "professional degrees" too, and typically, they get way too fixated on spreadsheets and reports, vs. having a firm grip on the realities unfolding right in front of them every day.

      You *do* want a few basic, easy to interpret and use reports being generated, so you can nip problems in the bud. (Say you've got guys out in the shop who start slacking off, pretending they're really busy when they're not? They might be pretty effective at making the people observing them believe they really are working as hard as they can. It's not that hard to pace yourself so you take 15 seconds to put a box on a belt, or make sure you cut a piece with the saw *slowly* to waste a little time without anyone noticing. But a good daily or weekly report on man-hours spent and output completed would "red flag" this behavior pretty quickly.)

      But keeping one's head buried in the numerical data seems to be the downfall of many an MBA out there. You simply can't base all your decisions on what produces the best numbers for you in certain columns.... You've got to actually care about what your business does (yes, even if in the short-term, that occasionally means taking a loss to please somebody).

      Take our business, for example. In the recession, we really took a beating and we had to do 2 rounds of painful layoffs. Still, we did what was needed to trim things back to an effective skeleton crew of employees who could keep the place functional ... and we held our prices as low as possible, and provided the same level of customer service we always did (even when we had to pay to correct problems for customers that weren't really our fault, sometimes). We outlasted one of our biggest competitors, who has been a thorn in our side for decades. (He responded to the downturn by running a barrage of expensive advertising and giving away special promotions and perks.) Now, we suddenly have almost all of his business, which is giving us a big boost moving forward.

    22. Re:Faulty Reasoning by donscarletti · · Score: 5, Interesting

      In response to the suck speculation. I know some really good Chinese programmers in Beijing, Shanghai and Guangzhou. They're not going to work for $14 and hour, unless you throw in a percentage of the company's shares and some serious pandering from management. Crap Chinese programmers cost about RMB¥5000 a month, about US$5 an hour, but prices climb extremely sharply after that. Outsourcing companies will hire those crap ones and pocket the difference, every time.

      There's nothing intrinsically wrong with Chinese, Indian or whatever programmers. It's just the Chinese companies, and I assume Indian companies who actually need to sell their own product want to hire the good engineers to get the job done and so they are in demand in the market and thus expensive. To an outsourcing company however, maintenance is an externality, they don't care if something is well engineered, just if it meets the requirements to the letter, or at least appears to then its good enough, so anything will do.

      Why would you go with a Chinese outsourcing company then? Well, I am in the business of making good software, but here's how it would go if I wasn't. I'd fly you on a junket and you'd stay in a 5 star hotel, paying for a few extra nights because who wants to go on an overseas trip without seeing the sights. You'd come to my office in Beijing, it is big, has a lot of people in it and they look like they are working hard. I would then precede to show you some professional looking slides and give you some serious false impressions as to what we have delivered in the past and I'd deliver it with such unerring conviction you would have to believe it. Then I would take you out to dinner, Peking duck, abalone and alcohol, I would invite some girls from the office, receptionists etc., who would smile at you and blush when you try to speak English with them, that's just what Chinese girls do, but you feel like they're into you. Then I would take you to do something else, grand sights, more booze, or a really, really good prostitute.

      Now, this is what a Chinese sales guy will give your manager: optimism, presentation and vice. What can you give him? Well, results presumably, but they come later. Up front you can only give him cautious estimates and a list of things that can go wrong. Why would anyone but a non-idiot manager choose a local team of engineers who know what they are talking about when he can have a free holiday to an exotic country and hear some really pleasing things?

      Outsourcing companies are there to make money, pure and simple. Nice things cost money, that can be good engineers (local or overseas) or it can be the sales team and what the sales team and their junkets and presentations.

      By they way, I'm obviously not North American, but I've worked with American engineers, a few of them have been really great, most of them have been quite ordinary, kind of like what you get here in terms of ability, but usually a little more methodical and steady. The advantage is mainly that you know what you're getting when you hire locally (or find your own talent overseas rather than relying on an agency).

      --
      When Argumentum ad Hominem falls short, try Argumentum ad Matrem
    23. Re:Faulty Reasoning by scamper_22 · · Score: 5, Interesting

      I sometimes wonder if it's that business is *evil* or if they simply don't know. I know it's easy to assume they're evil, but the more I work in this field, the more i think it is simply that they don't know.

      Almost all of our business folks come from either a finance background or are a product of the industrial revolution.

      Finance... well all they want is to plug in some equations and compare numbers and that's the end of their thinking.

      Industrial management is all about GOOD PROCESS and fungible parts. You need a few skilled people to design the process and assembly line... then the people are replaceable cogs. 95% process, 5% people is they key to success in the industrial age. Because R&D costs are typically small relative to the manufacturing costs, R&D was typically allowed to do its own thing. If costs needed to be made, why cut the R&D... there's plenty of manufacturing workers (fungible parts) to cut.

      Now what do you when manufacturing is no longer a key component of your business. As in software. When business looks at costs... the only thing they can replace the manufacturing worker with in their minds is... the people in R&D. They're the ones making things. They cannot conceive of a world without fungible parts. Even though the fungible parts have all been automated (the whole point of computing). The compiler does the manufacturing. Yes, there are still some parts that are not fully automated, but that's just waiting to happen.

      They simply take all their old industrial age management techniques and try and apply it. Remember it is 95% process, 5% people. This is why you get such an emphasis on project manager, product manager, technical manager, programmer, workflow... They are trying their hardest to just build a process that will make projects successful.

      Now some companies do get it. The industrial revolution is over. You need to learn new skills. So the big tech companies for example... get it. It is 95% people, 5% process. It has more in common with a guild of craftsman or a profession. They luckily only need to deal with the madness of finance people. But at least they've rid themselves of industrial age management.

      And it is changing. The big companies that DO software do get it and have changed. Increasingly they're making their products into services (yay... cloud computing)... I don't see much of a future in outsourcing itself. Which I guess means if you feel threatened by outsourcing... I'd feel just as threatened being on the outsourcing side.

      Off shoring is another issue all together. If they can get very skilled people in another country for cheaper...they will and that is not the same as outsourcing.

    24. Re:Faulty Reasoning by jedidiah · · Score: 4, Insightful

      Employees of some outsourcing outfit do not work for you.

      They work for their own company.

      That contractual wall that separates them from you ensures that they will never care about your company nor go out of their way to

      --
      A Pirate and a Puritan look the same on a balance sheet.
    25. Re:Faulty Reasoning by lightknight · · Score: 5, Insightful

      Same tactic politicians use.

      Sell off the capital buildings, then rent them from the new owners. Claim profits during your term, and put it into the programs of your supporters. Let the next guy figure out how to pay the rent.

      --
      I am John Hurt.
    26. Re:Faulty Reasoning by Anonymous Coward · · Score: 4, Insightful

      usually you only get to pick one

    27. Re:Faulty Reasoning by cdrguru · · Score: 4, Interesting

      Absolutely. A huge problem with dealing with outsourcing is that the specs required are nothing like what people are used to. Your average Indian contracting company will work to the spec and nothing but the spec. If the spec does not say that function calls should be checked for error returns, they will not be. If the spec does not say what each and every error message must be you will get a single question mark for the ones not clearly specified.

      My wife has worked with this sort of thing. Management was very happy in moving all the programming jobs to Ireland and India while (short term) keeping the spec writing in the US. What was never understood was that the volume and detail level of the specifications needed to increase 5-10x from what it was. This might have been obvious to anyone that had dealt with outsourced programming before, but it was never factored in.

      Of course the end result was that the added costs for spec writing and design ended up pushing those jobs offshore as well. If you are going to spend 10x as many hours on a job, it might as well be done at a cheaper rate. It will be humorous to see what happens to this in the end, but it will take a long while to collapse.

      Same company bought a building and all the upper level people were congratulating the VP that pushed the deal through because the building was already wired for networking. Of course it was wired for Token Ring and they were using 100BaseT Ethernet so ever bit of wire had to be ripped out and redone, but that was long after the congratulations. Probably cost them 2-3x what a bare building would have, but nobody figured that out until much, much later.

    28. Re:Faulty Reasoning by dpilot · · Score: 5, Insightful

      Seems to me that some number of years/decades back, most of Corporate America lost its sense of direction/balance/mission. Today it's "all about the money," and personally I believe that's wrong. If you're a car company, and you're "all about the money" instead of "all about cars" you may not have failed yet, but you're clearly on the road there.

      Obviously you can't ignore the money. By the same token it's probably handy to have some MBAs around. But you need to keep track of who's in charge and what's the mission, and that shouldn't be the MBAs - it should be somebody experienced in the company's products.

      To switch from the car company analogy to the software company analogy, would you rather buy your software from a company that's "all about software" while managing to make a profit, or from a company that's "all about profit" while managing to make software? Which company do you think will produce better software? (or better cars, to switch the analogy back.)

      --
      The living have better things to do than to continue hating the dead.
    29. Re:Faulty Reasoning by AK+Marc · · Score: 5, Interesting

      But the investors aren't the shareholders. I have $200k+ in stock somewhere. But it's in mutual funds. One of the "requirements" when you join a mutual fund is that the fund manager is the shareholder, even if I own the shares. That simplifies their work and divorces me from any control of the entity I "own." So really, you are arguing against the current mutual fund trend, and not anything else.

    30. Re:Faulty Reasoning by rtb61 · · Score: 5, Insightful

      Corporations answer to their investors, that's a laugh. The modern corporation is an illusion run by psychopaths to confuse and decieve their investors. The number one goal of corporations today, is to guide as much of the company income towards company executive pockets and to maintain this for as long as possible until the company explodes under the weight of impossible debt.

      The reality is failed offshoring is driven by nothing but pure greed. Some executive will claim the project costs 'x' based up a salary of 'y' but by offshoring for a salary of 1/5'y' they will save money and the executive deserves 10% of that saving as a bonus, of course when it fails the executive has already received their bonus and has launched a bunch of other half-arsed schemes since then.

      As for the off-shorers they are coding for a price and they will contently code what ever crap they have been told to code no matter how piss-poor the results.

      --
      Chaos - everything, everywhere, everywhen
    31. Re:Faulty Reasoning by indian_rediff · · Score: 5, Interesting

      Mod parent up. The number of people that discount the short-term thinking of outsourcing cannot be overstated (parse that - hopefully I wrote it right).

      I have looked time and again for over 10 years (having been laid off twice - once directly attributable to outsourcing and the second time to the current downswing) as to when this wave of outsourcng will change.

      PHBs will look at the bottom line alone.

      Let me give you an example. At a bank I worked at, we had a memo right from the top - for every local hire, there MUST be at least 7 overseas - otherwise the local hire is not allowed. I found the quality of work being done there sucked! Of the 800 odd people on various projects, there were more than 700 offshore - the rest were onshore - and I was privy to those rates. Offshore rates were 1/5 of the onshore equivalent. I remember one of the local bosses railing at one of the onshore representatives of the minions at the quality of code being delivered. It seems if a zero was entered into a field instead of a non-zero number, the web app would crash (or it was something equally stupid - please don't hold me to actual issue).

      Given that these banks took such a large amount of money from US taxpayers, the least they should do is to ensure that any new jobs they have are given to onshore people. Instead, they have gone extreme - and are offshoring more than ever. Ingrates R Us.

      Background: I am originally from India, one of the original outsourcers and have seen, with mine own eyes, the precipitous fall in quality of the offshore developers. Until about the mid- to late- 90s, things were not so bad. But Y2K changed all that. All and sundry became s/w developers. And the rest, as they say, is history.

      --
      All views my own. Anyone else with the same views needs to have his/her head examined.
    32. Re:Faulty Reasoning by mcmonkey · · Score: 5, Interesting

      > It might take a few years...

      Yup, I've been hearing that since 2000. How much longer do you think? 20 more years? 50? A century? I don't think so. Show the PHB two salary numbers, he's going to pick the lower one, never mind any other factors (e.g. overall cost).

      Actually, it's already happening. US companies that are moving IS jobs over seas are behind the curve. Companies that shipped jobs over in the 1990s are starting to bring them back.

      One reason out-sourcing/off-shoring doesn't same money is management. You need on site management where ever the programmers are, but you still need the management structure at the home office to oversee projects.

      Another reason is just we just haven't figured out how to work in remote teams. There certainly are exception, instances where teams of people geographically separate have turned out a successful project. But those are the exceptions. In most cases, conference calls and shared desktops just can't replace sitting next to someone and looking over their shoulder at the screen.

    33. Re:Faulty Reasoning by tompaulco · · Score: 5, Interesting

      Public companies exist soley to raise their stock price any means necessary by utilizing creative financial ratios. CEOs get their raises or get fired by them.
      That's not what public companies USED to exist for. They USED to exist ti make profits and pay dividends. Now, every shareholder imagines themselves to be a daytrader and insists that if the stock price doesn't go up, then the company is doing something wrong.

      --
      If you are not allowed to question your government then the government has answered your question.
    34. Re:Faulty Reasoning by MalleusEBHC · · Score: 4, Insightful

      If you're not aware, a bunch of "hippies in jeans and t-shirts" have done quite well here in Silicon Valley. While obviously there are many other factors at play, one reason for the success of the valley is that, by and large, nobody cares what you look like so long as you're intelligent and get your work done. Keep your suits, we'll keep our t-shirts, and call me when your fashionocracy catches up to our meritocracy.

    35. Re:Faulty Reasoning by SecurityGuy · · Score: 5, Insightful

      No, it's not the MBA effect. *sigh* I have an MBA. I rant about the exact same things you do. They don't teach managing to the quarter or tweaking some stupid number to get a bonus. Quite the contrary, they teach building incentive systems that DON'T reward doing stupid or harmful things to your business. The "it will cost more later" argument is perfectly well respected by any competent MBA, though of course how much more and how much later matters. The damn sad thing is that if I come in and engage in a course of action that drives a company's revenue through the roof this year, but puts it out of business in 5, the market will put the share price through the roof and give me a ton of money. The market is not composed of MBAs. It's composed of fools. The only solution I can think of is simply not to take a company public, because when you do, you have to pander to fools rather than build REAL value.

    36. Re:Faulty Reasoning by Darinbob · · Score: 5, Insightful

      Ha, it's similar in US too. The web turned everyone into a "dev" even if they only know HTML and some high level scripting language. So now there's a glut of programmers that just aren't very good.

      As "Joel on Software" puts it, even if you're using Ruby on Rails and just push a couple buttons to create a web page, you still need to understand the fundamentals like pointers and recursion. If you can't understand those then you will have difficulty with abstraction elsewhere.

    37. Re:Faulty Reasoning by Anonymous Coward · · Score: 4, Informative

      lmgtfy:

      Research:
      1: Babiak P, Neumann CS, Hare RD. Corporate psychopathy: Talking the walk. Behav
      Sci Law. 2010 Mar-Apr;28(2):174-93. PubMed PMID: 20422644.

      and the summarizing article from Time.

    38. Re:Faulty Reasoning by garyebickford · · Score: 5, Interesting

      Ha. I used to know (distantly) the scion of a self-made man (I've known several of those, actually). The founder of the company started out during the early days of the Depression. He was homeless, no education, either 1st or 2nd generation immigrant. He walked along the roads picking up bits of metal, and carrying them to the scrap recyclers to make a dime. He slept under bridges. Soon he found enough materials to build a little push cart, and he was able to pick up and bring more scrap in each trip. (I don't know but I assume he also picked up and sold or used stuff that was too good to go to the scrap guys.). Eventually he scrounged up enough money to buy a truck. By then he was able to afford a room in a small fleabag hotel.

      By the time of WWII he had a rather successful business, recycling metal.

      After WWII he got in to scrapping out war materiel - old ships, jeeps, etc., cutting them into pieces and sending them to the steel plants for reuse. By the time I was sentient Zidell Explorations was a huge presence on the waterfront in Portland OR, running a half mile or a mile along the waterfront. There were always from four to six old ships, military and commercial, getting torn apart. By the late 1960s most of the metal was getting loaded onto ships and sent to Japan, where it was turned into Toyotas. Zidell was one of the largest companies in Oregon by then.

      He died. His son had no interest in the business AFAIK. From what I was told he just bought houses and cars, and white powder, and women. He was, by all accounts, a very rich and very bad MF. He did spend some time in jail, IIRC for felony assault.

      And thus, just as in The Good Earth, the money recycles back through the system. Others made lots of money selling him toys.

      Folks who grow up rich have a very serious disadvantage - they don't have that driving motivation to NOT BE POOR. So they don't work that extra hour. So, generally, they end up working for someone else. They may get paid a lot, but they are still working for the guy, or the family of the guy, who built the company.

      And that is the point. Except for the very biggest corporations that were formed out of mergers, back in the day there was one person, or a few persons, who started from almost nothing and BUILT THAT SUCKER. And those are the CEOs and Chairman of MOST corporations. I'm not saying they are nice people - but most of them are indeed self-made, still to this day.

      --
      It's easier to be a result of the past, but more fun to be a cause of the future! http://www.spacefinancegroup.com/
  3. Agree by 1s44c · · Score: 4, Interesting

    I've seen the work infosys and wipro do. They are the high end of Indian programing sweatshops yet everything I've seen from them stinks. They promise the world but don't deliver any better than a first year degree student could in any developed country. Except a first year student would be cheaper, has the same time zone, and speaks the same language.

  4. Outsourced Programming Flaws by Nova+Express · · Score: 5, Interesting

    Having been involved in many outsourced projects, a number of problems tend to crop up again and again:

    1. Offshore programmers frequently lie about their programming skills
    2. Competent Indian programmers tend to do fairly well if given very explicit instructions, but are at a loss if something unexpected comes up. They tend to be less adaptable and nimble than U.S. programmers.
    3. It ends up taking longer than estimated, even for simple projects.
    4. Hand-holding and rework end up eating up all time and money savings.
    5. By the time an offshore programmer has skilled up enough to actually be useful, they leave for a better position. (Especially true for India.)

    To my mind, outsourcing programming is a management fad that is (hopefully) already falling out of favor due to poor results.

    --
    Lawrence Person (lawrencepersonh@gmailh.com (remove all "h"s to mail)

    http://www.lawrenceperson.com/

    1. Re:Outsourced Programming Flaws by vlm · · Score: 4, Funny

      That shows a failure of the American programmer, not a problem with Indian programmers.
      1) Why can't an American lie? Liars expect people to lie, management, especially upper management, requires sociopath tendencies which equals lying, so, freaking lie about it to keep the boss happy. If a guy in India who just graduated school can claim 10 years C++ experience, why can't I claim 20 years? I have "CCIE-level" experience although not a CCIE. Actually, in the restricted arena of BGP I probably do, but I'm lost in switching. If I know its a BGP job, and the boss doesn't care if I lie, and the competition in India will lie ... why not? Sure, boss, I'll be a CCIE.
      2) The boss likes "needy" "unempowered" employees. So do it. Ask him dumb questions constantly to keep his tiny little ego boosted. Whats so hard about that?
      3) Tell the boss it'll take longer, and F off more. Again, whats the problem, you worried you'll wear out the foosball table or what?
      4) Don't worry about needing handholding or spending more time on rework than initial development. Just do it. The boss likes it; or he wouldn't be going to India where they do it all the time.
      5) Leave for greener pastures as soon as possible, preferably before the project crashes and burns.

      The price is "too low" for a american programmer because the boss is hiring incompetents in India. OK, the problem isn't the american can't get hired for an "incompetent" level job at $1/hr, the problem is the american is supposed to be applying for high paying high end architect and management jobs, which he can't do because he's only a programmer, but then again, the indians can't program, so its all kind of even in a way. And if thats they way the man wants it, thats the way the man gets it.

      This all seems to be "programmer getting frustrated trying to make and enforce management decisions while not being in a position of management authority". Just zen up a bit and go with the flow of reality. If the boss wants incompetent liars, don't whine about it, either become the boss and demand something else, or become an incompetent liar, or work elsewhere. Its simple, really.

      --
      "Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
    2. Re:Outsourced Programming Flaws by Rogerborg · · Score: 5, Interesting

      That's it, exactly. Same experience with Malaysia and Korean devs and managers. The answer is always "Yes, yes, of course, we will do that, no problem," to any question. I understand that it's partly cultural; it's considered rude to just say no. But it goes way beyond that: they will lie straight to your face (or over a video link) and actually get tetchy about being questioned, even when they have a track record of failures and screw ups behind them.

      Other fun things to deal with are the rapid staff turnover, the guarantee that they'll take the code you paid them to write with them to a competitor, and that you might find that you don't even have a copy. Keep the source repository under your control, and no commitee, no payee.

      --
      If you were blocking sigs, you wouldn't have to read this.
    3. Re:Outsourced Programming Flaws by DesertBlade · · Score: 4, Insightful

      Why didn't college teach me Lying 101 and 102?

      Those are MBA levels courses

      --
      Half of writing history is hiding the truth.
  5. From past experience, no. by HappyHead · · Score: 5, Informative

    I once did some contract work for a place that made the mistake of outsourcing a major programming job. My job was to maintain the outsourced code, and keep it functioning (barely) while the internal programming team worked on building a complete replacement from scratch, at half the cost, with the actual system requirements being fulfilled. I spent four months fixing bugs in deliberately obfuscated perl code, at consultant rates, because none of the internal staff they had hired was either able to figure out perl code in general, or willing to even try to sort out that mess. The outsourced programmers in question had the dodgy business practice of deliberately making their code difficult to read, and only including comments like:

    # 16426-b

    The code in question contained wonderful constructs such as pointless loops where a value would be iteratively divided by the numbers from one through a thousand, then restored to it's original value without being used in the altered form. I started the project with about 6 million lines of perl code, and by the time it was over and the replacement was ready, tested, and brought online, there were only 2 million lines in the outsourced code, including about ten thousand lines of comment code that had been added while I was working on it. I hadn't even looked at about half of the remaining code.

    After the initial work was done (poorly), the outsourced programming company announced that their code maintenance fees were being increased, thinking that their poor coding style had essentially locked the client in, and left them unable to get help elsewhere. The only staff member the company had who was willing to make the attempt unfortunately committed suicide after only a month of trying. (Personally, I believe it was unrelated, but the other programmers there claimed she was perfectly fine until she started working on that code... after two months of it I could see why they would think that.)

    So yeah, in my experience, outsourcing programming does not save money - if the company I did that work for had just had their own people write the original code, they would have saved a massive amount of money.

  6. Outsourcing... by Bert64 · · Score: 5, Insightful

    If you pay someone by the hour, they will work as slowly as they can...
    If you pay someone by project, they will cut corners to finish quicker.
    If you pay someone by lines of code they will write bloated code.

    All of this is even worse when the developers are halfway round the world and you can't keep track of them so easily, and when you don't have sufficiently clued up people on hand to inspect the code they have written.

    --
    http://spamdecoy.net - free throwaway anonymous email - avoid spam!
  7. Outsourcing sucks by Decameron81 · · Score: 4, Insightful

    I work at a company that does outsourced programming for for US and EU companies. I have been working at this for the last 5 years aproximately (always in programming & analysis roles).

    I am really amazed at how much our clients undermine their own goals. I understand that cost is what drives programming jobs to my country - but I still have to see a really successful product come out of this. It would be difficult to find a single cause for this, but all of the following are at least partially responsible:

    1 - Low wages.

    2 - Lack of good programmers getting involved: some of the programmers you can get for the lower wages are great, some suck. I've seen companies taking just anyone interested to fill programmer positions for such jobs (you can train them, right?). Getting involved in the selection process may help prevent this.

    3 - Lack of trust in the the outsourced team: you can't think of the outsourced team as a bunch of mindless morons and expect them to care about your product. In those cases in which the outsourced team was a very good team, it didn't make the slightest difference because people was told what to do, and not to think - which makes hiring inexperienced people a pretty attractive alternative.

    4 - Giving more importance to cost & time, than to quality: what would anyone expect to get, when quality is secondary to time & cost? This is a huge way to undermine your projects.

    5 - Communication: communication is harder when people is spread all over the world. IMHO you need to compensate this difficulty by having some tool to help you keep in touch. In my current company, we use skype, and we keep in touch at all times with the client, which really helped solve this particular problem.

    6 - Planning: planning is much more difficult when delivering work to someone who is not right at your side.

    5 - Etc, etc.

    --
    diegoT
  8. College Hires the real problem by Kagato · · Score: 5, Insightful

    I think you hit on something, even if you haven't realized it. Companies don't hire first year students. The numbers have been dropping for almost a decade now. Companies get it into their head "why deal with college hires when we can use experienced off-shore". Well you can't keep a pipeline of experienced programmers in the US unless you make the investments in the next generation of programmers.

  9. Down and out by Rocky+Mudbutt · · Score: 4, Funny

    I was the "Down" in Downsized, I was the "Out" in Outsourced. That made me down and out.
    I wanted to be the "Laid" in Laid Off but but my wife gave me "The Look".

    --
    Ethics II Axiom 2. "Man thinks." B. Spinoza
  10. Don't be the ugly American by RobinEggs · · Score: 4, Insightful

    The main problem I've had with Indian programmers is that a lot of them don't really understand english (even though it is the official language of India)

    English is an official language of India, and not the primary one. The primary official language is Hindi - you know, their native language.

    I realize it's vastly preferable that they speak English if they work for you, but you're implying there's actually something wrong with Indians who don't speak English, and that's absurd. There's nothing any more backward or stupid about an Indian who doesn't speak English than there is with a Canadian who doesn't speak French or a Belgian who doesn't speak German.

    Don't practice the cultural ignorance and arrogance that befalls other Americans. I think you're smarter than that.

    1. Re:Don't be the ugly American by olliM · · Score: 5, Insightful

      I'm from Finland, where we don't have English as an official language. I think there is something wrong with Indians who don't speak English, same as with everyone else who doesn't speak it: they are at a great disadvantage in the international job market. I'm not saying it's necessarily their fault, they may not have access to language lessons etc., just that it's a smart move for people from anywhere in the world to learn English.

  11. They might as well be aliens by rsilvergun · · Score: 5, Interesting

    for how much removed they are from the system. The owners that is, not necessarily the managers, but the owners set the policies and tones. Adam Smith lived in a time when it was safe to assume the capitalists would live near the means of production and thus suffer the consequences of their actions. He didn't see satellite communications coming. For what it's worth Karl Marx talked about this; e.g. how capital owners would be insulated by pitting labor in one economy against another; but all anyone can remember about him is that a bunch of dictatorships borrowed his books for rhetoric...

    --
    Hi! I make Firefox Plug-ins. Check 'em out @ https://addons.mozilla.org/en-US/firefox/addon/youtube-mp3-podcaster/