Seth's Geeky Projects
Nothing is ever really finished, but some things are useful and stable
enough to merit distribution, or at least not to embarrass me. Most
of these are ancient hacks whose meager utility has long since decayed
- A geo-data visualization tool. Not the first of its kind,
but non-proprietary and works reasonably well.
- probability calculator
- A simple conditional probability calculator. I needed to
Also, the UI for similar calculators I found out there is
terrible. The code is almost, but not quite, a
general-purpose forward-chaining inference engine.
- txt2html helps you convert plain text documents to HTML.
This was pretty useful in the early days.
- Henry Fingerprint Classifier
fingerprint classification system.
- Stone Soup Scavenger Hunt
- Like a normal scavenger hunt, but no one is in charge, and the
value of an item depends on how many teams find it.
- A fun letter/word game some friends and I made up.
- XMMS Waterfall spectrum analyzer
- Indexes everything you see so you can find it again later.
- PizzaZone helps you decide what pizza to buy. Or at least it
did, back when it worked. For years, I left the site up as a
historical curiosity with the actual recommendation system is
offline for boring technical reasons, but now even that doesn't work
and I don't care enough to resurrect it. The web site itself was
built around a finite state machine. (This was 1998, before web app
frameworks.) The recommendation engine used genetic algorithms, and
the objective function involved a simulation of people taking turns
choosing slices until they were full, greedily trying to maximize
their individual happiness according to heuristics that considered
their preferences for specific toppings as well as a desire for
- This is a line filtering utility similar to head
and tail, but it prints lines from the middle of input
files. You give it a starting line and either and ending line
or a total length. It can process multiple inputs, handling
them individually or concatenating them.
- I hate when I untar something and it spews files into my
current directory. For a long time my solution was to be in an
empty directory. Now I use my untar script. It peeks into the
tarfile (even if it's compressed) and untars it into a
subdirectory if it thinks it's not going to be well behaved.
- A small perl script that decodes a single DTMF tone. That is,
you give it an audio recording of you pressing a button on your
phone, and it tells you which button you pressed. It can't
handle sequences though, only single tones. (For sequences, see
uses sox to do the actual audio processing.
- A perl program similar to dtmf-decode-single,
but attempts to decode a stream of tones, which is usually what
you really want. The segmentation is a bit flaky, but if you're
in a hurry and don't want to segment the input manually, this
- Discardia calculator
- A GUI front-end to grep, intended for use on handheld systems.
- (and some other BBDB related utilities)
- A Tcl/Tk mail notification gizmo that deals well with lots of
spools files. Each spool is listed in a separate widget with a
predictable name. That lets you use X resources to easily mess
with a particular spool's appearance and bindings. In my own
configuration, I bind the middle button to bring up the the
right thing my mailer.
- A Perl script that creates index files for dictionaries suitable
- Chrons are metric time. I hate hours:minutes:seconds; I think
that's as stupid as miles:yards:feet:inches. I was once decent at
doing conversions to and from chrons, but that skill has since
- Gnocatan Graphics
- I made new graphics for Gnocatan.