I'm a bit of a net.head...

Actually, this page needs to go away. It's out of date, for one thing.

...and I contribute to various free software projects and such. Occasionally I get credit for my work:

The Insidious Big Brother DataBase
The BBDB is one of the most useful emacs hacks I have ever encountered. Originally written by Jamie Zawinski, it passed into the XEmacs development system for a while and then stagnated some time in early 1999. I was somewhat unhappy with this, so I conducted a quick straw-poll and voted myself the new maintainer. As of January 2007 I've handed off ownership, however.

The Perl Cookbook
Yay! Book Credit! Check out the Ack section in the Perl Cookbook, an O'Reilly book by Tom Christiansen and Nathan Torkington. I did some proofreading, that's all.

StateSecrets was a jaundiced, disaffected view of the world, generally with a somewhat technical slant. So naturally, I wrote some pieces for it. Alas, this is no longer, as they say, a going concern.

If you don't know what Mozilla is, go have a look. Really. I got involved fairly soon after the initial release, submitted a few patches, then got frustrated with the mobile build platform. And I don't mean trying to build it on a Pilot.

SB Live! Driver
Creative Labs finally released the source for their SoundBlaster Live! driver. Leaping straight into the fray (because I love my SB Live!), I fixed a miniscule glitch in the build system. Oh, and this. Then I abandoned it for a while, and it made its way into the kernel, and just lately I've started hacking on it again, trying to bring the sequencer branch up to date. I abandoned that, too, after deciding that the maintainers are insane and I'd be better off buying a card whose driver doesn't require a PhD to set up the mixer for.

TGD is a text interface to Tom Boutell's GD graphics library. Can you say "scripted display hacks"? I started using this in Motorola to generate graphs from the periodic emails sent by the bug-tracking system; in the course of this, I submitted a bugfix. Then some security measures prevented my hacks from ever working again, so I gave up.

DJGPP is a port of the GCC compiler to DOS. It includes all sorts of fun stuff like a DOS extender and virtual memory. I spent a lot of time tooling with it in college and contributed to the FAQ.

JavaScript Mini-FAQ
JavaScript is a nice idea, but it got kinda shredded by inter-browser incompatibilities in much the same way as Java did. Funny that. I pitched into the FAQ section on how to stop older browsers choking on your javascript. I've done some silly javascript hacking myself - check out jmatrix if you're running Netscape 4 or better, or IE 5 or better. It kinda works on IE 4.

Lloyd's Thesis
Lloyd is an acquaintance from Surrey University who is happiest when antagonising Americans. He spent some time in France working on part of his thesis, during which time I supplied him with information on Solaris systems so that he could antagonise some French people instead.

Wine is a really nifty project to allow you to run Windows executables directly on your Linux box. Sorta like iBCS for the Win32 API. I went on a hacking spree with it for a while, resulting in a credit on the authors list. The only part I can recall working on for certain is the ShellExecute code.

Micromail is a computer book & software reseller based in Cork, Ireland. The web site has been going since 1995 or so; I was involved in it almost from the start due to my part-time employment with the now-defunct Cork Internet Services. I'm entirely responsible for the look and feel between 1995 and 2005, when Willy took the work in-house. For the curious, all the on-site scripting was in Perl, and the offsite page generation stuff was yet more Perl. The generation code had all sorts of fun heuristics and stuff like that for historical reasons.

Wusage is a really neat Web stats analyzer written by Tom Boutell. Back when he released 4.x, I built it on a few different platforms and tested it a little. 'course, he's doing v7 last time I checked...

The Perl Journal
I don't think I'll ever reach the level of sick twisted Perl required to make an appearance on the winners' page of the Obfuscated Perl Contest, so I cheated and made a parser for the page instead.

Win32 Perl
Like your average hacker, much of my hacking is driven by a particular - but not necessarily practical - need. In this case, I wanted PerlMUD to run on a Windows box. And it did, too. Credit here.

collate is that site-checking tool you keep meaning to hack up the next time you've got five or ten minutes to spare. Don't bother. collate will not only check your links, it'll find orphan pages, generate a list of xrefs and even rearrange the site for you.

xkeycaps is a handy way to tweak your X keyboard setup without having to learn yet another stupid tool. I initially sent in mods for the NCD 107-US keyboards we used in Motorola; more recently, I've hacked up mods to add support for a 102-key UK PC keyboard masquerading as a Sun5/PC using a Black Box ServSwitch Ultra, but I don't think that's quite as useful to the world at large. And more recently still I've added a patch for the Compaq Armada M700 keyboard.

The DSP Web
The DSP web shall rise again, goddamit. The DSPs are a loose collection of hackers and non-hackers in realms computing and not. The original site had a little historic stuff, a few anecdotes and a jargon file, plus three-line bios of most of the folks involved (the initial bios were put together by yours truly, which caused at least one fight when someone didn't like what I'd written...) We've had a mailing list running since 1994, and a few people have their own pages now. Why? Because.

genpage is a tool that the Mnemonic folk use to manage their website. It's based on some code I wrote for the Micromail site some time ago, much of which ended up in some of the CGI scripts on that site, and a random offshoot of which provided the SiteWrapper feature in some random incarnation of TechCentral. "the" genpage has diverged pretty dramatically from what I originally gave the current maintainer, but he's still managed to find stuff in there that I wrote and asked me to fix it :)

LessTIF is another really neat project - a free replacement for Motif. I got involved with this mainly because Mozilla needed it, and I ran around the code looking for NULL pointers and such. Then I settled on trying to implement Drag-and-Drop as per the Motif "spec". It's very powerful, and extremely horrific. I had a reasonable understanding of it, but lost interest around the same time as I lost interest in Mozilla. Something else I should get back to. Mind you, I get the impression I'm not the first person to try making sense of DnD before running away screaming.

Samba is, approximately, "Windows Networking Comes To Unix". It's gone far beyond the file and printer sharing it used do, to the point where you can now plausibly replace your PDC with a Linux box running Samba. I've contributed various bits to Samba 3 over the past six months (May 2003) including debugging RPC-related stuff.

...and sometimes I don't! (get credit. are you a goldfish or what?)

Emacs on NT enabled me to survive having to use a Win32 box for day-to-day work. I made a bunch of improvements to ange-ftp to make it happier with win32, and managed to find a bug in the "real" emacs as well. It's my fault that you can now require .el and .elc files over an ange-ftp link. Also, I added Resent-* headers to smtpmail.el, and contributed some fiddliness to winnt.el

OffiX seems to have slacked off some, but at the time seemed like a good idea. I didn't like that the files window on the filemanager kept jumping back to the top every time I did something, so I patched that.

I wrote a goodly chunk of the text that appears on WebTeacher's Javascript page (pretty much everything in the "What is Object-Oriented Programming?" section), but my attribution seems to have gone astray.


Links without comment: 1 2 3 4

More of what I'm hacking on right now can be found in the diary. And I generally have a few hacks and patches on the boil that haven't been contributed to anyone, although lately I've tried to make a point of submitting patches to the appropriate maintainers in the hope that I'll not have to patch the next release. Sometimes, this is what happens.

Take it from the top.

"Were your opinions ever humble?"
-- joev