Thursday, November 20, 2008
Technology
Revised Wednesday, January 15, 2003 @ 8:42am
OSCon 2001. Photo copyright Julian (http://www.supersnail.com/image.html)

By day I masquerade as a Software Engineer, and more recently, as a Business Analyst. This is a list of projects with which I am or was involved. I also have a list of papers and articles I have written. My resume is here.

  • WaxML is the web content framework that runs this web site, based on XSLT. XSLT is one of my favorite technologies of late. I talked about it here, and Kip Hampton liked what I said.
  • The What-Sucks-O-Meter could be so much more, if I had time to work on it. Do you?. I took it pretty far here ("Does SOAP Suck?"). Watch the video to find out what sucks more than anything else (according to the web). Or, read the spoiler.
  • Lingua::EN::Ambiguity is a Perl implementation of algorithms to perform statistical disambiguation of word senses; in other words, to allow programs to differentiate between the senses of a word within a text. Using this code, a system is made aware of differences between "car with wheels", "car on the rails", "car as in elevator", and so on. Slides from my OSC 2001 talk on the module are here (PDF). The paper is here. Where's the code? I lost it.
  • Linguana is a project to develop a Natural Language Processing framework drawing upon and extending existing linguistic software projects. Conversation simulation, document summarizing, machine translation; it's all here. Slides from my OSC 2001 talk on Linguana are here (PDF). The more-informative paper is here.
  • Signature/Confluence is a completely new, FreeBSD-based web hosting platform underway at Verio. We have created an XML protocol for standardized access to all system information, with an interface that is completely customizable for resellers. Most of my time is currently taken up by this protocol (VSAP) and its Perl/C implementation. The slides from my OSC 2001 talk on VSAP are here (PDF), but might not be very interesting without the accompanying demonstration.
  • Music::Mup is a Perl module for outputting a Mup-ready text for postscript music typesetting. It's only really useful if you're automating the creation of some kind of musical score.
  • ACE Server Control is a product of Verio, Inc. where I am an engineer. The next generation of this client/server environment is underway, and I am responsible for the architecture and creation of a standardized, XML-based protocol for server administration which will enable seamless administration of web sites and servers from any location, platform, or internet device.
  • XML::SimpleObject is a very small, very simple Perl module enabling a quick and clean representation of a parsed XML tree. The easiest way to get the guts of an XML tree. Smartly. Kip Hampton talks about it here, and there's a section on the module in O'Reilly's Perl & XML. I didn't realize the module was as popular as it is until recently, and have updated it to allow the same interface to be used with XML::LibXML. Update: XML::SimpleObject::LibXML is now a separate module that allows XPath searches and replaces. Cool.

  • Lingua::LinkParser is a Perl implementation and extension of the CMU Link Grammar Parser by Temperley, Sleator, and Lafferty. This system allows syntactic parsing of English using sophisticated (and pretty novel) word linkage algorithms. This module allows the system to be used and extended from Perl. An article discussing this module appeared in the Fall 2000 issue of The Perl Journal. The original is now online here. I'm proud of this module; it's design has since been imitated.
  • Lingua::Wordnet. Wordnet is a lexical database of the English language; I have written some Perl modules to interface to the system. I have converted the Wordnet text databases to a database format and created high-level Perl routines to analyze linguistic relations between words. An article on this module appeared in the Summer 2000 The Perl Journal.
  • Turris Webmail was part of the acquisition of my company by Ciceron Interactive. Based on IMAP, Turris was an Apache module enabling group messaging, e-mail, scheduling, and file sharing.
  • FrontScript is a web-server parsing language I developed as a perl-based Apache module (in 1996, I think). It allows extremely rapid creation of web sites using content templates and a user-defined markup language, much like a customizable PHP or ColdFusion. It is now part of the Turris product, and also drives all the content on this site. FrontScript was one of my more educational endeavors, giving me a bit of insight into language design and parsing, as well as being my first large-scale object-oriented project.
  • Fyodor was a short-lived experiment in natural language generation. He was a bot who sat on a chat channel and repeated what he heard in an incoherent format. Here are some transcript excerpts of his; he learned most of what he knows from a religion channel.

  • The GBGN (Glass Bead Game Network) is a project which is just getting started. The effort is to create a web-based, competitive variant of the game conceived by Hermann Hesse. The undertaking is gigantic, including a requirement for a human knowledge database of hundreds of thousands of entries, but it is progressing and I am very excited about it.
  • Arvo Pärt Information Archive is a site I host (developed by David Pinkerton) to house information on my favorite composer.
  • CIDBAdmin was an old product of Clockwork Internet, and was to my knowledge the first web-based msql database administration tool. If you're looking for it, you have problems.