Saturday, September 16, 2006

The patent problem revisited.

I have been asking doubts over a forum about the system of software patents. I have clearly expressed the idea that it restricts freedom to program something that ideologically trivial. Hence all free software programmers are forced to take evasive measures that harm the cult of free software.

But there seems to be no end to this misery. Patents will exist. Be that good or bad! But what is it that really matters? There is no real drive - a coalitive effort - which would actually bring the masses to light. Everyone is busy in their own ferry. (I mean would a business person have insight in what I speak?). But the problem seems to be aggravated from a another perspective too. And from what I learn it regards the philosophy of free software. The argument from that angle becomes significant when you start thinking of standards to software or a system.

When you create software and you GPL it, you are literally inviting other people to view its source and to make modifications on it. You also hope that all subsequent modifications will keep standards that you had originally thought of. But in practice this may not happen. It can be that people can even abuse your idea, or use it for some other purpose, or change the whole software. This happens because the GPL gives you this freedom. Now you may ask how will your software survive? How will the idea you've put in benefit others?

I value this freedom. I think the gpl is good in spite of this small handicap. Because I believe that software will become accepted among the masses this way. But why do I believe it?

Well, the essence of this freedom dictates the fact that anything can happen to your software as it proliferates among the masses. (The worst case being someone making it proprietary). But then if you do want standards maintained, then I guess that you should somehow make people aware of the fact about what they should be; and more importantly even you should be convincing enough while you educate people that anything can happen. Because at some point of time even they might develop on your idea, and they might see the big problem (that is if they have not understood about the value of this freedom).

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.