I'm planning to create a new literary form that allows dialog to occur between thousands of people simultaneously whilst automatically removing spam and trolling.
I'm going to call it Agora, after the marketplace in ancient Athens where the first thinkers had their dialogs.
After thinking about it for a bit, it could be described as:
Like a newsgroup, but with reddit like karma for individual posters, and a graph structure rather than a tree.
Like a wiki, but where everyone is responsible for their own labeled pages, which only they can edit, but where everyone can take a copy of a page, and edit it themselves, after which it gets a credit like 'originally by A, edited by B'.
Like reddit and hacker news, but where the discussions persist permanently, and can link into other discussions, forming a web like structure.
There sort of already is one of these. It's called the internet. But on the internet it's hard to see the reply structure of page and counter-page. In Agora, the links will be manifest first class objects and both the links and the pages will be up and down-votable like comments in reddit.
I want a wiki that works like a newsgroup with a reputation system.
To write this, I clearly need to take the easiest to understand open source thing that is most like what I want, and grok it.
Grokking it may mean translating it into another language.
My favourite languages are Clojure, Python and PLT Scheme.
Clojure, although the most immature of the three, does have the advantage that its memory model is very like an in-memory database, which for a collaborative web site is probably a good structure.
Does anyone have any ideas where I should start?
Would anyone like to give me a hand? It will be easier with two.
If you're reading this, and see what I mean, feel free to go off and do it, and e-mail me the web address of the prototype as soon as you've got something running.
I don't want to own it. I am just fascinated by what it might look like, and how it might work.
And I think it might be fun.
My original thoughts about this are in the somewhat tedious blog post: http://johnlawrenceaspden.blogspot.com/2009/10/meta-tree-about-meta-trees.html