「はてなカテゴリ」構想(まとめ前)

0630眠すぎ


*[hatena]「はてなカテゴリ」構想(まとめ前)

これは、独立サービス化が検討されている「はてなキーワード」を活かすための一案です。

また、その名の通り、はてなの各サービスで使われている「カテゴリ的なもの」を全て横断的に扱えるような、独立したサービスの構想でもあります。


「カテゴリ的なもの」とは、たとえば、…

という感じです。(将来的には、他のブログサービスのカテゴリなども視野に入れつつ)


これらを独立した共通のレイヤーとして扱うことで、いろんなものをカテゴライズ(〜グルーピング)(〜タギング)しつつ横断的に見られるようになるのではないかと考えています。


また、id:jkondoさんが仰っている、はてなキーワードで行われているような間接的コミュニケーションを、カテゴリを媒介として、はてな全体に広げようという構想でもあります。



では、「はてなカテゴリ」とは具体的にどんなものなのか。
以下に例をあげつつ。


まず、はてなカテゴリのアイテムは、ユーザが自由に作ることが出来るとします。文字の制限はできるだけなしで。UTF-8で扱える文字ならば全て制限なしで扱えるといいなと思っています。

# はてなブックマークを使っている人は、[タグ]と思っていただいてほぼ間違いありません。
# はてなブックマークでダメになってしまった半角の?など、URLエンコードに絡む 1 Byte 文字もOKになればいいなと思っています。また、長さも、できればもう少し…。


つまり、はてなの現状サービスのいたるところで使われている排他的なカテゴリ(はてなダイアリーのタイトルの[カテゴリ]以外の全「カテゴリ」や「グループ」など)を廃し、代わりに、はてなダイアリーの日記タイトルに使える[カテゴリ]、または、はてなブックマークの[タグ]と同等のものを、サービス横断して使えるようにし、それを「はてなカテゴリ」と呼びましょう、という感じです。



ユースケース(?)としては、以下のようなものをイメージしています。


たとえば、はてなダイアリーで日記を書き、タイトルに[bookmarklet]というカテゴリを付けたとします。

すると、[bookmarklet]というカテゴリが生成作られ、リンクが張られますが、そのリンクをクリックすると、現在の仕様では

http://d.hatena.ne.jp/facet/searchdiary?word=%2a%5bhatena%5d

というページにアクセスし、[bookmarklet]というカテゴリに属している日記がまとめて見られるようになっています。


これとほぼ同様なのですが、「はてなカテゴリ」というサービスが出来た場合を想定すると、たとえば、[カテゴリ]を作るたびに、静的な

http://d.hatena.ne.jp/facet/bookmarklet/

という、facetというユーザのはてなダイアリーに関する[bookmarklet]カテゴリのページができる感じです。


ただし、現在と同様の方法でそのページにアクセスすると、今の「詳細」モードの日記検索結果ではなく、「一覧」モードの検索結果にあるようなリンク一覧をはじめとするリンク群が整然と網羅されて表示されているようなものをイメージしています。

そして、このリンク群には、はてなダイアリーだけじゃなく、そのユーザが各サービスで別個に利用している[bookmarklet]というカテゴリに関連するページへのリンクが、サービスを横断して張られている、というのが重要なポイントです。


たとえば、はてなブックマークの[bookmarklet]タグのページ

http://b.hatena.ne.jp/facet/bookmarklet/

へのリンクがあったり、

http://r.hatena.ne.jp/facet/bookmarklet/
http://facet.g.hatena.ne.jp/facet/bookmarklet/
http://f.hatena.ne.jp/facet/bookmarklet/
http://a.hatena.ne.jp/facet/bookmarklet/

へのリンクもある、という感じです。


また、これら各サービスそれぞれの[bookmarklet]カテゴリページにも、それぞれ他のサービスの[bookmarklet]カテゴリページへ移動できるリンクが設置されていて、相互にどんどん行き来できるという風になっています。


