A Canvas for Thought

March 30, 2007

Some thoughts on the web as a filesystem

Filed under: ideas — vednis @ 12:03 pm

This is a draft idea I have been working on. I am posting it to provide context for some other ideas I had recently.

Update: it looks like Jon Udell and the guys at Freebase are already dreaming along the same lines.

Some interesting ideas result from REST placing restrictions on you.

These constraints make web objecs similar to file-like objects. In fact, the entire URL space is a little file-like. Things rest in only one place (canonical). Many names can point to the same thing (hard links). The same object can be copied in multiple spaces.

Maybe that is why you can re-invent old Unix tools as web services?

Now, what happens if we try to merge web-based tools with a extreme file-oriented operating system?

You might end up with commands like this:

$ mount http://amazon.com
$ grep 'agile & software' /mnt/w/amazon/books > agile-books
$ cat agile-books | cut -3 | uniq -c
# Result: the number of books about Agile software
development, counted by publication date.

Or this:

$ mount http://google.com/gmail
$ mount https://acanvas.wordpress.com/
$ ls /mnt/w/gmail/inbox
$ cp foo.eml $home/drafts/foo-reply.txt
edit foo-reply.txt
$ cat $home/drafts/foo.txt > /mnt/w/acanvas/posts/new

Or my favorite, this:

$ mount https://acanvas.wordpress.com/
$ cat $home/drafts/post.txt | wiki2html > /mnt/w/acanvas/posts/new

I know, I’m not the first person to think of this, And there are problems like “What does it mean to run ‘cp’ or ‘mv’ on a URI, or it’s contents?”. But it is a problem worth solving – one could ‘program the web’, in the most literal sense.


1 Comment

  1. […] One can always dream. But given enough APIs, and sticking with the simplest solution that works, there’s no reason why we can’t get there: […]

    Pingback by Labnotes » Rounded Corners - 119 — March 30, 2007 @ 2:30 pm

RSS feed for comments on this post.

Create a free website or blog at WordPress.com.

%d bloggers like this: