Pot Pourri

I spent the weekend in the company of other individuals of like (and considerably different) mind, and thought I’d provide some links to some interesting projects.

Trevor Blackwell has built his own balancing scooter. I got to ride this little marvel, and it works rather well. It cost about $2000 to make, if you weren’t interested in paying full price, you could probably scrounge many of the components for less. It’s a pretty nifty gadget, and Trevor provides most of the details you need to duplicate his effort.

Jeri Ellsworth showed off her C-One, a Commodore 64 implemented in an Altera FPGA. She’s interested in making it potentially run as other classic 6502 machines as well, like the Apple II and the Atari 400. Nifty work!

Don Knuth translated the classic Adventure game into a literate program using CWEB. You can get the original
CWEB source
too. Nifty.

Probably some more stuff to come later.

Don’t double down on hard 20…


This weeks whim book purchase was Amazon.com: Books: Bringing Down the House : The Inside Story of Six MIT Students Who Took Vegas for Millions. Apparently MIT has a long history of blackjack players, and this book details a particular team which aggressively used card counting, team play, shuffle tracking and other aggressive techniques to win over three million dollars from Las Vegas casinos.

In the late 80s to early 90s I went through a brief love affair with blackjack, egged on by books such as
Thorp’s Beat the Dealer
(still an excellent read) and Griffin’s Theory of Blackjack. I never really graduated to a real card counter, being content to slowly give my money to the casinos by using Basic Strategy.

What’s really amazing about this tale isn’t the techniques they used (only really sketched at a high level in the book, refer to Thorp or Griffin for the mathematically inclined) but just how aggressively they used these techniques, and how long it took the casinos to catch on. Ultimately team play requires a number of spotters who play at tables and bet constantly, perhaps even playing basic strategy while keeping track of
counts. When the counts go positive, the spotters signal
"Gorillas" and "Big Players" who come
in and bet large until the count goes cold.

To me it seems rather obvious that if you reviewed tapes of big winners employing this strategy, you’d begin to see familiar faces around the table. If the casinos employed
their own card counters, they’d also be particularly wary
of anyone entering mid-deck during positive counts.

And yet this isn’t how the casinos finally figured it out. I won’t
spoil the book by telling you about how the team eventually became "dinosaurs" (banned from casino play),
but the book has just as much to say about the interactions of people as it does cards.

A fun read. I burned through it in an evening.

The Domain of the Public

This week has been dominated by pondering of the public domain. I ordered a book from nolo.com written by attorney Steven Fishman entitled
The Public Domain: How to Find Copyright-Free Wrightings, Music, Art and More
. It’s a very easy to read and well written guide to the world of copyright and the public domain, and attempts to answer many practical questions regarding the public domain. Brewster Kahle suggested it on a posting to archive.org, and I second his recommendation. Very useful reference.


Slashdot
is reporting about various industry groups like the MPA and APRA which are lobbying Australia to extend Australian copyrights from life+50 years to life+75 years. One
can only hope that the people down under will have better sense than Sony Bono.

Addendum: There are many books which are in the public domain in Australia which are not in the US. Hence, there is a special branch of Project Gutenberg:
Project Gutenberg of Australia

which holds these works. Nifty.

The Center for the Public Domain also appears to have some interesting articles on intellectual property law and the public domain.

Shake, Rattle and Roll

Well, it’s 8:40 or so in the morning on Sunday, and I’m surfing to the USGS realtime earthquake website to see if the jolt I just felt was a minor local quake, or whether there is no point to going to San Francisco today. But it appears to have been a minor 3.5 earthquake centered in Lafayette. Guess Fisherman’s Wharf will still be there.

The Recall

I hate politics. It’s mostly about the hypocrisy. I’ve been trying to ignore the
recall news for the most part, but every once in awhile you just have to listen.

Schwarzenegger has been accused of a pattern of what can only be described as boorish sexual harassment for incidents ranging from 1975 to 2000. These include crude comments, groping and an incident where he allegedly tried to pull the swimsuit off a woman in an elevator.

