Re: GNU Freedom could become the mother of all freedoms ======================================================================
GNU Freedom is properly the title of a long essay, but it cannot wait that long as I am obliged to explain this atleast briefly.
Hammurabi inscribed his code that included law like "an eye for an eye; tooth for a tooth" on a stone pillar. The US Constitution, that provided for constitutional justice is written on parchment and still preserved in their archives, and this style of constitutional justice has been adopted by several independant states on their own free will. All freedoms find their source in some basic legal document. To record the law, people have used human memory, wood, leather, clay, stone, bronze, iron, parchment, paper, palm leaves and anything that the people considered extremely durable[FN-1] to record. The storage of laws in the medium of computer hardware and its capability to execute the written code in ways meaningful to us through software is something unknown in legal history.
Let us proceed further in the light of our own constitution and the US constitution.
Since independence and the coming into force of our constitution, we enjoy several freedoms. Part III of the Indian Constitution lists several basic fundamental rights and Article 32 guarantees the right to move the Supreme Court of India for the enforcement of rights conferred in Part III. Without Article 32 the rest of Part III will be a list of empty rights. Of course, we have Article 226. But the point is that, without procedures to enforce rights and freedoms guaranteed, Part III Rights and Freedoms would be as empty as our Part IV Directives. Many of our freedoms were adopted on the lines of the US constitution.
Execution and enforcement have a close connection. We are forced to seek enforcement only because of some failure or defect in execution. Courts are actually engaged in debugging the errors encountered in the execution of laws.
All software, by their very nature, execute rules in ways which ultimately makes sense only to humans. If execution of laws is done with the aid of computers, then the need to seek enforcement is almost redundant. Then, the software becomes the tool and means of safeguarding all the other freedoms.
Freedoms are positive rights so far as people are concerned, but the very same freedoms are negative injunctions against the state. Generally, if a constitution says that "freedom of speech is guaranteed", it only means that the state cannot make any law that takes away the freedom of speech from its people. Our constitution gives these freedoms under Article 19 using a positive language, and on the contrary, the US constitution plainly speaks of the freedoms as negative injunctions against the state. But the end result is the same, for example, the penal law of the state cannot punish you for making a speech, and if any such law is made, the courts will hold the law unconstitutional and refuse enforcement.
Freedom from discrimination on certain ground is guaranteed in Article 15 of our constitution prohibiting state discrimination against any citizen on grounds of religion, race, sex etc.
Suppose a state law proposes:
if ($citizen_sex == 'male'){ // some discriminatory privilege to male citizens $citizen_pay = 10000; } else { $citizen_pay = 8000; }
A parser can handle the discrimination violating Article 15, and could be made to return an error [FN-2].
Error: if ($citizen_sex == 'male') { ... } violates Article 15 Error: legislation failed
Software can elegantly execute laws and deal with attempts to encroach freedoms at the earliest point of time. There are fewer occasions when something unconstitutional or ultra vires is allowed to be done, and then latter correct the error through enforcement of constitutional rights. This is the main reason why sofware could be the fulcrum on which all our rights rest, and could be used as a convenient tool to achieve results that may otherwise be difficult to enforce, provide or measure.
Statutory interpretation would also become superfluous, because computer languages are well designed to rule out ambiguities, or handle ambiguities in well known ways, and irresponsible absurd interpretations of the law will become a thing of the past.
Of course, there would be several executive actions that can be done in the name of law without a computer presence, like searches or arrests. Errors in such cases can be dealt with by the judiciary as done now, but perhaps with greater speed and accuracy with computer aid. Such errors are best corrected only by education, where also computers can play an important role.
Computers are no substitute for us, but computers can aid to protect all our rights as guaranteed by a constitution, through reliable execution that can easily be supervised by us.
It is needless to illustrate execution of state laws with computer aid.
States that used paper, parchment and stone in the past now have the option to use computer hardware and software to store their laws and execute them as proceedings, for better enforcement, peace and prosperity. Computer hardware could be purchased. But hardware cannot be directly used without the aid of several software tools and aids. Software needs to be written from scratch or obtained from other sources. Writing software from scratch is not easy or possible for governments. If this were possible, then there is no need to go for third party software. States often desire tried and tested things for use.
Opting for non-free software means that the state seriously compromises its sovereignty, because of non-disclosure of source code, and a host of other defects inherent to the very nature of non-free software. The law itself is open, and any software that it may rely upon for execution also necessary has to be open. Black box method of software use is also undemocratic and can never be trusted. Choosing free software is the only solution that does not compromise state sovereignty, as the state can independently examine the source code before using it freely, and make any modification to suit its needs, without any permission from even the author of the code. [Though not required by the GPL, giving credit to the author(s) of the code will show stateliness!]. Free software fits the law like a glove, in all aspects.[FN-3] There is in fact no reason to consider software and law as two different fields.
Once the state decides upon free software, it will need to choose some database application to store its laws and proceedings, and other software tools to "execute" written code. A host of free software tools like Apache, BIND, PostgreSQL, PHP, Perl, Gimp, gcc, emacs, and others are all required to create a computer based legal system to make democracy work right for a state. Practically, most of these tools need make or gmake, and gcc to compile for use. make, gmake and gcc are GNU software. Without RMS and GNU, there would have been no make or gcc. Therefore, GNU is at the very heart of any open legal system that can work from a computer network.
Therefore free software is required to create a democratic legal system that works on computer networks, and execution of all the other freedoms will flow through the free software used.
Freedom of life is meaningless if I do not have free safe water to drink. Experts in Chennai say, 1mm of rain if stored well, could meet the one day's supply needs of Chennai people. Chennai receives about 450 mm of rain annually. If we go without water most of the days, the fault lies in us. I would expect the software the state uses to keep measure of rainfall received, the storage achieved, and use the feedback to achieve a sustained flow of water to quench our thirst. Just like water flows through rivers, the law could flow through free software, and satisfy the most pressing needs of mankind.
Freedom of life is again empty if we have too much chloride base chemical pesticides in soil [annual worth valued at Rs.4000 crores]. If the state resolves to stop using chloride based pesticides and opt to direct use of neem powder, dung ash, coffee powder [coffee plant produces caffeine as a pesticide to ward away pests, but we take it as a "beverage"], breeding of sparrows and other birds that prey on pests naturally all the time, we should be able to monitor execution of a state plan to do this from our home, without much strain. People or the sofware itself can raise hue and cry if things are not proceeding as intended, to make amends and corrections until things work out well. Then our freedom of life will have some meaning.
That is why, free software could become the mother of all our freedoms. In nature, life flows through the mother. The British Parliament refused grant to Charles Babbage, who then proceeded to construct his Analytical Engine with his own funds, and at a time of financial crisis his mother alone encouraged him to keep up the good work advising "--pursue it, even if it should oblige you to live on bread and cheese." All hackers owe a tribute to Charles Babbage, the first software developer, to ensure that law flows through free software, and take care of the freedom of the people like a mother takes care of her children. The day when such free sofware is available and states adopt such free software, the tribute would have been made.
-K. Ramanraj.
Foot Notes:-
FN-1: Computer hardware may be the least durable in this sense of the word, but it is the best choice to achieve the true object of law
FN-2: To enable this, variable naming rules are just as important in law also
FN-3: Please refer to the philosophy section at http://www.gnu.org