Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×

Comment playtank (Score 1) 403

Your boss is making a financial argument for outsourcing. The only way to counter this, if you want to counter it, is with another financial argument against outsourcing. Despite the great many technical reasons not to outsource (and a few possible reasons in favor, perhaps), the decision that was made was a financial one. So if you want to argue against is, you need to be arguing in the same domain.

Here's my financial argument in favor of not outsourcing.

When you outsourcing, you are paying an external company to grow the necessary knowledge, skills, and ability to ship a software product. You are accruing zero of these assets to your company. When you have completed the project, you have generated one tangible asset, and zero intangible assets. All of the intangible assets are now owned by the party that you used to create the product. Furthermore, you have increased the value of the vendor, and thus you have increased the rate which that company can charge. And you can bet that this will be passed on to you in future product negotiations.

Inversely, with an in-house staff, the so called "extra cost" of staffing and benefits, if your environment is healthy enough to lead to employee retention of a reasonable level, leads to the accrual of in house knowledge on a wide range of topics. These include, but are not limited to: software development methodologies, planning, user interface design, software quality assurance, scheduling, testing, source code control, building reusable components, and many more. As the team matures, future products cost less.

So, in economic terms, you can outsource and pay a vendor less for the current project, adding value to that vendor. This will result either in escalating costs over time with the same vendor, or the continued use of a new vendor, and each new product will bear the cost of being a version 1 product with no institutional knowledge or economies of scale. Or you can keep things in house, pay more up front as the team develops the initial products, but with proper management you'll have a team that will produce products faster, with more personal investment, and higher quality, with a much smaller incremental cost over time.

Comment Useless Argument (Score 2, Interesting) 207

Even CoreAnimation is not beyond the "copying" argument. Microsoft shipped DirectAnimation years ago. Here's a link to the press release.

But this entire argument is completely useless. There are a number of skills at play when it comes to building and shipping any techology. First, a company needs to see an opportunity. Then, they need to design the right product for the market. Then they need to implement the product so that it can be easily used and make sure it's flexible enough that users can mould it into their products. Finally, the technology must be correclty marketed.

Fail at any of these, and you'll end up with a technological dead end. But that doesn't mean that somebody else didn't see the need as well, or that somebody else might not implement a better framework. That's supposed to be the beauty of our industry. There is room for competition and innovation, and no two products will hit the exact same sweet spot with a user base.

It doesn't matter who did it first. It matters who does it best for you. If I'm forced to code only on Linux, then I can tell you that CoreAnimation is not the technology for me. So I'll be looking for some competition. If I get to use OS X, I'm sure CoreAnimaiton will be useful. And if I'm on Windows, welll, DirectAnimation is dead. So I guess I'm screwed.

I don't care who was first, or who copied who. I need techology, and the capabilites of any library or feature I can use are highly dependent on the capabilities of the platform itself. If my OS provider can keep rolling out new features that help me write better software, I'm all for it. Even if they are copying somebody else. Where would any art form we have today be without the copying of features? Music, painting, storytelling; all art relies on a shared context. Great art works from there and pushes the boundaries. And I believe that coding can be an artistic expression. So I expect great programmers to borrow from each other, and then push those ideas in new directions.

We can argue which company's new direction we like best. But who is copying who? I don't care. I only care who is making the technology that I can use to write my software.

Slashdot Top Deals

"Ninety percent of baseball is half mental." -- Yogi Berra

Working...