これが、一ユーザの、はてなの各サービスを横断的に利用するという側面からみた「はてなカテゴリ」の構想です。


# 以上の側面からみると、ポータル的な部分もあるかと思います。

# また、各サービスのプライバシー設定や利用状況によって、どのリンクが現れるか現れないかが適切に扱われるものとします。



次に、また、はてなダイアリーでの話から始めますが、

http://d.hatena.ne.jp/facet/bookmarklet/

というユーザのカテゴリページには、はてなダイアリー全体としてのカテゴリーページである

http://d.hatena.ne.jp/bookmarklet/

というページにもアクセスできるようになっているとよいだろうと考えています。

ただし、こうしてしまうと、ユーザ名とカテゴリ名が重複した場合に問題がありますので、

http://facet.d.hatena.ne.jp/

という感じにユーザIDをURLの先頭に配置するタイプのURLをデフォルトにすることを提案します。そうすると、

http://facet.a.hatena.ne.jp/bookmarklet/
http://facet.b.hatena.ne.jp/bookmarklet/
http://facet.d.hatena.ne.jp/bookmarklet/
http://facet.f.hatena.ne.jp/bookmarklet/
http://facet.g.hatena.ne.jp/bookmarklet/
http://facet.i.hatena.ne.jp/bookmarklet/
http://facet.r.hatena.ne.jp/bookmarklet/

と、各サービスの下にカテゴリという感じのURLにすることが出来、非常に統一的なナビゲーションが可能になってよいのではないかと考えています。

# グループには明らかに問題が発生しますが、以下、とりあえず話を進めます。


こうすると、

http://a.hatena.ne.jp/bookmarklet/
http://b.hatena.ne.jp/bookmarklet/
http://d.hatena.ne.jp/bookmarklet/
http://f.hatena.ne.jp/bookmarklet/
http://g.hatena.ne.jp/bookmarklet/
http://i.hatena.ne.jp/bookmarklet/
http://r.hatena.ne.jp/bookmarklet/

というのが、それぞれのサービスにおけるその[カテゴリ]のトップページともいうべきページのURLとなります。

この各ページには、他のサービスの同名カテゴリへのリンクがある以外は、現時点のそれぞれのサービスに適当な画面があればよいでしょうか。


たとえば、

http://c.hatena.ne.jp/

これをはてなカテゴリのトップページとします。

ここでは、カテゴリに関する全ての情報を、はてなの全サービスを横断して便利に使える形でUIを工夫して使えるようになっているという風になっているといいなと考えています。


UIの工夫というのは、検索機能の充実、[カテゴリ]一覧機能、いろんな切り口から見られるようになっている(時系列、空間、人、人為的階層)ようなイメージです。


例)
http://c.hatene.ne.jp/2005-06-29
http://c.hatena.ne.jp/日本/東京
http://c.hatena.ne.jp/緯度:xxxxxx/経度:yyyyyy(標準を知らないので)
http://c.hatena.ne.jp/user:facet
http://c.hatena.ne.jp/フランス/大統領
http://c.hatena.ne.jp/音楽/jpop
http://c.hatena.ne.jp/本/asin:....
http://c.hatena.ne.jp/bookmarklet/idea


ただし、階層は擬似的なもので、

http://c.hatena.ne.jp/bookmarklet/idea
http://c.hatena.ne.jp/idea/hatena

という風に入れ替えても同じ内容のページが表示されるようになっている、つまり、階層は、フィルタリングのためにだけあり、実質は単階層、というイメージのものを考えています。

# なんらかの階層化が必要になった場合は、x:yという風にするか、まったく逆にするか、|を使うか、他にもいろいろやり方は他にあるでしょうし、まだ良く分かっていないので、ここでは置きます。


さて。次は、これらの[カテゴリ]を誰がどうやって決めるのか。

これは、全てユーザの手にゆだねてしまえばいいと考えています。

どんなコトバでも(コトバじゃなくてもUTF-8で書ける文字列でありさえすればよいとする)、いくつでもカテゴリとしてOKとします。

