This has not been updated for a while. After Catharon didn't renew my contract I went to Exoweb, doing python and django web development. That lasted until the economic upheaval, when I got caught in their first-ever layoff, and moved temporarily to maintaining the same code for our former customer.
That, fortunately, ended with my move to Inkspin1 (name will probably change soon), a spinoff of Skype which is porting Skype to televisions. The work is great.
The other thing I have been doing is writing the website for Great Cultural Renaissance. I have written a lot of web sites, but this is the first one where I designed the look as well as the structure, and I think it looks pretty good. (well, the second - I did this site too, and it's look is nothing to brag about).
In fact, you can appreciate how it works by logging into the admin function there. The password demo will log you on in demo mode. It will let you run and see the results from each command, but will not write them to disk. If anyone is suitably impressed, I am available to write your site for relatively reasonable rates. Or you can use SchoolSite for free.
SamplesHere are links to some sample code I have written, or look at the links to the left. One is "tetrii", a tetris game written in Java in which you play multiple boards simultaneously. There is also a page of elisp extensions I have written for my own use in emacs.
Around 2003, after getting a digital camera and starting to deal with massive number of unorganized photos, I investigated various photo organizing software. None did everything I wanted, so I wrote my own, ABCD Organizer. This generated a "database" of photos accessible through html, so it could be viewed easily in any browser. It was slow and underpowered, so in 2010 I replaced it with the similar but better Lame Album (no link yet). This works much better, I have used it to make dvds with hundreds of photos without a problem.
In order for the output of ABCD and Lame to be fully customizable I needed a scripting language, and ended up deciding to write my own. IC (Interactive C) is a C-like scripting language with OO extensions closely tied to Java. "Closely tied" here means wrappers can be defined in IC for Java objects. This way all the Java code used to order the albums in ABCD and Lame could be imported directly into IC, making it a very good language for writing HTML output templates. IC is very useful both interactively or as a surface-layer scripting language for larger projects, implementing skins or output manipulation.
ResumeHere is the pdf version of my resume, and here is the online version. The two are the same, except the online version has links to companies and to extra pages where I can give more detail about each position.