The meat of the law is one sentence: "No state agency nor the Purchasing Division of the Department of Central Services shall enter into a contract for the acquisition of computer software developed exclusively for the agency or the state [emphasis mine], unless the vendor agrees to provide to the agency or the state the source code for the software."
There's also a follow-up definition: "For purposes of this section, "source code" means the programming instruction for a computer program in its original form, created by a programmer with a text editor or a visual programming tool and saved in a file. "
It makes some sense to require this: if the government is paying for software, it arguably should get the source code also, in case the company that wrote the software won't support it, goes out of business, etc. Still this is a very simplistic law. Since it only applies to software written specifically for the government, it hardly qualifies as an "open source" law, and it went nowhere in the Oklahoma legislature.
The bill, HB 1627 (text is at the end of this article; RTF is here) was introduced by Republican Representative Mike Reynolds, a computer consultant and president of a software company. I would guess that Reynolds did not examine legislation that had been proposed in other states; the bill seems an attempt to write a law about open source without much consideration of the issues involved. I would classify is as well-intentioned, but hopeless in its current form.
The law has no preamble or explanation of "why?", so it's not clear what the goal is. Since it only states that the vendors must provide the source code and says nothing about the license under which the code must be provided, it appears that if Microsoft was writing software for the state of Oklahoma (which I suppose its consulting arm might do), the company could satisfy this bill by including Oklahoma in their "Shared Source" program. Thus, the bill does not give the cost benefits of true open source software, or the technical benefits of being able to modify and redistribute the code. It's not even clear if the code has to be provided in usable form (electronic, with build instructions). What would the State of Oklahoma hypothetically do if it was handed a printout of the 50 million (or whatever) lines of source code in Windows XP?
Of course, the law also does not specify anything about data formats, so the state would be left to decipher the source code if it wanted to figure those out. And the law wouldn't help the average citizen of Oklahoma, since it wouldn't apply to commercial software, and even if it did, the source code and any deciphered data formats would only be in the hands of the government.
Finally, the law applies a blanket rule to all software, and doesn't have any provision for being unable to find a vendor who will comply with it. Given the small number of companies that are likely to bid on contracts for custom-written software for the government, this needs to be addressed.
Despite this, Microsoft didn't like it. Of course the company is leery of the words "source code" and "voted into law" appearing too near each other in any legislative record anywhere, but still their attack on this law (through the Initiative for Software Choice's Policy Tracker, the last item) seems ham-handed. In particular they complain about the bill being labelled an "emergency", when in fact a quick scan of the Oklahoma legislative docket reveals that about half of all proposed bills are labelled that way, and it appears to simply be a legal device to cause the bill to take effect immediately after it is passed, instead of 90 days after the session ends (which I think is the default in Oklahoma). Luckily for humanity, the ISC promises to keep us posted if anything happens with the bill.
Anyway, the bill was introduced on January 15, 2003, and on the current Oklahoma bill tracking page (search for "1627") it is listed as "dormant" as of February 20.
The full text of the bill follows:
STATE OF OKLAHOMA
1st Session of the 49th Legislature (2003)
HOUSE BILL HB1627 By: Reynolds
An Act relating to state government; prohibiting contracts for certain computer software unless the source code is provided; requiring certain documentation; directing the State Purchasing Director to provide advice and assistance; providing definitions; providing for codification; and declaring an emergency.
BE IT ENACTED BY THE PEOPLE OF THE STATE OF OKLAHOMA:
SECTION 1. NEW LAW A new section of law to be codified in the Oklahoma Statutes as Section 85.7d of Title 74, unless there is created a duplication in numbering, reads as follows:
A. No state agency nor the Purchasing Division of the Department of Central Services shall enter into a contract for the acquisition of computer software developed exclusively for the agency or the state, unless the vendor agrees to provide to the agency or the state the source code for the software.
B. The State Purchasing Director or the procurement officer of state agencies not subject to the Central Purchasing Act shall not process any state agency request for the acquisition of computer software developed exclusively for the agency unless the proposed vendor provides documentation that complies with subsection A of this section.
C. The State Purchasing Director shall provide advice and assistance as may be required in order for state agencies to comply with the provisions of this section.
D. For purposes of this section, “state agency” shall include all state agencies, whether subject to the Central Purchasing Act or not.
E. For purposes of this section, “source code” means the programming instruction for a computer program in its original form, created by a programmer with a text editor or a visual programming tool and saved in a file.
SECTION 2. It being immediately necessary for the preservation of the public peace, health and safety, an emergency is hereby declared to exist, by reason whereof this act shall take effect and be in full force from and after its passage and approval.
Posted by Adam Barr at May 19, 2003 11:42 AM