マストドンのことでも書くどん(…ごめん)
Mastodon.一言でいうと懐かしい.でもそれはTwitter黎明期とかIRCとかの懐かしさではなく,個人的に2010年頃StatusNet等をインストールして色々と試してたころの懐かしさ.あまり一般的ではない.
StatusNetあるいはidenti.caそして現在はGNU socialとなっているそれは,オープンソースのSNS/マイクロブロギング・システムだ.当初それらが作られた理由は,おおむね
- オープンソース版のTwitterがほしい
- それをオンプレで動かしたりしたい
というものだった(推測).
そうすると,その結果として複数のSNS/マイクロブロギング・システムがあちこちで立ち上がる(Mastodonではこれをインスタンスと呼んでいる).そこから必然的にそれらシステム間の「相互乗り入れ」を実現したくなる.それが”federation”と呼ばれる機能であり,そのためのプロトコルがOStatusというもの.MastodonはこのOStatusの新しい実装であるため,(Mastodonのインスタンス間だけでなく)GNU socialとも連携可能らしい.
.....
私が2010年ころに何をしていたかというと,社内の情報交換・共有用にそれを立ち上げようとしていた.理由は3つ.
- もっとマシなツールで情報交換・共有をしたい(メールはもうウンザリ.当時はTwitterはイケてるものであり少しでもそれに近づけたかった)
- その場合当然オンプレミス(自社内)にインストールできなければならない(クラウド? えーと…w)
- 異なる部署等毎にそれらは用意せざるを得なく,となるとそれらの間の連携機能が欲しい
だ.見渡すとStatusNetはピッタリだった.
結果,いくつかの組織でStatusNetサーバが上がり,連携(federation)も機能した.が,いわゆる「盛り上がり」は今3つくらい.結局翌2011年の春,「節電施策」のもとサーバをシャットダウンして(仮想マシンだけど),それきりである.
(ちなみに当初目的はまったく姿を変えた形でその後Yammerが担い,後にSlackに受け継がれ現在に至る.これはかなり上手くいってるだろう.先日の某カンファレンスもSlackがなければ実現しなかったかもしれない.…え? オンプレ/クラウドの話はどうしたかって? 何のことだか僕ぜんぜん分からないなぁw)
.....
さて,Mastodon.実際に触ってみると,Federation機能のあたりは雰囲気は正しくStatusNetそのまんまだ(当り前).というわけで非常に懐かしい.2010年に戻った気分.
2010年台も終盤のいま,Mastodon/GNU social的なものが必要とされる理由は,ひとえにFacebookやTwitterに対するalternativeとしての存在だろう.プロプライエタリに対するオープンソース.独占的巨大プラットフォーマーに対する分散されたサービス+連携機能.
そしてMastodonがそこを意識しているかは不明だが,もうひとつ重要なターゲットが考えられる.それはコミュニティやチーム内のコミュニケーションツールとしてのSNS/マイクロブロギング的サービスだ.過去数多の勇者達がそれに挑みそして敗退した(GoogleもSaleforceもMicrosoftもFacebookも)…と思ったらSlackが登場しあれよという間に現在チャンピオン.とはいえSlackで複数チームに入っていればよく分かると思うが,Slackにはチーム間連携という機能どころかその概念すら何もない(ほんと何とかして).
Federationとは要するに「よそのサーバのユーザーをフォローできる」=「自分のタイムラインに表示されたり,DMを送ったりできる」という機能だ.それがチーム/コミュニティ間連携の問題を解決するかというと,微妙,というのが2010年時点の理解だった(その後は追っていないので分からない).しかし取っ掛かりとしては良いだろう,
マストドン.というわけでそれはStatusNet的なものだが,その経験で言えばそこそこは使える.痒いところに手が届かない的な部分は山盛りにあるが.何らかの理由でSlack等を使わずにチームやコミュニティが自分たちのためのSNSを立ち上げるのであれば,ひとつの選択肢だろう.
これを起点として楽しめばよいのだ.もっとモダンさを上げるとか(クライアント/AppのUI,投稿の削除や編集,スレッドどうするか問題等々),システム的にひとひねりふたひねりしてみるとか,いわゆる分散システム的の楽しさ苦しさ(複製やら一貫性やら削除問題やら)と戲れるとか.
.....
ここからひねるとしたら,ぜひインスタンスの数を爆発的に増やすマイクロ・インスタンス化する方向に行ってほしいなあ(一つのインスタンスに何千何万ユーザとかじゃなく,小ユーザ指向で).となるとインスタンス間のデータの交換をどうするかを考え直さないといけないので,そこをP2P的に再設計して.んでサーバーレス・アーキテクチャっぽく実装可能にしたりするとか(楽しそう).Net Giants達がでかい顔で伸してるこの世界の片隅で.それくらいやってみても.
(でももし歴史のifを言って良いなら,ひょっとしたらそんなもん,金子勇さんかあるいは彼に触発された誰かがとっくの昔に作っちゃってた気がしないでもない.だがこの世界線でそれは夢のまた夢)
もうひとつ.コミュニティやチーム間を跨いだアクティビティを支援することにおいて,フェデレーション/連携とはそもそもいったいどういうことで,何が必要で,何ができればよくて,どうやってやれば気持ちいよいか,を考えて考えて真面目にギリギリと作っていくとか.それはまだ誰も答を知らない.かつて登場したWebが全てを可能にしてしまったような「発明」がそこにあるかもしれない.
.....
Decentralize,Peer-to-Peer.そしてBlockchainやSharing economyもここに入れたければどうぞご自由に.システムを作る側の人であれば(それは大変に分の悪い戦いだが)やってみてもよいではないか.殺されはしないだろう(いやするかも…) ユーザーサイドは…利便性ないかな今のところは…(←身も蓋もない)
というわけで以上長い文章の結論,いや実は一番最初に言いたいことは…
(みんなそう思ってるよね? :-)
おしまい.
.....
以下当時のツイートの残骸たち(自分用メモ).起点はやっぱりhitoakiなのである(笑)
.@hitoaki ていうか本当なら横断的なのをとっとと作って使ってなきゃダメだよなあ.Salesforceに載るくらい普遍化? するより遙か前にとっとと.二昔半前の先取の精神はいずこに…,みたいな.>「しゃべる」
— Toshihiro Takada (@takadat) May 13, 2010
とりあえず「しゃべる」は上げた.これは管理者がアカウント作ってあげないといけないのか.ちょっと面倒.あと「メール通知」が有効にならない.SMTP上げてim.properties書き換えたのに…さてどうやって切り分けよう.いずれにせよ月曜日にちょっと動こう,っと.
— Toshihiro Takada (@takadat) May 14, 2010
と思ったが,もう少しググってみると,StatusNet http://status.net/ の方が良さそうな空気が… ちょっとやり直し,か?
— Toshihiro Takada (@takadat) May 14, 2010
「OStatus」とググろうとしたら,「os立ち上がらない」とサジェストされた.不意を突かれて一瞬固まる私,みたいな.
— Toshihiro Takada (@takadat) May 15, 2010
今日は一日StatusNetと格闘した.とりあえず立って歩くくらいまでは出来るようになったかと.OStatusとか訳分からんけど,なんか連携プレーもできそうなできなさそうな.さて,これだけど,『機能する』かなあ…
— Toshihiro Takada (@takadat) May 17, 2010
StatusNet & OStatus おもしれー.こういう方向性があったか…
— Toshihiro Takada (@takadat) May 19, 2010
.....
それ(オブジェクトをフォロー)はかなり素敵だなあ.もう少しちゃんとみてみます.ありがとうございました.RT @yyamano chatterは結構よさげですよ。人もオブジェクト(データ)も同じようにフォローできるので。
— Toshihiro Takada (@takadat) May 29, 2010
.....
iTunesStoreなんかに囲い込まれてもねえ.楽曲とかアルバムとかアーティストとか固有のライブアクトとかを指す識別子があって,個々人が自分の環境の応じてそれをリゾルブした結果,何らかのストレージやストアに行き着けばいいじゃん.
— Toshihiro Takada (@takadat) September 2, 2010
(続く) で,ソーシャルな部分はfacebookでもtwitterでもなんでもよくて… オブジェクト識別子のリゾルバのプラットフォームと,データストレージのプラットフォームと,ソーシャルグラフエンジンのプラットフォームが独立直交してるみたいな.
— Toshihiro Takada (@takadat) September 2, 2010
要は,人とオブジェクトがフォローできて,フォローは非対称で,StatusNetみたくサービスをまたいでフォロー(subscribe)ができて,つまりは全ての人やオブジェクトにはユニークな識別子が振れて,基本はステータス(ツイート)が時間順に並んで表示されて,…
— Toshihiro Takada (@takadat) September 2, 2010
…人やオブジェクトやステータスにラベルを付けられて,強力な検索機能があって,人やオブジェクトやステータスに個別にアクセス権を持たせられて,実はオブジェクトはvirtual objectとreal objectがあって,…
— Toshihiro Takada (@takadat) September 2, 2010
…今まで言ってた「オブジェクト」は実はvirtual objectでvirtual objectをどうreal objectとして持つかは自分で制御可能だけどちゃんと隠蔽されるシステムがあればいいんじゃね? それがあれば当分の間それでいいよ.(笑)
— Toshihiro Takada (@takadat) September 2, 2010
.....
フェデレーテッドを名乗るならOStatus http://t.co/wQAVLGnp のようにサービスを超えて連携できるとこまでいって欲しい.Yammerの外部ネットワークももうひと超え何かが欲しい.OpenPNE3はその辺どうなんだろう.(@mktredwell)
— Toshihiro Takada (@takadat) January 31, 2012
@mktredwell @tejima ありがとうございます.一旦はOStatusで社内向けを組んだ後,地震後諸事情で放棄,今はすっかりYammerユーザという軟弱者な私ですが,企業・NGO・コミュニティ内ソーシャル・マイクロブロギングは大鉱脈(作る側も使う側も)だと信じてます.
— Toshihiro Takada (@takadat) January 31, 2012