I have had an interest in politics all my life. Back in 1995 I heard on the radio driving to work that "Senator Dole can't win, because he can't carry California." I wondered about this, and so I tried to cobble up a spreadsheet to tally Electoral Votes. This was awkward and unsatisfactory. I searched the web and found lots of information, but nothing that would let me do my own projections. At about the same time Sun was promoting a new computer Language called Java that would allow web browsers to host applications as well as just text and pictures. My employer was interested in Java and gave me permission to spend a week evaluating the language. This was how version one of the calculator was born. Versions 1 and 2 were written entirely by me, but with a lot of great suggestions from my friends and family.
2) What's the difference between version 1 and version 2 ?
Version 1 is much smaller and faster than version 2, because it has only the electoral votes for 1990-2000. Even though the elections of the 1980s are displayed, the numbers are incorrect because the electoral college is resized every 10 years. The major improvement in version 2 is the separation of the data from the code. In version 2 the map and the election results are stored in separate datafiles so that errors can be corrected easily. Version 2 doesn't download data for an election until you select that election. Once the election is downloaded, then the data is "cached" in your browser. Version 2 supports four candidates instead of three. Unlike Version 1, Version 2 has a lot of room for growth.
3) When I select an election, the map looked wrong and/or Wyoming was missing. Why ?
In version 2 the map and the election results are stored in separate datafiles so that errors can be corrected easily. Version 2 doesn't download data for an election until you select that election. Occasionally data is corrupted in transmission and you get whacked out results. Wyoming is the last state in the datafile, so if the connection drops it will be omitted. The "reset" button on the calculator reloads the current election from the server. If the results look fishy try hitting "reset".
4) Why doesn't the calculator include the Libertarian/Natural Law/Internet/Socialist/Communist party ?
There have been as many six or seven parties who received electoral votes, so this is a fair question. I wound up coding version 2 to show a maximum of four slates mainly to keep the display from becoming too cluttered, and I just had use my own judgment as to which parties to display. I tried to display the parties with the most impact on the results.
5) I can't print, or the colors come out the same when I print, or there is a break in the middle of the map when I print. What's up with that ?
One of the limitations of the Java programming language (when it's used inside of a web page) is that it can't write any information to your disk drives, printers, or other devices on your computer (we call this the "Java Sandbox"). This is an important security feature which makes Java "applets" safe to run on your computer. This is also why you can't save your work. Because of this limitation, printing is totally under the control of your browser. Some browsers do not print anything for Java applets, some print fairly well, most mess it up to some extent. The only way to really save or print a map is to "capture a screen image" and print it with a graphics program. Here is how to capture the image on Windows machines:
5.1) Get the map centered on your video display.
5.2) Press the "print screen" button on you keyboard. This copies a bitmap image of the screen onto the clipboard. Open a graphics program such as the windows "Paint" program. Select edit->paste. The image will be copied to the new program, where you can crop it and otherwise edit it.
The bottom line is, sadly, that the current calculator doesn't really support printing.
6) How can I save my work ?
Other than the kluge described above you can't, because Java won't let the program write files to your computer.
7) I calculated that both slates could get 269 votes, and no one would win. Does this mean the calculator is broken ?
No, the Electoral College system doesn't guarantee that there will be a winner.
8) Why are you promoting this evil system ?
Don't shoot, I'm only the piano player! This is the system we have in this country, I'm just trying to help folks understand it.
9) Can I run the program without being connected to the net ?
Version 1 will run "stand-a-lone", but version 2 needs to download it's files from a web server. I don't officially support this, but I think it could be made to work through a local webserver. If you want to try it, find a geek and have him look at the HTML for the calculator. Tell him to take "mapdata.txt" and the ec jar file from his cache and to copy the xml datafiles from http://www1.jump.net/~jnhtx/ec2/xml/ . I can't support this for general users at this time, but if you know a geek (and who doesn't?) then these clues are enough.
10) Can you display polling data ?
No, polling data is owned by someone who paid a lot of bucks for it. If I take their data and put it on my website they'll come and break my kneecaps.
11) Can I have the source code ?
Not right now.
12) When I use the mouse wheel the map gets distorted. Why ?
This seems to be caused by a bug in Internet Explorer. The only solution I have found is to not use the mouse wheel.
13) Please write a 100 page paper on the electoral college complete with footnotes. Explain the relationship between the 12th Amendment and the Florida Civil Code (including case law). Compare and Contrast the election of 2000 with the election of 1876. My paper is due tomorrow, so can you send me this information right away ?
Ahhhh no.
14) Can you add this or that enhancement ?
I hope so. People have suggested a lot of excellent ideas for improving the calculator. The most popular suggestions include:
Allow the user to select colors and/or black and white patterns for the display, instead of the hard coded colors we have now.
Support printing and let me save my work! There are a couple of ways to do it.
Improve the usability of the GUI by making the slate buttons stick down, so you can just click all the states for each slate.
The gray color when states split their vote is lame. Make the colors fill the state proportionally to their share of the total vote of that state.
Allow a choice of maps, allow users to design their own maps. One user already has done some work on this.
Don't hesitate to make suggestions and/or point out errors, I welcome them all.
15) What are you future plans to support the calculator ?
I have been very gratified by the huge response to the calculator, and I fully intend to do major improvements well before the next election. My inclination at this point (3/17/2003) is to not make a major revision of the current Java verison of the calculator. Instead I may write a full free standing windows program in the C++ language. This version could still be updated from the internet, but would also run without a network. If I go this route I may charge a small licsensing fee to commerical users and large institutions. In any case, I will continue the present web based version.