Re: A brief introduction and some questions

From: Edward Cherlin <edward_dot_cherlin_at_etssg_dot_com>
Date: Mon May 03 2004 - 13:33:56 CDT

I'm the oddball here. I make my living by writing and by knowing
what I am writing about. I have been a mathematician, computer
scientist, market analyst, Peace Corp Volunteer, cook, goatherd,
Buddhist priest,...

On Sunday 18 April 2004 19:58, Nathan L. Adams wrote:
> Hello Ed,
> I am a computer engineer, and although I am not the official
> 'mouth-piece ' of the OVC, I though I would take a stab at
> some of your questions. :)
> > Apparently you have decided to use a programming
> > language called Python which runs over the Linux operating
> > system.
> Just to clarify: Python will run on "many brands of UNIX, on
> Windows, OS/2, Mac, Amiga, and many other
> platforms." ( I believe
> Linux was chosen as the underlying operating system for the
> OVC demo software because it is Free/Open Source Software and
> has driver support that rivals and in a many cases exceeds
> Microsoft's offerings. It probably also helps that
> Python/Linux is a pretty darn common combo.

I was one of those recommending Python for the demo. It is
reasonably powerful, and the best-known of the languages for
rapid prototyping, that is, languages that are economical of
programmer time at some cost in machine time. We have not chosen
the implementation language for the production system.

> > I note
> > that you are planning to use generic or commodity level
> > PC's. What are your minimum system requirements? Would a
> > Intel 80386 based system with 16mb of ram and 240mb of hard
> > drive work?

We could do that if it were a priority, by implementing in FORTH.
In that case we could probably run the complete voting system in
640K with no hard drive--maybe as little as 64K in many cases.
But then we would have to hard-code support for each language
and writing system in separate software versions.
Chinese-language fonts run about 10-12 MB each, but a lot of
Chinese-language systems have the fonts in ROM.

But maximum antique-compatibility isn't a priority. Maximum
usability is our first concern. So we want a recent operating
system with full Unicode/multilingual support, which currently
means a recent Linux release with the latest versions of GTK and

I wrote a piece last month on my blog,, about Linux distributions being
localized into numerous languages not supported by commercial
vendors, such as Mongolian, or the Kinyarwanda language of
Rwanda. Just in California there is a requirement for election
materials and ballots in several languages, and there will be
greater demand as it becomes easier to do. We have large
populations of Tagalog speakers from the Phillipines, along with
Chinese, Koreans, Japanese, Vietnamese, Spanish speakers from
Latin America and elsewhere, Hmoob speakers from Laos, and so
on. My company, Encore Technologies, would like to market
systems with OVC software worldwide in hundreds of languages.

We want a language with good Unicode support, or at least one
that can use a good Unicode library like IBM ICU. Recent Linux
distributions are made for Pentium architecture and later.

> The OVC/Python/Linux software stack is for demo purposes. The
> demo software may or may not evolve into the production
> software. As such, the production software may be written in
> an entirely different language. At this point, the minimum
> hardware requirements for the production software can't be
> known.
> > I've read a thoughtful proposition that new commodity
> > type computers be purchased and used for elections and then
> > shopped or loaned out to schools and libraries perhaps in 4
> > year cycles. Much of the software that people are familiar
> > with and that is commonly available for schools and
> > libraries is based on Microsoft Windows. (Please! No
> > discussion about the evil empire. Just take it as a given.)
> > While I'm aware that most anything that can be done under
> > Windows can be done under Linux and probably better, most
> > commodity computers still ship loaded with Windows XP or
> > Windows 2000. Were you planning to ghost or erase the
> > original operating system off these computers and install
> > Linux and related support on most all computers? Then once
> > the election was over, were you planning to reinstall
> > Windows? Had you considered maybe swapping preloaded hard
> > drives instead? Am I missing something obvious here?

Nah, we're planning to knock over the Evil Empire. Don't forget
that there is a strong movement worldwide, especially among
governments, to switch to Free Software. Even in the US, the
appeal of saving money is hard to resist. Note that the savings
is not primarily in the purchase price, but in being able to buy
support from third parties, and in some cases being able to fix
bugs and add features without waiting for a vendor to get around
to it. Use of publicly defined standards for file formats also
offers substantial opportunities for cost savings.

> The prevailing idea at this point is that we will roll our own
> Linux 'Live-CD'. A Live-CD boots and runs completely off of
> the CD. Knoppix is a well-known such beast, and many people
> use it to demo Linux without ever touching their existing
> Windows installations. Some examples you might try for
> yourself:
> > 1. What makes a computer monitor touch screen? Is this
> > something that requires a special monitor or is it just
> > special drivers?
> It is a special monitor. Usually, the act of touching the
> screen is sent to the PC almost exactly as a mouse movement +
> click are sent to the PC. There are subtle differences,
> however, that need to be addressed to avoid certain usability
> issues.

There are several touch-screen technologies. I haven't been
following them lately, but a quick Google turns up CRT and
flat-screen versions using capacitive and resistive sensors.
Capacitive systems work best with bare fingers, while resistive
systems are suitable for gloved hands, styli, and so on. You can
see many of these technologies in ATMs and Point-of-Sale
systems, and they are also prevalant in casino gaming systems.
The Simputer, a handheld for poor people that I promote,
includes a resistive touch screen.

> > 4. One of the plusses (?) of DRE is that the votes are
> > usually put on some sort of chip and then taken down to
> > Department of Elections and read. Some are even capable of
> > being read remotely.

We are planning to write the cryptographically secured results to
a CD-R. The tabulation stations at polling places will have
secure communications with the election boards, which will
communicate with the Secretary of State's office. The voting
machines will have no external connections, of course.

> Georgia uses entirely Diebold DRE machines. I know for a fact
> that the reporting process is as such in at least one county.
> I assume that it the same elsewhere, since everyone uses the
> same equipment, and attends the same training classes:
> - the machines tabulate the votes at a precinct
> - the pollworkers HAND WRITE the totals on a piece of paper
> and sign/date - the paper is faxed to the DoE
> - two days later the local board of elections certifies what
> was faxed
> > The counting of this years
> > primaries in San Diego county were done very quickly with
> > most elections being decided before 2300 hours. This is
> > fast! How will you compete with this?
> Accuracy, integrity, and the assurance of the democratic
> process are more important than speed. Period.

Hear, hear. Nevertheless, our system could produce preliminary
results an hour or two after polls close, and results could
normally be certified in two days, allowing plenty of time for
independent public review of all security measures.

> Nathan

Edward Cherlin, Simputer Evangelist
Encore Technologies (S) Pte. Ltd.
New voices in the global conversation
= The content of this message, with the exception of any external 
= quotations under fair use, are released to the Public Domain    
Received on Mon May 31 23:17:04 2004

This archive was generated by hypermail 2.1.8 : Mon May 31 2004 - 23:18:15 CDT