Thursday, July 23, 2009

Is Smartmatic's PCOS software covered by GPL?


Smartmatic's PCOS computer, called the SAES-1800 [1], will be used as vote counting machine at the precincts on election day, May 10, 2010. SAES works under the uClinux operating system and most probably uses the libSANE scanner library for its built-in ballot scanner. Both the uClinux operating system and the libSANE scanner library are covered by the General Public License (GPL) [2], a freedom software license (open source license). Under the GPL, any derivative product, like the SAES software, has to be covered by the same GPL, and so must necessarily be open source. Is the refusal of Smartmatic to release the source code of SAES-1800 a violation of the GPL? During the Senate hearing on the Smartmatic-TIM-Comelec contract by Senator Chiz Escudero's committee, I asked Mr. Cesar Flores, spokeman of Smartmatic how I can get technical documentation and the source code of the SAES-1800. Mr. Flores said that anything that we need from them, we should ask Comelec. The Center for People Empowerment in Governance (of which I am IT consultant) asked Comelec for the source code of the election programs, including the SAES and CCS (canvassing and consolidating system) programs. In an en-banc resolution dated June 2009, Comelec granted CenPEG its request for a copy of the source code of SAES and CCS. Up to now, more than a month after the en-banc resolution, CenPEG has not gotten a copy of the source codes of the two programs. Comelec's Executive Director Tolentino asked CenPEG to wait for the Comelec's Technical Evaluation Committee to issue a set of guidelines for the source code review by independent parties outside of Comelec. But the law (RA-9369) [3] is quite clear on this issue of source code review of the election programs:

"Once an AES technology is selected for implementation, the Commission shall promptly make the source code of that technology available and open to any interested political party or groups which may conduct their own review thereof."

Is this delaying tactic part of the Smartmatic-Comelec conspiracy to get full control of computerized election 2010, so that no one has an idea of how the Smartmatic computer programs are counting our votes and combining them into canvasses? Is this refusal of the Comelec to "promptly make the source code ... available" to CenPEG, so that it may "conduct its own review thereof", a violation of RA-9369?

Is Smartmatic's refusal to release the source code of the SAES-1800 a violation of the General Public License? In recent announcement of Microsoft to contribute 20,000 lines of Hyper-V code under the GPL, it was discovered that Microsoft had used open source components that were released under GPL. Microsoft is contributing its Hyper-V code under GPL in order to avoid a big embarassment that will be caused by its violation of the GPL of some of its components. Now is this not precisely the same case of Smartmatic's use of uClinux and libSANE library? Should not Smartmatic do the honorable thing and release the SAES-1800 code under the GPL?

Smartmatic: the people of the Philippines is waiting for you to do the honorable thing.

Richard Stallman: What are you doing?

//PManalastas


[1] http://www.smartmatic.com/fileadmin/users/docs/SAESSAES1800_technicalsheet_v2.0.pdf
[2] http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
[3] http://www.chanrobles.com/republicactno9369.html
[4] http://www.osnews.com/story/21882/Microsoft_s_Linux_Kernel_Code_Drop_Result_of_GPL_Violation

Sunday, July 19, 2009

Entering Formulas in OpenOffice (July 20 09)

Some colleagues have asked me how to enter formulas in OpenOffice documents. I discovered that OO has a tutorial on this topic:

http://documentation.openoffice.org/HOW_TO/formula/Formula_HowTo_1_0.pdf

The notation used for entering formulas is almost like TeX, only slightly better. So friends, go ahead and get this tutorial, and fire away with your formulas!

Saturday, July 18, 2009

Fedora 11 Lion Wallpaper (Jul 19 09)


The latest Fedora Linux distribution, Fedora 11, is codenamed "Leonidas", so I wanted to get a "lion" wallpaper for my laptop. Several lion wallpapers are available for download from various sites, including:

leonidas-1-noon_right.jpg
King_4070x1536.xcf

The first one "leonidas-1-noon_right.jpg" has a very big lion face that tends to obscure the icons on the desktop. The second one "King_4070x1536.xcf" is too big to use as wallpaper. So I decided to fix "King" to make it just right for my 1280x800 screen, and I got the wallpaper above. I do not know if I'm violating any copyrights here, and if I am, please tell me so that I can take this jpg image from my site.



Thursday, July 16, 2009

Karen Installs 4-Node Rockscluster (Jul 17 09)

