Most of the software companies today face a problem. It is not a serious issue, but it is a problem in the face of free software, especially if you think of migrating everything to free software. If you are a good disciple of what free software teaches us, then you'd understand that using proprietary software along with free software is not something that grants us that much freedom. Of course the usage of the term freedom is quite vague in the last sentence. What I mean is that if you are a programmer, developer, or a system administrator you will think of things that could generally help or improve for e.g. workflow, sales, etc. These proprietary products that run in your free system will remain to be proprietary through out your life. You have the option to upgrade that product but that will again be something that is proprietary. The problem with that product being proprietary is that you have no control to modify the product. This is a major setback for a business that thinks free software.
But there are a lot of obstacles in the way. It is not a good marketing decision to market free software because of how the gnu license controls the product, especially its copying and distribution. You need not always rely on a vendor to obtain the software; your friend can give it to you if he or she has a copy. If this is the case the company will not get any profit/incentive for each copy sold. This is probably where all proprietary companies have a problem. Hence they won’t easily adopt a business model that supports free software (or a free software business model). However in reality, even if this idea of free software never came to exist, the proprietary people would still have a problem – piracy.
The people who use software are always those who know the computers inside out; they are not programmers. However their use of a particular product is vital for accomplishing their purpose. If for some reason they find that there is some problem in the product they expect support for it. They would want the bugs fixed, or a new feature added, or anything that would improve their productivity. Even if these are problems with a commercially available product, people (i.e. the users) will have this sort of demand. If the company that owns the product provides the necessary support and the company is indeed successful to service the users of the product, then naturally all the users will recognize the company and the product.
Here we all should note one thing. By simply making the product and marketing it, a company cannot achieve recognition. People begin to appreciate the product only when support is issued. And this naturally means servicing customers. Hence it is in servicing customers that companies make profit. It does not come from selling the product alone. And if you look at the expense graph, more money is involved during the support stage, i.e. after the product goes into the market and while the customers are serviced. (And it goes without saying that this money is dependent upon the success of the product).
If you wrote a book and tried to publish it, and it became successful, then you would want to pursue the vocation of writing books (provided the issue of piracy never bothered you too much). But if you wrote software and licensed it as free software you would fall and crumble. So if you are looking for a job, don’t write free software. But few people do it. They don’t do it for charity; they do it for recognition.
Until now you must be wondering if there is a business model that supports free software. Well, there is. If you have been closely reading, you’d have the opinion that it is not the product that gains recognition; it is the support that goes with it. So if it is free software or proprietary this rule applies.
So why not build free software for contract?