This is the majcher.com code repository. Soon enough, I'll have a complete listing of all my groundbreaking, cutting-edge nuggets of shiny technology here, with source files where appropriate. But for now, enjoy what I've got here. (Don't forget to check out the project page for more goodies.)
Code
- pspace This is the rendering system that I'm using to build majcher.com. It's a little over-engineered for my humble purposes, but lying dormant in its convoluted core is the collected wisdom of a handful of fine, experienced Content Engineers. I know we wrote some stuff down a few years ago, but damned if I know where. Anyway, this is the unholy spawn. Use at your own risk.
- congress Congress is an RSS aggregator. Basically, it takes a list of RSS feeds, and generates a page that shows all the recent items from those feeds, in chronological order. You can see my current feeds here, but if you want to get stuff working on your own, you're going to need to tinker with it some. (Inspired by Dave's flog.)
- imageMerge Inspired by several other projects, I decided to jump on the bandwagon and throw together my own random image masher. I really like the way the "final" images look, sort of vague and ghosty, and constantly changing. You can see some sample images, or grab the code above and make your own.
- lifebox Lifebox, before it became a MovableType thingy, was my own quaint attempt at building some sort of automatical-type journal application. It actually didn't suck for a while, then something went wrong with the XML/XSL stuff, and then I discovered MT, and it just didn't seem worth the effort any more. Still, interesting from an archaeological perspective.
- Piet I'm a pretty big fan of useless little computer languages. I came across Piet, a visual language whose programs look like abstract art, and knew I had to build an interpreter for it. I did, and uploaded it to CPAN, where the world can revel in its perfect glory. (Someone on DM's page claims that my module has a bug in it, but a) it doesn't, and b) their "corrected" version is exactly the same as mine, so I'm not sure what's going on there.) I actually became fairly adept at writing the pseudo-assembler required as a precursor to building the program-images, and I still intend to reproduce some of them as full-size paintings. Someday.
- simple todo list I needed a really basic todo list thinger, so I took an hour or two, and banged one out. It lets you add items, re-prioritize stuff, mark items as done, and delete things. It only shows todo items from the current day backwards, so there's no fretting about the future. If I need more features, I'll add 'em, but for now, it's fine. The linked one is obviously not the one that I use, but you can play with it and see if you like it - source code and style sheets are linked from the bottom of the cgi page.
- scriber bot A fairly simple little bot that keeps a log of stuff that goes on in an IRC channel. I use this, along with a quick and dirty CGI log reader to keep an eye on things.
- banjo chords I'm trying to learn to play the banjo, and I kept misplacing my chord sheet, so I dumped the info into a data file, and wrote this little Perl script to generate a set of ASCII strings with the finger positions for the chords. Make sure to enwiden your terminal.
- Beatnik Ook Implementations of two crazy little esoteric languages. Described here and here. These are just for fun, but still sort of neat.
- contact sheet A quick Perl thinger to generate a page of thumbnails from a directory of images. Basically just pulled stuff out of xhibition and dumped it into a standalone script. Pretty common stuff.
- jobjar Put jobs in, take a random job out. Don't forget that you're using it - I just tried it a few times to make sure it still worked, and came up with a bunch of stuff I was supposed to do last year that I haven't done yet. Whupz.
- ls -l banner Hide messages in your file permissions.
- dumpbits Short Perl script to print out the ones and zeros from a binary file. (Thrown together when I was working on my SWF parser, which is currently broken, because I don't have time to keep up with Macromedia's wacky file format changes.)
- xml2slides Takes an XML file and a template file, and generates a bunch of HTML slides. Could probably use a little work, but hey, it worked for me. Ph33r my 'leet presentation skillz!
- othello Way way back when I was teaching myself object-oriented Perl stuff, I was also playing a lot of Othello for some reason or another. Here's some stuff like that. More interesting for historical reasons than anything else.
- Flash chat server At one time - 1996, 1997 or so - I produced and maintained an online gaming site with about 13,000 registered users. At one point, I started working on a Flash-based chat system, that would eventually be incorporated into the rest of the new swanky Flash site. Well, for various reasons, that never happened, but I've still got the raw materials lying around. Here's the Chat module, the kicker script, and the Flash and SWF files. I don't have a server instance running right now, so you have to download everything and fiddle with it some to see how it works, but when it was up, it was pretty okay, for what it was.
- galtrader There was a time, back in college, when I'd play an awful lot of Galactic Trader on the VAX machine. I eventually got the jones for it in the straight world, and tracked down the old source code, and started hacking on a version in Perl. Well, you know the story - someone beat me to it, and my project fell by the wayside. There's still some fun daemon/terminal code in there.
- IRC DCC Auto-Get There are times when you want to automatically accept DCC sends. I couldn't find anything that would do this, so I wrote this little thing. Careful.
- GTA autoresponder Mostly useless, usually annoying, but if you want to blort people with Grand Theft Auto 3 quotes, here you go.
- [ More to come... ]