Monday, April 02, 2007

Mailsavant

My current CFT activities have been consumed by Mailsavant. Mailsavant is a dual purpose CFT project. On the one hand, it wants to be a haven for email junkies like me. On the other hand it is meant to be the manifestation of some ideas I have regarding writing software.

As a haven for email junkies, I am building Mailsavant to offer what may be regarded as a retro interface for the internet. I already use email to post/manage content to my other blog. But, I would like to leverage email as a replacement for other casual web site interactions. In particular, I am building an event notification service that can be fed primarily via an email interface (no clicking on calendars, when I want to be notified "next Tuesday at 3pm" of a particular event, I *say* exactly that in an email subject line. The system acknowledges that it received my notification request and then dutifully notifies me of that event as it nears.

The idea that such software would not only be useful, but well designed/implemented is the other focus of this CFT. I am taking a very minimalistic "Software Tools" approach to development. Most of the software will be written in a combination of AWK and (posix compliant) Unix shell (along with stock programs that come with Unix -- ls, grep, find, etc). My programming methodology will follow the "Unix Way" (small tools with each tool accomplishing just one thing). I have my own bizarre reasons for doing this, one of which I want to avoid software bloat and *seriously* contemplate how to build an internet service from scratch with no preconceived notions or shortcuts.
Yes, everything will be written in AWK, including the SMPT mail server and mail delivery agent. And it will be built to be robust and stable (with decent performance too).

Very few open source libraries will be utilized. I expect the calendaring app will take less than a couple thousand lines of code.

Stay tuned.

No comments: