Sunday, September 03, 2006

Complications Speak Out Loud...

I have been trying to assess what if all companies adopted the GPL as the norm?

The answer to that I think is quite complicated. Because I have to work in a software industry to find out!!! But I took the time to discuss with a friend. He had no idea about the philosophy of free software, and the GPL. I gave an intro to him. He seemed to appreciate the idea for a while...But one question bugged him. I need to get paid for what I work, right? Then how can the GPL support this valid incentive? Hm, it seemed to be a problem. Well, it is a valid question in one sense; apparently my friend was musing on the idea of "free" as in zero price. And eventually that lead him to conclude that he won't get paid for the work he does...! That seemed odd to me at first. But then I thought, well, there is a way to get paid!!!

There is always a concept of demand coming into the picture. As long as there is demand companies can ask for a price or charge for the service they perform. This, I guess somehow precipitates to become the salary for an employee. And who will provide the funding? The customers or the one who has made the demand! The customers can be a corporation or generally a body of people.

This is just my version of a simple explanation. It cannot however substitute what is actually happening out there. Because I really don't know what is actually happening out there! But I can tell you this much...people don't see that much returns as when licenced through the GPL...

And, yes, its all a choice - a decision at the management level.

However, I will give you a picture about what I think:

If an organization XYZ figures that it needs a particular implementation of some computer-aided-assistance and, that they don't find any existing in-house solutions for it, they may then decide to procure the software system through a committed organization (for e.g. ABC). The XYZ people reach the ABC organization and tell them what they need. This way ABC works on the developing the system for them. How the money or ABC's profit scheme fit into this picture? Well, I leave it for you to figure.

This is what happens usually. You don't need to be a manager or someone who works in a software firm to figure this out. The decision to make this a free software or a libre software system is however not at all connected with this. The money that goes into the picture is the same; it flows the same. The service done by ABC is one and the same.

But if free software were the norm, we might have to think a bit differently. For ABC to develop the system, its relatively easy, I guess. Suppose ABC is a new corporation then what they have to do in order to develop the system in my opinion is search for a solution in the Internet. There must be some idea or the other hanging loose. This way they don't have to waste time coding for the system. Most of the code they can acquire, out-house. Only those components which need be developed specially are developed in-house. So there are two things ABC needs to do:

1. Search the Internet
2. develop what they cannot find.
3. integrate all of this into a final system and validate the whole thing.

ABC can ask charges for these above services. XYZ will pay - they need the system, right? How ABC does all this is up to you to figure out.

Now the next phase - evolution.

The normal scenario: that of proprietary software firms.
XYZ has to depend on ABC to further evolve this product. Because ABC developed it! And they would be more than happy to work on the product. By now the knowledge that has gone into developing the system is in-house. So what the in-house team has to do is learn the product and somehow incorporate the changes.

Now what if the ABC company suddenly shut down - ran out of business? XYZ has a problem. Who will evolve the product for them? Checkmate!

The GPL scenario: of course the software system is company specific. I don't think users like you and I have business with it. So lets rule out the possibility of this software system going into the piracy cycle. Suppose if ABC shuts down. What XYZ can do is approach another organizationPQR) to evolve it for them. All the documentation that has gone into the software development is given to them. And, now its a issue of how they develop the evolved system.

And for whatever reason what if the developers of PQR find something they don't understand? - There is always the Internet!!!


All I wanted to emphasise was on freedom of using the GPL (GNU Public Licence). But, again I don't want people to think this can substitute all business scenarios. But somehow I believe the GPL slowly will, but the GPL has miles to go before that can happen.