Bob Jenkins' Web Site

New: Trump's president! Seemed like a legitimate election to me. But I still see it as a significant new threat to my life. I estimate 10% chance of nuclear war, due to his plan to be unpredictable about using nuclear weapons. Trying to reduce my chance of death by nuclear war, I created a petition. It says to add an amendment that the president may only launch nuclear attacks either in retaliation to a nuclear attack, or by approval of 60% of congress, otherwise the president shall be hanged by the neck until dead. And that retaliation should be proportional, at most 2 to 1.

Is this a good idea? It makes the use of nukes more predictable (unless the president is suicidal; I don't know how to cure all problems). It would have delayed the US attacks on Japan until congress approved, but it would not delay mutually assured destruction if Russia launched a first strike against us. It would allow nuking North Korea only if they use a nuke first, or if Congress voted that the president could. It would have made implied threats of a first strike during the cold war clearly empty. Right now the president is empowered to launch an attack for any reason with just the approval of the secretary of defense (who the president appoints). This seems like insufficient checks on power to me. The constitution doesn't cover it already because nuclear weapons did not exist in 1787.

Most new things show up as rants on my future page.

perpetual motion

Table of Contents (internal links):

Here's a hash table, code for perfect hashing, a good hash function for hash table lookup, a FAQ, some theory, and code to search for new hash functions. I tried designing block ciphers and finding characteristics. I had an article published in Dr. Dobb's in September 1997.
Have the cryptographic pseudorandom number generator ISAAC, a small noncryptographic pseudorandom number generator, a prize for breaking ISAAC, and ISAAC's background and theory. Also take some tests for randomness, and a table of orders of magnitude. Here are also some protocols and a unit vector generator.
See some skits from Boy Scouts, SQL tricks from Oracle, near-future speculations, some paper airplanes, some recipies, some music, and some cartoons that I wrote in college.
Look into pentagonal tiles, formulae for n-body orbit simulations, code for the HOMFLY knot polynomial, voting methods, choosing random passwords, jenny for pairwise testing, some error correction codes, a an april fool's design spec, and a web page for choosing colors.
Consider perpetual motion machines, a dirigiped design, a scale model of the solar system, a page on exploring orbits with Java, Klemperer Rosettes, a simulation of Cruithne (a near-earth object), of figure-eight orbits, of binary star planetary orbits, a set of noncolliding orbits, some Dyson Swarms (pretty pictures!), some methods for the n-body problem, a description of the orbit applet used, and a tentative itzu world.
Home projects
See my half bath, a house design that will never be built, a dollhouse that did get built, some genealogical notes, and a roof rack for Justine's car.
Here is my autobiography, a resume, a cong from the British Museum, a comparison of JPEG and JPEG 2000, a bit on software patents, my mom's art, and some early Bob photos. Here are people I've encountered more than once.

Here are some other sites:

Send mail to Bob at