"Hey Julian" and email based servicing

About a year ago I launched a now expired site named "heyjulian.com" (as well as it's alias "mymailbot.com"). The idea was to leverage people who rather use email to do things traditionally accomplished by navigating web pages. (Its funny to use the word "tranditionally" and web together ;-)

One of the target applications was going to be an email based reminder/scheduling system. Behind the email system was going to be a natural language processor that would parse requests to be notified (via email) of specific events.

I'm giving it another shot. This time the site will be called "mailservant.com". I won't talk much here about it until I have made some progress, but it will leverage BLOGnBOX code and approach. I've even noticed a rather high profile startup getting into the email-as-servant business...



- Submitted by Todd Coram

Permalink | Sun 25 Mar 2007 10:25:10 AM EDT


MailSavant.com

How far can you go with email? Really. What do you do now through a desktop application or web page that would be so much easier through email? For me, the very act of going to a web page to blog (to "log in"; start typing and wondering when I will time out; to preview; fight the HTML editor; publish and then check to see if it looks right) is tiresome.

With email (and a suitable email client), I just fire off a message. BLOGnBOX does the rest. Well, mostly. Since BLOGnBOX polls pop accounts and must run on a PC at my house, it isn't quite that simple (well, blogging is simple but making sure the software is running is definitely not).

Well, I went ahead and registered the name "mailsavant.com" (lucky, eh?) and procured a virtual private server where I will attempt to install BLOGnBOX. Since this box is truly a server on the internet, I will attempt to launch an SMTP server component of BLOGnBOX -- this will reduce the latency of polling a pop server for messages.

Who knows... if I get this running well, I may open it to family and friends (so they too can blog via email).

Let the grand experiment begin!



- Submitted by Todd Coram

Permalink | Sat 24 Mar 2007 06:42:25 PM EDT


Some random GAWK code.

Here is some gawk code that I want to post just because I don't have a place to store them right now.

The first is an implementation of the blowfish encryption/decryption algorithm. It requires a bash shell and gawk. Why do blowfish in gawk? I dunno. It does have the neat feature of being very unix-ish (it encrypts to a plain text file that can be fed back into itself for decryption).

The second attachment is a handy utility (I use it at work) for converting between binary and decimal numbers. It uses a fairly interesting algorithm (not my own!) to do the conversion without every resorting to actual integers. The result: Arbitrary precision. You can make the numbers as big as you like.



1174329455-79121-blowfish.sh | 1174329455-79121-b2d.awk

- Submitted by Todd Coram

Permalink | Mon 19 Mar 2007 02:37:35 PM EDT


Crazy ideas

In my last posting I talked about making network processes out of BLOGnBOX scripts. Of course, upon closer inspection of how I laid out the master blog.sh script, I am already creating processes that last across "content entities" (email) via piping. I don't know if making these processes persistent across "sessions" makes any more sense.

This brings me back to some crazy ideas I've been mulling around for the past year: Unix as a full blown application environment. Twenty years ago this wasn't so crazy. This was the way things were (supposed) to be done. Lots of little tools would compose applications. Now we have the monolith. I've written about this extensively here.

I believe that we are at the point (processor-wise) where writing your "system" as a collection of small Unix programs makes sense again. I believe it can scale.

BLOGnBOX isn't quite there yet...

/todd



- Submitted by Todd Coram

Permalink | Fri 02 Mar 2007 02:04:42 PM EST


Ideas, ideas, ideas

I frustrate myself. I've got a ton of ideas; some related to this blog's software. But, I don't have a ton of time.

I doubt anyone cares about (g)awk anymore. At least, not as a programming language. I guess I am holding on to the original Unix idea of composing solutions with lots of little tools. Each awk script is a tool in a tool chain that composes this blog.

In my world, tiny tools still rule. You see, you take the big ideas, but then you break them down to their fundamental pieces and implement them as small-ish tools.

But, what about things that don't follow the venerable unix pipeline? With gawk, you turn the little tool into a small process that listens and responds over sockets. Each process has a mailbox (rather than a pipe end). It *should* be that simple.

Right now, BLOGnBoX is a pipeline of gawk scripts. I should be able to turn certain pieces into processes. I should be able to have a POP3 process that wakes up every 5 minutes to download new content from a POP3 server. After it downloads the email, it sends a message to the BLOGnBOX mailpiece parser process which parses and validates the content contribution. It passes the result to a BLOGnBOX builder process which then finally sends a message to the BLOGnBOX publisher which uploads the new blog site.

Why not do this as a monolithic pipeline (as it is now) scheduled by cron for every 5 minutes?

Well, I have a similiar setup for my EFX driven website. The problem is how do I subvert the process? What if I don't want to download POP3 messages, but just re-generate the site by hand? I have to stop the background pipeline so I don't step on its toes and re-run it. I could send it messages regarding what to do. But, that seems to cumbersome. With little BLOGnBOX processes, I pick which point of the pipeline I want to invoke and just send it a message. Simple. Sweet.

So, now I have to implement: bnb_pop3_fetcher, bnb_mail_parser, bnb_builder, bnb_publisher as little TCP processes.



- Submitted by Todd Coram

Permalink | Thu 01 Mar 2007 11:56:17 AM EST


I need to resurrect this system!

It's been quite a while. I've even started to use Google's blogger for my CFT projects. But, I have a soft spot for my home grown system. Maybe now is a good time to pick it up again.

It still works, right?



- Submitted by Todd Coram

Permalink | Mon 19 Feb 2007 12:29:04 PM EST


Some minor details..

When I say that this software is about 1000 lines of gawk, I mean just about everything is coded in gawk. The pop3 fetcher, the SMTP mailer, the FTP client... everything. The only other software used is bash, mv, find, date, and maybe sed -- all GNU.

This was an abuse of gawk. But it was fun.



- Submitted by Todd Coram

Permalink | Sat 22 Jul 2006 10:00:41 PM EDT


What is BLOGnBOX?

BLOGnBOX is purely pre-Beta right now. It is approximately about 1000 lines of GNU Awk code and it handles blogging soup to nuts. Soup to nuts? Huh?

Well, this 1000 lines of GNU Awk code handles downloading content from a POP3 email account, extracting the content, formatting the pages and even FTP the pages to a webserver.

It even does pictures!

So, yes. Soup to nuts! Brought to you by your neighborhood pirate...





- Submitted by Todd Coram

Permalink | Fri 21 Jul 2006 11:04:42 PM EDT


Welcome to a new blog...

Welcome!

This is the home of a new blog. It documents the development of a new blogging software system called BLOGnBOX. Its a dead simple blogging system inspired by EFX.

Stay tuned for more info!



- Submitted by Todd Coram

Permalink | Fri 21 Jul 2006 10:06:30 PM EDT


Powered by BLOGnBOX