I’m not so stupid as to believe that these reports aren’t politically motivated. But quite surprisingly, Schwarzenegger today apologized for this behavior, which lends some credance to the fact that to a certain degree these
allegations are in fact true, at least to some degree.

In the news since, Schwarzeneggar has attempted to downplay the seriousness of any of his misdeeds, and Republican leaders have come out and said that this sexual misconduct, while reprehensible, should not serve as a reason to not vote for him.

They are wrong.

Whether this disclosure was politically motivated is irrelevant.
If these allegations are true, we should not vote for him. We should not vote for someone who displays such a complete lack of sensitivity toward women.
When representatives of the Republican party tell you this should behavior should not keep you from voting for Arnold, they are telling you this: that sexual harassment isn’t really a serious matter. That heck, everybody does it.
That grabbing somebody’s ass isn’t really a big deal. That groping their breast isn’t a big deal.

Everybody doesn’t do it. It is a big deal. In virtually any sphere of modern
American society, such behavior would get you fired, and justifiably so. I see
no reason to vote for someone who engaged in behavior that would get him fired.

Game of the Year — Oakland 5, Boston 4 in 12

I love baseball, and this is the time of year that baseball is the most
fun (except of course for the impending end fo the season). Once again I find the A’s embroiled in the playoffs. My beautiful wife decided that I needed one more game before
the end of the season, and the promise of a matchup between Tim Hudson and Pedro Martinez was too much to resist. Two upper level seats were purchased and we were off.

While I love the A’s, my experience with playoff baseball and the A’s is not good. I’ve attended six playoff games of the A’s in recent years, and have seen no wins. So this time I left my “lucky” jersey at home, and merely wore my Athletics windbreaker.

It seemed to be a good move. The resulting game ended in an A’s victory, and was one of the best games of all time.
Yahoo! Sports has the complete recap, but let me mention a few quick highlights.

  • There were four lead changes. No team was ever really out of it.
  • Great defensive plays, like Chavez’s diving play to third base in the top of the 12th to prevent the go ahead run from scoring, or Chris Singleton’s retrieval of five consecutive fly balls in the outfield, including one which very nearly doubled
    off the wall.

  • Mysterious calls of balls and strikes. Nobody ever seeme dto find the strike zone reliably. Plenty of base runners, lots of big outs.
  • A double play called on an interference call by Terrence Long.
  • Two different submarining pitchers (Kim and Bratford).
  • An awesome duel between Durazo and Martinez in the seventh, where Durazo eventually walked.
  • Durazo singling in Byrnes in the bottom of the ninth off Kim to force extra innings.
  • The end all to beat all: a bases loaded bunt by Ramon Hernandez in the bottom of the twelfth inning, scoring Chavez on the suicide squeeze.

Baseball simply doesn’t get any better than this.

OldFlash: Rush Limbaugh is a Big Fat Idiot

Okay, this isn’t really news. Rush Limbaugh is an idiot. If you don’t know that by now, you’re probably an even bigger idiot. I’ve lately become uninterested in the NFL (baseball being a far
more civilized endeavor) so I didn’t realize that Rush had been employed by NFL Countdown Sunday as a commentator. That’s probably a good thing, because I can’t think of a more
fatal affliction for a sports announcer or commentator than to be egotistical enough to think that
the program they are on is about who they are and what they think.

Rush Limbaugh is afflicted with this particular fault in spades. On this particular occasion in a discussion on the low ranking of Donovan McNabb, Rush opined that in fact McNabb wasn’t
really good, and that he was merely being trumpeted as a media darling because he happened
to be a black quarterback.

One wonders why he didn’t follow this statement up with the logical extension: that this NFL affirmative action program was costing some talented white quarterback from getting a crack
at the big time.

I suppose before this I remembered that McNabb was in fact black. I remember that Ray Rhodes
is black. I remember that Warren Moon was black. I remember that Randall Cunningham was black. But when you bring up their names, what comes to mind is not the color of their skin, but
what they do on the field.

It’s a pity that Rush can’t put his own agenda in neutral long enough to concentrate on
the game. Some of us care more about the colors of uniforms than the players wearing them.

New Ebay Booty

Recently I’ve been trying to establish better wireless networking in my house, and toward that end I purchased a couple of books on wireless networking. The first was Jeff Duntemann’s Drive by WiFi Guide, which is despite a rather egotistical and strange title, actually fairly good. The second was Building Wireless Community Networks. While less of a general book on wireless, this book had some interesting ideas on building wireless networks which can be shared throughout a community. Inside they metnioned several ways to build cheap wireless routers. The smallest way is to probably by a board from Soekris. They make tiny PCs which include both a slot for CompactFlash (diskless booting!) and PCMCIA (wireless cards) as well
as ordinary Ethernet.

But I’m too cheap to spend that kind of money, so I opted for item #2, which was to buy an old
Fujitsu Stylistic 1200 from a seller on Ebay. This is a tablet PC which has a 120Mhz Pentium
processor, a 2.1gb hard drive, a touchscreen w/ pen, a docking station with USB, and two PCMCIA ports. I also bought a DELL Truemobile wireless card (really a repackaged
Lucent Orinoco Gold), which seems to work rather well.

I installed FreeBSD on the little box by swapping its laptop drive into our old laptop, doing the installation, then swapping it back. So far I haven’t done anything sophisticated with it, but
it seems to work, and is running thttpd. In most repects this machine has identical specs to
the machine which ran my website for years.

I’ve got some more project ideas for it, but those will have to wait for a followup post.

Parody or not?

There is a saying on USENET: any sufficiently advanced parody is indistinguishable from real stupidity. (You could try looking at
Korpela’s Laws of USENET
for items in a similar vein.)
It’s this basic idea that gives us the (not always so obvious)
parody Landover Baptist Church.
Or you could read about a brave paleontologist who uncovered the fossil remains of a human being eaten by an Allosaurus (see this page for the explanation). But sometimes you uncover stuff that’s
every bit as absurd, and yet seems to be entirely for real, like

OBJECTIVE: Creation Education: Creation Science Fair 2001

Sweet spirit of Cthulhu preserve us…

Earthquake!


While at work late, I felt a pretty good jolt, which marked the arrival of yet another of California’s exciting pastimes: the regular Hayward fault earthquake. Displacement seemed mostly vertical, fairly obvious, but lasted only a few seconds. Once you are fairly sure that the earthquake is not bad at your location, you immediately wonder “is the rest of the Bay Area in ruin?” A quick trip to the USGS real time earthquake map for California assured us that the earthquake was a reasonably small 3.9 earthquake centered a couple of kilometers from our location. The USGS has a automatically generated page to describe the event. Whew! Guess the house will still be standing when I get home tonight.

On the right you can see traces of the earthquake activity. You can see that activity continues for up to a minute after the initial quake. They run these detectors at high gains so the display is significantly clipped.
Neat.


A simple Icecast2 client…

While experimenting with Icecast2, I tried out the icesclient. It very nicely handles either live or precompressed streams, and can provide audio encoded reencoded at lower bit rates. But this seemed to be overkill to me: I already had a number of streams encoded at the rate that I wanted. Not only was it wasteful to decode and reencode them, but it resulted in lower quality audio for the listener.


Luckily, the icecast guys provide libshout2, a library for talking to both Shoutcast and Icecast servers. In a few minutes I coded up the relatively simple program shout-mp3.c. It is barely extended from the example that is in the libshout documentation, and merely accepts a bunch of files as command line arguments, and loops them repeatedly. The advantage is that this client takes virtually no CPU time: well under 1% of my old 400 Mhz Celeron box. Much nicer.

I’ve now switched my brainwagon radio feed to spew 12 episodes of the old Buck Rogers radio serial: a show carefully designed to sell Popsicles to the youth of the 50s. Enjoy.


War of the Worlds Radio Broadcast


After finding an mp3 of the original War of the Worlds broadcast by Orson Welles’ Mercury Theater broadcast, I decided to try to experiment a bit with experimenting with Internet Radio. I setup a small icecast server, and then wrote a small client using libshout to actually send the 24kbps mp3 stream to the icecast server. The net
result is that Brainwagon Radio is on the air, and will (at least for a time) broadcast the Orson Welles broadcast continuously in honor of the current Mars opposition.