My daughter Karen works as research assistant in one of the labs at the National Institute of Melocular Biology and Biotechnology at the University of the Philippines. She told me that their lab had a budget of PHP75,000.00 for a desktop computer. I suggested that that amount could buy them a compute cluster, instead of just one computer. So we did some canvassing, and she finally bought the cheapest four-node cluster of Intel Core2 Duo machines, interconnected with a 16-port network switch. The 16 ports is for growth, should they decide to add more nodes. The flat screen LCD monitor and mouse is shared by all four nodes via a KVM switch.

Being a molecular biology graduate did not prepare her for what lies ahead -- the installation of Rockscluster software. Now she is learning about master front-end, compute nodes, managed switch, DNS, IP addressing, MAC addresses, kickstart files, grub configuration, X configuration, Xen or no-Xen, BIO roll, etc.

Life is interesting when you have problems to solve. And my daughter sure has lots of them!

Karen Installs 4-Node Rockscluster (Jul 17 09)

My daughter Karen works as research assistant in one of the labs at the National Institute of Melocular Biology and Biotechnology at the University of the Philippines. She told me that their lab had a budget of PHP75,000.00 for a desktop computer. I suggested that that amount could buy them a compute cluster, instead of just one computer. So we did some canvassing, and she finally bought the cheapest four-node cluster of Intel Core2 Duo machines, interconnected with a 16-port network switch. The 16 ports is for growth, should they decide to add more nodes. The flat screen LCD monitor and mouse is shared by all four nodes via a KVM switch.

Being a molecular biology graduate did not prepare her for what lies ahead -- the installation of Rockscluster software. Now she is learning about master front-end, compute nodes, managed switch, DNS, IP addressing, MAC addresses, kickstart files, grub configuration, X configuration, Xen or no-Xen, BIO roll, etc.

Life is interesting when you have problems to solve. And my daughter sure has lots of them!

Public access to source code of election programs (Jul 17 09)

The term "open source" and the more revolutionary term "free software" have official definitions given in the following documents:

1. Open source: http://www.opensource.org/docs/definition.php

2. Free software: http://www.gnu.org/philosophy/free-sw.html

Basically, open source (& free software) means the person (anybody) who got the software under the open source/free software license has the freedom to study the code, make improvements, give the code away for free or for profit, plus many other freedoms. The only difference between open source and free software is in the treatment of derivative products. BSD-open-source allows the derivative product to be covered by any license the derivator wants. A derivative of GPL-free-software must be covered by the GPL-free-software license. The exact text of the GPL is given here:

http://www.gnu.org/licenses/gpl.txt

The law RA-9369 requires that the source code of the election programs (PCOS and CCS) be made available by Comelec to the political parties and interested groups, for their independent review. But the law did not specify that the election programs be made open source, since that is asking too much.

However, Smartmatic's SAES-1800 program can be considered a "derivative" product of the uClinux operating system and libSane scanner library, both of which are GPL-free-software. "Considered derivative product" because I am not absolutely sure that it is a derivative product. If it is, then it must be GPL-free-software, by the infectious nature of the GPL. Under the conditions of the GPL, Smartmatic has to post the PCOS/SAES-1800 source code in a publicly accessible site.

Whether GPL or not, the law RA-9369 is clear. The political parties and interested groups have just to request Comelec, and under this law, Comelec has to make the source code available. There is no mention in the law of any source code review "guidelines". The term "guidelines" was coined by Melo/jimenez to restrict the freedom of citizens to access the source code, and "guidelines" has the effect of making the code accessible only to the experts, and only those "experts" as defined by Comelec.


By the nature of fully computerized counting of our votes from our paper ballots, it is not possible to witness a public counting of our votes, and so we can never be truly confident that the computer does not make mistakes counting our votes. Only a source code review by the public will assure the public that the computer will do a reasonable job. But by setting "guidelines", the Comelec is depriving the public the right to know how their votes are counted.

It helps to know that we graduate tens of thousands from our B.S. Computer Science and B.S. Information Technology programs. In fact, our government leaders take pride in the fact that the Filipino is the world's best English-speaking programmer. So we have hundreds of thousands of Filipinos who can read source code, so why restrict access to source code by setting "guidelines" giving only experts selected by Comelec exclusive access.

Computerized Election 2010 should implement secret voting and public counting. And computerized counting can have some semblance to public counting only when the source is made public.