つまり、はてなブックマークの[タグ]やはてなダイアリーの[カテゴリ]が各ユーザによって新しく書かれるたびに、そのページが作成・更新されるという感じです。


# そして、その[タグ]や[カテゴリ]が使われるたびに、そのページには「含む日記」や「含むブックマーク」、「含むグループ」、「含むフォト」、「含むRSS」という感じで、時系列で現れるようにして、RSSをフィードすれば面白いなと思います。


ただし、公序良俗に反するカテゴリが出るでしょうから、この場合にだけは、そのページに誰でも18禁などというフラグを付けられるようにしてもいいかもしれませんし、はてなの方であらかじめブラックリストのカテゴリ一覧を準備しておいて、18禁じゃない?と報告できるような形にしておき、ユーザ認証が必要な措置をとるなどという対策が必要になるかなと感じていますが。


それから、現時点で、ブックマークでは同時に3個の[タグ]が使え、ダイアリーでは?個の[カテゴリ]が同時に使えるわけですが、その同時使用頻度により、それぞれのカテゴリの関連度というようなものが計算されて、各ページに関連カテゴリが表示されるといいなと思っています。

また、はてなグループでは、たとえばbetaというグループで使われている[カテゴリ]は、betaというグループに特徴的なカテゴリ群でしょうから、それらの関連度を上昇させるようにしてもよいかもしれません。



こうして出来上がったカテゴリ空間は、トップページやそれぞれのユーザページにおいて、いろんな切り口(頻度や鮮度、名前順や関連度、等々)で見られるようになっていて、全体像が把握できるというのも面白いかと。


ただし、このユーザページについては、かなりのプライバシーですから、細かく制御できるようにする必要があるでしょう。

del.icio.usでいうantisocial機能、もしくは、Flickrのプライバシー設定機能の発展版という感じで、自分が見たくないカテゴリアイテムはごみ箱に捨てられる、とか、逆に、他人に見せたくないカテゴリ、15禁/18禁にしたいカテゴリ、特定のグループ(はてなグループのメンバ)にだけ見せたいカテゴリ、などと、自分のカテゴリアイテム群を一括して制御できるようになっているといいでしょうか。

トップページにおいては、どのユーザがどのタグを使ったかというのは、ワンクッションありますから、公序良俗規定以外はさほど気にする必要がないかもしれませんが。


あと、タグクラウドみたいなユーザアプリがどんどん作られるように、充実したAPIがあればなおいいですね。



以上が上手くいけば、現在の非常に使い勝手の悪い、排他的で単階層の「カテゴリ」や「グループ」は、廃止できるようになると思います。



はてなダイアリーキーワードのカテゴリはどうなるか。

これは、まず、はてなキーワードのカテゴリとして何が相応しいかを、ユーザそれぞれが決めればいいのです。

たとえば、キーワードのページを、ブックマークして、タグを付ける。
または、キーワードのページに関する話題を、はてなダイアリーにてタイトルに[カテゴリ]を付けて書く。


その時、どの説明の部分(フラグメント)をブックマーク(言及)したのかによって、同表記意義語に対するカテゴリの区別をすることができますし、言及した場合、そのエントリーのカテゴリが何であるかによって、そのカテゴリと最も相関の強いカテゴリのキーワードの説明部分にリンクを張るようにするという処理も可能になるかもしれません。(なりますかね…)、

また、その[カテゴリ]に書いたキーワードと最も親和性の高いものが、グループキーワードにあれば、そちらにリンクする、という処理も可能でしょう。

たとえば、[beta]というカテゴリをそのエントリーに付けたとすると、betaグループというのがありますから、そこのグループにあるキーワードへリンクされる可能性が高くなる、という感じです。


また、たとえば、日記の設定で、そういうものの順番を決められるようにしてもいい。

