Other Party Software
Many, many times in over twenty years I have heard the statement we don't use 3rd party software. It got me thinking about this. Instead of trying to tell people what to do I thought how Herb Cohen would get someone over to his way of thinking. It evokes the following questions: do you hire contractors that write software for you? Do you hire employees that write software for you? Do these employees or contractors sometimes take jobs elsewhere and become unavailable? Then, the obvious conclusion is that don't they become other parties or 3rd parties once they leave? And, since you are no long paying these ex-employees and ex-contractors don't they become disinterested other parties?
The obvious answer to these questions is that in fact employees and contractors almost eventually leave at some point.
The response is that well at least we have the code. So, if you have the source code and still have other parties why not buy software from other parties at the best possible price, as long as you have the source code?
Here is the predicament. Intellectual capital costs money. Contractors and employees may be experts in your domain but are seldom experts at everything like writing controls or components. However, you can buy controls and components from other parties without owning the long term cost of the intellectual property. Suppose you can buy a grid for $200, an interested other party's profit model is based on supporting that code, they aren't going to leave because they have other customers and upgrades are only a couple hundred dollars. Compare that to a non-expert inventing a grid over a week, debugging and upgrading over several more weeks and then all of the inherent bugs, quirks and challenges of owning code written by committed employees or contractors to code written by engaged owner-experts that aren't employees or contractors. You are more likely to have a long term relationship, support, modestly priced upgrades, and a better result by interested experts that make their living writing just those controls and components, especially if they sell you the source. The choice is obvious: better code, written by experts, at substantially lower prices.
Let your employees and contractors write differentiating code that gives you a competitive advantage, code that you can't get from third parties and leverage code written by experts that yield professional interfaces for example as much as possible. You will save money, still have source code at a lower overall cost, and your software will be produced at a better price. This also gives you a competitive advantage time to market.
I have never met a contractor or employee of XYZ company write a better grid at a better price than an expert that does just that job every single day.
Most people aren't qualified to do their own plumbing build a house, car, or airplane, and can't do it as cost effectively as an expert can. Sure your programmers have some expertise and they may know about your problem domain, so let them focus on what only they can do and let the experts do the rest.

