Monday, June 30, 2008

Poker double elimination

Double elimination tournaments have the problem that the Loser's bracket needs to proceed twice as fast as the winners bracket, that is, two rounds of losers to one winners. However, for poker, this is not a problem, as the Winner's bracket can proceed heads up, and the Loser's can proceed 4 to a table. Heads up play is preferable because it prevents collusion between players.

Unordered tuple

A special tuple constructor (a, b) where a and b are different, i.e., non-unifyable, types. A tuple where order does not matter. Extraction is done with a special overloaded function which detects the type of the desired result.

Easy Firefox Windows compile

I wish there were a simple package for Windows with all the build tools and source code to compile Firefox. Everyone should compile their web browser, as it is these days the most important application you interact with. Being easily able to compile and recompile encourages tinkering, so millions of people improving it. It should also incorporate a patch-generation or distributed version-control tool, perhaps like Debian's Quilt or maybe Git, so people can share their patches. Having the product open-source with a license permitting people to modify is only a first step; the next steps are to have an ecosystem that encourages people to modify the product and to have the product itself be a Design for Modifiability.

Also, Assuming the build tools are good enough, there is performance benefit for compiling for the exact model of your CPU rather than a generic precompiled binary. One might even do profile-directed optimization based on the websites you visit.

Sunday, June 29, 2008

Backup

Backup a set of files, putting in a placeholder for large files "easily re-downloadable from the network". The latter is a matter of user-configuration, though I'm imagining something like "server:optional-authentication:hash". (Do NOT use a broken hash like SHA-1 or MD5!) One use case is upgrading a Linux distribution. All the old OS files should be on the internet somewhere, and may be safely replaced with the hash. One can also think of this as an extreme form of file compression, where the compression program is very large, containing an internet-full of dictionaries of files (or substrings) it knows about.

Next, make it filesystem-transparent; that is, the filesystem automatically goes and fetches the file if it needed at sometime in the future.

Saturday, June 28, 2008

Autonomous Segway

Imagine a Segway or similar device that can drive itself, like the DARPA Grand Challenges. Autonomous vehicles not running on an exclusive "track" are OK so long as they have low kinetic energy, mass times speed squared. This way, if the guidance system goes awry, and there is an accident, the damage probably will not be so great. One can beckon a Segway to one's location to pick you up and take you where you want to go, possibly a transportation hub with higher speed vehicles.

Friday, June 27, 2008

Mandatory health insurance

Mandatory health insurance eliminates the problem of adverse selection. Therefore, it should be possible to offer a baseline level of coverage for a flat fee without regard to preexisting health conditions. One can go a step further and have the state subsidize health insurance by that amount, providing the illusion that baseline health care is free. The moral hazard problem still remains.

Tungsten boat

Just an exercise in calculating volumes and masses: Given a hemispherical boat with inner hull radius R and hull thickness h and hull density d, will it float? The densest everyday material is gold or tungsten. Given a boat with hull thickness of h=30 cm (a battleship), what is the minimum size of a gold boat that will float? Volume increases by the cube, but surface area by the square, so there guaranteed to be a solution.

Changing a baseball's axis of rotation

Can a pitcher throw a baseball in such a way that its axis of rotation changes (perhaps precesses) on the way to the plate? This seemingly would violate conservation of angular momentum, but the surface of the baseball, including the stitches, interact with the air surrounding it, so it might be possible. (The total angular momentum of the baseball and the air remains conserved.)

Tuesday, June 24, 2008

ERA in losses

When the pitcher's team ultimately loses.

Friday, June 06, 2008

Track and field

In these days of sensors embedded in the starting blocks to detect false starts, why not use the technology for "good" and eliminate false starts all together? The time it took to run or swim the race is simply the difference between the start time, measured by those sensors, and the finish time, measured by a high-speed camera or other sensor. The start signal may be changed to something predictable and rhythmic to reflect that reaction time to the starter's pistol is no longer an important factor in deciding who is the fastest.

Monday, June 02, 2008

Multiple spaces in strings

Rarely in code does one write a literal string with consecutive spaces; if so, one probably ought to be using some sort of formatting directive.

It suggests that strings may be encoded as a series of regular tokens, which may be pretty printed or automatically formatted.