If you won’t comply with NY laws, take your business elsewhere
On June 20, 2007 Rick Gleim, vice president of Avante International Technology sent an email to all New York State election commissioners and officials concerning New York State’s source code review laws. Mr. Gleim argues for relaxation of New York State's escrow and source code review requirements. There are two points made by Mr. Gleim that are necessary to rebut. I will address the first here, and the other, regarding the low level code used in chipsets and microprocessors, in a subsequent post.
In his message Mr. Gleim writes: “It is not possible to design new equipment with new operating systems, new EMS and new hardware all with vendor developed software and source code in less than a couple of years. And that is, if the vendors wanted to do this.”
Mr. Gleim fails to note that voting system vendors have already had 2 years to produce equipment which complies with New York State election law. Section 7-208 of Election law has been in force since June 2005 and states in part, “…shall place into escrow with the state board of elections a complete copy of all programming, source coding and software employed by the voting machine…” It should not be news to anyone in the software industry that Microsoft would never allow their source code to be escrowed -- they have rigorously defended this for many years. Given that New York State election law is clear and unambiguous, why did vendors not begin in July 2005 to develop systems that would comply with New York States requirements? In the two-year period between passage of the law and Mr. Gleim's message, it would have been fully possible to develop systems using open source code systems like Linux. Mr. Gleim acknowledges as much in his statement above. But they chose not to. Why?
I spent 20 years as a software developer, with the latter half of my career spent as a project manager leading world class software development teams. If my boss had come to me in July of 2005 and said, “There is a potential $300 million contract at stake in New York State, and we have to develop products that comply with their laws so we can compete in that market. Your job is to get it done in a year.” I could have done it. Give me a team of five experienced programmers and we could have easily developed such a compliant system. Voting machine technology is after all, not rocket science. It's a basic application of database technology - and open source code tools and operating systems are readily available which could have been easily been used had the vendors chosen to do so.
But, rather than develop a system that complied with New York State law, voting machine vendors chose to use Microsoft Windows as the operating system for their PC based Election Management Systems, and in some cases for their touch screen DREs. As noted above, Microsoft has always made it crystal clear that they would never, ever surrender their source code - they never have and they never will. Microsoft has rigorously defended this for years. However, voting machine vendors, knowing full well that using the Windows operating system could not possibly comply with New York State law chose to market their existing Windows-based products anyway.
It is incumbent upon the voting machine vendors to produce products that comply with New York State requirements. Rather than do that however, they chose to ignore our requirements, and worked instead on attempts to weaken the letter and the intent of our law. Today, rather than focusing their efforts on developing systems that comply with New York’s laws, they focus on lobbying attempts to weaken our extraordinarily strong source code provision, one of which all New Yorkers can be proud.
This decision to attempt to weaken our law rather than comply with it is extraordinary, and flies in the face of the basic tenets of Capitalism. Businesses exist to serve their customers, and they do so by meeting their customer’s needs. In theory, the business that best meets customer needs will prevail in the marketplace. I can't think of another business which faced with a potential $300,000,000 contract would not do everything in their power to make a product compliant with New York State’s requirements. Typically the first step in developing software products is to define the customer’s requirements, and then design the product to meet the customer’s needs. But in this case voting machine vendors would prefer to place the cart before the horse. They want New York State citizens to change our requirements to meet their needs!
I note that Mr. Gleim says as much when he comments “And that is, if the vendors wanted to do this.” Excuse me? If a vendor wants to compete for New York State's multi-million dollar voting machine contract, then they damn well better “want to do this.” If you prefer not to comply with New York's requirements, that is certainly your right, but then you'll have to take your business elsewhere.
Our laws are supposed to represent the will of the people. In June 2005 the people of New York State expressed their will regarding voting machines and the escrow and review of source code. In June 2007 the State Legislature reaffirmed their commitment to this law. It is clear and unambiguous. It says that all source code must be escrowed and may be subject to review by appointed independent reviewers. The vendors have known this for two years. To be claiming now that there isn’t sufficient time to produce products which comply with our law seeks to hide the fact that for 24 months they have chosen to not only ignore, but to actively undermine the will of the people of the great State of New York.