It's me, sitting.
(I see you.)

Until I get something else up, here's some randomness:

I can't seem to maintain *one* personal page, much less multiples:
soulcrushingjob
imeem
Why do I even try?

I wrote an image viewer for OS X. It's called Magic Lantern.

characterize takes a .jpg and some text and does this and this with it. The results are pretty nice when you set it to generate humongous, web-unfriendly files. You can feed the postscript output of characterize through this program and make really really big posters. The code currently does what I wanted to use it for, so you might find that you need to tweak the code a bit before it'll do what you want to use it for... I'll document it eventually.

quartet is a program for LegOS (now BrickOS) that uses the IR networking features of Lego Mindstorms RCX bricks to coordinate a symphony between an infinite number of Lego RCX bricks. When you load this program onto several Lego RCX bricks, they will be able to play the first couple pages of Antonin Dvorak's Op. 96 String Quartet in unison. The bricks will adaptively choose which part to play, according to how many bricks are being used. Currently, they will only play the first violin, viola, and cello parts. This was done as a proof-of-concept for an art class; I don't have access to Lego Mindstorms parts anymore, so don't expect quartet to be updated anytime soon...

snowblind was a "game" I worked on a couple of years ago for this infamous class. I wrote the renderer, sound system, and the joystick input code. It's a Zen game.

I take a lot of pictures. Some of the older ones are available in this index of random photos or as an eyetide screensaver. Either way, they're 1) really old, 2) pretty dusty, and 3) much worse than anything I've shot recently. I should really scan in some more recent things, but I've started using a medium-format camera and I don't have access to a negative scanner or a flatbed scanner large enough to scan the prints I've been making.

--
Allan Hsu <allan at counterpop dot net>
1E64 E20F 34D9 CBA7 1300 1457 AC37 CBBB 0E92 C779