たとえば、自分がつけた[カテゴリ]と、自分が参加しているグループが一覧で見られるページがあって、
(ま、それが http://facet.c.hatne.ne.jp/ かと思いますが)
たとえば、私のカテゴリは今こんな感じになっていますが、

参加グループ名
    g:facet
ダイアリーカテゴリー
    d:?
    d:*
    d:!
    d:!!
    d:w
    d:T_T
    d:hatena
    d:?D
    d:?D2
    d:?B
    d:?I
    d:?G
    d:log
    d:idea
    …
    d:Flickr
    d:ruby
    d:music
    d:tool
    d:greasemonkey
    d:^^;
ブックマークタグ
    b: …
(以下省略)

これらの優先順位を頻度で並べ替えられたり、登録順に並べなおせたり、任意に入れ替えられたりするようになっていて、その状態をダイアリーで使うかグループで使うか簡単に関連付けられるようになっていると、同表記異義キーワードの説明がいろんなところにあったとしても、どの説明にリンクを張るのかをそのユーザの傾向に沿って自動的に付けることができるようになると考えています。

なお、上記ではダイアリーのカテゴリとブックマークのタグを分けましたが、実際は同じようなものですし、ダイアリーとグループ日記のカテゴリも同列で扱えてもいいという意味で、g:とかd:とかのプリフィックスで区別せず、どのサービスのキーワード説明を優先するかを指定できる余地さえ残しておけば、全ての語彙をまとめてユーザカテゴリ一覧として表示すればいいと思っています。

例)

    g:facet (facetグループにキーワードがあれば常にそちらを優先)
    ?	:	d,b(?というカテゴリは、ダイアリーをブックマークより優先)
    *	:	b,d(*というカテゴリは、上記と逆に)
    !
    …
    Flickr
    ruby
    music
    tool
    greasemonkey
    ^^;

こういう仕組みを採用すれば、「誤爆」は殆ど無くなるのではないでしょうか。


ただ、やはり完璧には誤爆を防ぐことはできないでしょうから、日記の作成時のプレビューの時点で、キーワードを抽出してくれて、おかしいところのリンク先をプルダウンで調整できるといいんでしょうけど…。



また、それぞれのカテゴリに属するキーワードのページを作ることも考えていいと思います。これは、id:sugioさんんが考えているグループキーワードのグローバル化と同じようなものにすればいいと思っているのですが、たとえば、パブリックなグループの場合、そのグループをどのカテゴリに関連付けるかを、グループオーナーが設定できるようにします。

また、ダイアリーキーワードに関しては、はてなブックマークや言及などを使って、ユーザそれぞれがカテゴリを付けることができますから、カテゴリを介してダイアリーキーワードとグループキーワードが繋がることができ、結果として、カテゴリのキーワードということになり得るでしょう。

そして、カテゴリを介しているので、どの日記にどのキーワードを優先的にリンクさせるかというのが上記の一覧の例のように選べるようにもなっている、というわけです。

また、同表記異義語をどんどんグループキーワードに移していくことで、誤爆問題も減るでしょう。



こういう風にすれば、カテゴリというものを、排他的で限定的かつ静的なものではなく、多次元的でオープンかつ動的なものにすることができ、本当に使えるカテゴリとすることができるのではないかと考えます。


以上、かなり長くなってしまいましたが、現時点での「はてなカテゴリ」構想は、こんな感じです。

最も参考にさせていただいたのは、下記の関連リンクです。一部(というかかなり?)アイデアもいただいています。


Gadara∵Diary - はてなSNS
http://d.hatena.ne.jp/gadaraorg/20050628/1119927059


jkondoの日記 - はてなSNSはやらないんですか?
http://d.hatena.ne.jp/jkondo/20050627/1119827651


Gadara∵Diary - カテゴリと、はてなコミュニティ
http://d.hatena.ne.jp/gadaraorg/20050621/1119348235


はてなアイデア - グループキーワードのグローバル化。ひとつのキーワードを複数のグループで利用できるようにしてほしい。
http://i.hatena.ne.jp/idea/3178


