« 2005年06月13日 | top | 2005年06月18日 »
2005年06月14日
blogramming = blog + programming
今日、あだちんと話していて思いついたこと。
blogを書くという行為を、プログラミングする行為と融合してしまうことを、
blogrammingと言う。 書かれたものを blogramという。 そのためのツールを
blogramming環境と言う。
blogramとは、ブログのコンテンツ、つまりエントリ、アクセス記録、コメント、
トラックバックなどを対象とするプログラムである。
blogramはこのように対象を限定しているので、専用にデザインされた
言語仕様やライブラリをもつ。
blogramは永久ループに入ったりCPUを使いすぎないように、
緻密に設計された砂箱の中で実行される。
blogramは、 blogツールの中に格納され、内部や外部から呼びだすことができる。
たとえば「RSSにトラックバックの情報が入ってないのが不満」ということであれば、
RSSを作るblogramを改変すればよい。RSSを送りだすところも、
上記の定義から blogram である。
ハローワールドblogramは以下のようなものである。
これはRuby風の仮想コードで、あるエントリの行数を数えている。
def countLine(entryID)
return getEntry(entryID).split("¥n").size
end
以下の例は、全エントリの行数を数えている。
def countTotalLine()
cnt = 0
getAllEntry().each { |ent|
cnt += ent.split("¥n").size
}
return cnt
end
以下は、そのブログの「検索」されたキーワードのトップのものを返す。
def getTopSearchMsg()
return getAllSearchWord().sort.shift['word']
end
これらのサブルーチンをXMLRPC越しに呼びだす。
以上では外部からの呼び出しを仮定しているが、内部からも当然呼びだせる。
以下のようにテキストを書く。
これまでに、私は、countTotalLine()行のブログを書いたが、
これは、technoratiでは、 technorati.rank("totalLine", "ringo" )番目に多い。
そして、きのうは、 acecssNum(today-1) 回アクセスされた。
何だか新しいなあ。。。 wikiのプラグインをブログ向けに最適化し、
よりプログラムとの境界をなくした感じかもしれない。
blogrammingによって、 これまで取りこぼされてきた多くの情報を発信できるほか、
現在、検索エンジンのサーバーが負担している処理のかなりの部分をblogramming環境が
かたがわりできる、RSSの仕様の不足などに対して迅速に、勝手に、自由に対応できる。
ほかのwebサービスとの連動などが可能になるなど、いろいろ発展が考えられるのではないか。
ブログツールを、本来の部分と、そのツールを使って作られた内容に対する処理をする部分に分け、
さらに使いやすいAPIを提供することで、今までにないサービスが可能になるのではないか。
Posted by ringo : 01:06 | TrackBack
« 2005年06月13日 | top | 2005年06月18日 »