Projects

These are the projects I'm currently working on. I'll try to keep them up-to-date, but no promises.

Reykjavík Programming Language

A language of my own design. Partially me just playing with language stuff, partially me trying to fix all the problems I have with other languages I have to use.

Universal Keyboard Layout

Ok, maybe not completely universal. This is my attempt to make a single keyboard layout for all languages that use latin script. This should make things easier on travellers and anyone else who has to deal with typing foreign names, places or any other word.

Oregano

This is my Ginger. Top secret. I'll open up about it as soon as I get the patent filed (don't worry, it's not a software patent). And I think it's better than what the real Ginger is.

XML Schemas

XML is a great document format. With XSLT, it can be translated to almost any other format. So, as I discover things that need it, I develop schemas so they can be more flexible than than their usual forms. For example: screenplays are always written in the horrid typewritten style. Hard to read, but used from the days before computers. If the screenplay was marked up in XML, an XSLT file could easily output a plain text file in the typewriter format, but could also style it in a much more readable format for the Web or publication.

The Typographic Web

An attempt to improve the state of typography on the Web.

Sherlock Channels

Make ugly Web apps usable by wrapping them in a real application. That’s the idea behind Sherlock, and I’ve made some channels for sites I use often.

OS X Scripts

Just a bunch of itches I’ve scratched on OS X. None big enough to be an “app”, but useful none-the-less.

On Hold

This is my attempt to crystallize the ideas that are pouring out of my head, before they get lost. If you see anything here that you'd like to take control of, help out on, or have already done, please let me know. I'll be happy to link to anyone who is working on this stuff. I would much rather see it get done than to have it wait for me to find some time that may never come.

Wearable Computer Research

I got into this quite heavily in college, but haven’t had any time to spend on it for a few years now. Even got around to making a newsgroup (comp.sys.wearables).

Technomadic.org

This is a site for the nomadic world. Covering moblie technologies of all kinds, from new hiking boots, to wearable computers.

libPresence

I'm a big fan of making everything into a library. And I'm also a fan of the whole publisher/subscriber producer/consumer model, with a system providing some service that any application can subscribe to.

This particular library is meant to centralize the idea of a user's presence. So many chat and messaging programs, and other systems like screensavers are interested in knowing whether the user is present or not. Currently, it's a pain in the ass, having to tell each program when you're away, or back, or whatever. This library allows each app to subscribe to this information. Then, a single app, maybe some kind of docklet or applet (or whatever's appropriate on your particular system) that lets you indicate presence. A screensaver can indicate to the other apps that you've returned when you unlock the screen. The screensaver can also be set to start whenever you set yourself away. Or imagine some kind of sensor on your chair that indicates your presence by whether or not you're sitting in it.

The great part is, that all the apps don't have to support any weird extension that comes along (like the chair sensor). The extension just needs to tell the library whenever something happens, and the common library layer will inform all of the subscribed apps. This kind of architecture offers maximum flexibility and extensibility.

Executive Editor

This is a simplified editor. Saves to RTF format, so it can be opened in Word Processors and other editors. It's designed to give executives enough of an editor to do headings and some basic structure, but nothing more.

The problem with Word Processors is that it has executives wasting their expensive time editing and typesetting documents. Something that can be handled better and more cheaply by a secretary or some other professional. This editor obviates the need for dictation, but doesn't presume that an executive's time is best spent making memos look pretty.

Algorithmic Composer

This is kind of the integration of everything that interests me. Genetic algorithms, cellular automata, etc. all tied up in an application that writes music.