たぶん、この↑sugioさんの「はてなグループキーワードグローバル化」構想と、Gadaraさんの「はてなコミュニティ」構想、そしてわたしの「はてなカテゴリ」構想は、ほとんど同じ方向なのではないかと思っています。

ただし、Gadaraさんの「はてなコミュニティ」構想と「はてなカテゴリ」構想とは、コミュニティー要素があるかどうかで少々違いがあるようにも思います。


個人的には、コミュニティ要素は「はてなグループ」に任せ、「はてなカテゴリ」や独立サービスとなるであろう「はてなキーワード」には、jkondoさんが仰るように、SNS的な直接的コミュニケーションの部分は意識的に目立たなくした方がよいのではないかと考えています。

これは、「Wisdom of Crowds」でいうと、その四条件の最初の三つである、多様性、独立性、分散性を満たすためには、その方が有利だと思うからです。


そして、最後の条件である集約性(優れた集約システム)のあり方としてはいろいろあるのでしょうが、いろんなサービスを、キーワードやカテゴリという「コトバ」でゆるく繋ぐことが、私は最も優れた手法であると確信しています。

そして、その「コトバ」を媒介として、流れが簡単に把握できたり、頻度や、時間依存性、空間依存性、コトバ同士の関連性などをいろんな切り口で絞り込んだり、多様な条件で検索できたり、視覚化できなど、あまり何も考えなくても簡単に使え、シンプルだけど柔軟性の高いシステムにすることができれば、本当に優れた集約システム足り得るのではないだろうか、と考えています。


最後に。「はてなキーワードの独立サービス化」関連は、簡易性と拡張性が最も大事だと思うので、慎重に進めて欲しいと願っています。




その他の関連リンク:

はてなアイデア - はてなカテゴリ
http://i.hatena.ne.jp/idea/2167

facet-? - tag bundleについて書き散らしてみる
http://d.hatena.ne.jp/facet/20050613/1118671970

はてなアイデア - キーワードの独立サービス化に賛成。
http://i.hatena.ne.jp/idea/565

facet-? - はてなアイデアで、カテゴリー間の移動を楽にする
http://d.hatena.ne.jp/facet/20050524/1116954772

facet-? - グループ全体を階層化して一覧できる機能
http://d.hatena.ne.jp/facet/20050509/1115625021

facet-? - はてなブックマークTaggingに関するアイデア
http://d.hatena.ne.jp/facet/20050508/1115511590

facet-? - 同形異義語は、はてなグループ内キーワードで。
http://d.hatena.ne.jp/facet/20050507/1115457599

facet-? - 同形異義キーワードグループ
http://d.hatena.ne.jp/facet/20050507/1115457600

facet-? - はてなアイデアのdocument.titleを[カテゴリ]記法で書いたらどうだろうか。
http://d.hatena.ne.jp/facet/20050506/1115384820

facet-? - 「はてなカテゴリ」アイデアの問題点、階層化とか多次元化とか
http://d.hatena.ne.jp/facet/20050505/1115287825

facet-? - 「はてなカテゴリ」というアイデア、その周辺
http://d.hatena.ne.jp/facet/20050505/1115287824

facet-? - はてな公聴会第2回議事録を読んで
http://d.hatena.ne.jp/facet/20050505/1115287823

facet-? - カテゴリの変更は大変
http://d.hatena.ne.jp/facet/20050404/1112623132

facet-? - はてなブックマークへの要望(一覧)より:パーソナルキーワード機能について
http://d.hatena.ne.jp/facet/20050304/1109940205

facet-? - はてなブックマークの新機能:カテゴリ修正機能について。
http://d.hatena.ne.jp/facet/20050223/1109147033

facet-? - はてなブックマークへの要望(一覧)
http://d.hatena.ne.jp/facet/20050213/1108249566

facet-? - 正当化の悪魔
http://d.hatena.ne.jp/facet/20050206/1107646380