mikutterの最新の情報は、mikutter blogに引っ越しました。

2013年12月3日火曜日

mikutter Advent Calendar 2013 3日目 mikutterのマルチアカウント・マルチサービス

mikutter Advent Calendar 2013(http://www.adventar.org/calendars/120)三日目です。

今年ももうこんな時期ですか。今年を振り返るのはもう一月先にするとして、今回のネタは、mikutterマルチサービスの話です。

世の中のTwitterクライアントで先進的で人気なものはだいたい複数のアカウントを使い分けられるものですが、mikutter 0.2.2ではご存知の通り1アカウントしかサポートされてません。
しかし!0.3ではなんと、複数のサービス・複数のアカウントを同時に扱えるのです!

複数のサービスとは

複数アカウントはわかると思うんですが、複数サービスとはなんでしょうか。ここでいうサービスというのは、例えばTwitterのようなものです。SNSのほかに、メールやIRCも、ここでいう「サービス」の範疇です。
そう!遂にmikutterは、Twitterクライアントから、「SNSクライアント」いや、「コミュニケーション・プラットフォーム・クライアント」になったと言っても過言ではありません!これは革命です。

イマドキのSNS

とはいえですよ、何に対応するかが肝心です(例えばmikutterがWassrクライアントだったらどうなっていたか)。mikutter 0.3では、任意のサービスをプラグインで提供できます!フゥフゥ!
というわけで、今回は、今年リリースされて既に100万人のユーザが居るSNS、「艦隊これくしょん」のアカウントをmikutterに登録して使ってみましょう!

艦これとは?

さて、私は艦これを遊んだことがないのですが、仮にもIT系エンジニアとして活動しているので、そこら辺の艦これプレイヤーより艦これには詳しいです(同業者との飲み会でこれを知らないと仕事が取れません)。私も艦これ博士ではありますが未プレイには変わりないので、知らないみんなも安心してください。また、艦これはあくまで「マルチサービス」のための例として出すだけなので、あんまり深く説明しません。興味を持ったら遊んでみましょう。

FLASHという壁

艦これは厳密にはソーシャルゲームという類のサービスです。ソーシャルゲームとはゲームのなかでも「ガチャ」という機能ないしそれに類する機能でモンスター(艦これの場合は船)が手に入るゲームのことで、一応名前にソーシャルと入っているから後付けでSNSみたいな要素も入っています。艦これの場合は、Twitterでみんながわいわいしているのがそれだと言う人もいますが、どうなんでしょう?…つまりmikutterに要求されるのは、Twitterで艦これワイワイしやすくするための機能です。
艦これは多くのソーシャルゲームと違って、サーフェイスと呼ばれる専用のゲーム機でプレイしますが、FLASH版はLinuxでも遊べます※。なので、FLASHが再生できたら艦これはプレイできるということになります。

※サーフェイスでも内部的にはFLASHを使用しているみたいです

作ってみる

では実際に作ってみましょう。テンプレートはお決まりですね。

$ mikutter generate kancolle
$ mikutter spec ~/.mikutter/plugin/kancolle

WebkitGTK

FLASHを再生するにはな、こうやってWebkitGTKをアアアアアアアアアア♡♡♡♡♡♡♡♡♡

# pacman -Syu webkit-gtk2 (Archの場合)
$ gem install webkit-gtk2

で、ブラウザを埋め込めばいいんだ!えいや!


簡単にWebkitでブラウザが表示できました。RubyGTK最高!まさに、早きこと島風のごとし、ですね!ああ、早きこと島風のごとしというのは艦これ用語でしてね、とりあえず速い!という意味です。うおーこの船はやきこと島風のごとしー!みたいな感じで使います。以後、艦これ用語をいくつか使いますが、いちいち説明はしません。皆さんも一緒に勉強しましょう。

…と、話は逸れましたが、もうここまでくれば実質暁の水平線に勝利を刻んだも同然ですね。細かい作りこみをやりましょう。

見た目を良くする

Linux界隈のプログラマの悪い癖は、見た目とUXをわきまえず、UIを質素にしてしまいがちなところです。質素なUIは、マシンにかける負荷が低い傾向にあるとか、深く考えなくても一定のユーザビリティを担保できるとかメリットもあるのですが、GUI面倒だとか、そういうネガティブな理由で手抜きをするのは良くないです。こういうプラグインのアイコンはしっかりきめておきましょう。

アイコンは文字と違って読めばわかるというものではありません。ここでは難しいUIの理論までは言及しませんが、一般的には誰でも経験的に知ってるものにしておくと混乱が無いです(フロッピーとかぐるぐる矢印など)。
で、艦これプラグインの場合、艦隊のアイドルと言われている那珂ちゃんをアイコンにしました。那珂ちゃんは車の展示会みたいなところにいる女と同じようなもので、通には嫌われており「解体」されるのですが、大抵の人は船より女のほうが好きですから人気です。

また、艦これプレイヤーには、艦これTLがあると便利だと思います。 mikutter プラグインはUIがいろいろといじれてとてもいいですね。こういうのもイベントやフィルタを使って島風のごとしですから、も〜っとmikutterに頼っていいですよ。

なにこれぇ?

課題

今、世界が「艦隊これくしょん」を必要としています。mikutterも転換期を迎えたと感じます。しかしmikutterフレームワークは、自然にこの変化を受け入れることができました。まるで、最初からそう設計されていたかのように。

人々はTwitterと艦これの自然な融合を望んでいます。サーフェイスに対抗するために、先日Canonicalは、サーフェイスより安くTwitterも艦これもできる「Ubuntuタブレット」の布石として、mikutterをバンドルしたUbuntu 13.10を島風のごとくリリースしました。また、Appleもこの流れを受けて、自社の開発するOSの最新版Marlionで、長らく1.8のまま放置していたRubyを2.0に改修し、mikutterの導入の簡略化を図りました (参考: 昨日のAdvent calendarの記事)。WindowsかMacか、という時代は既に轟沈しつつあり、サーフェイスかmikutterか、という時代はもうそこまで来ている!すでのな

しかし、冷静にmikutterの現状を見ると、そのようなベンダーの期待は過分であると言わざるを得ないのが現状です。最初のスクリーンショットを見てください。艦これの表示域があまりにも細いです。これはmikutter が「ペイン」を全て同じ大きさで扱うことが原因です。mikutterで本当に快適な艦これライフを送るには、mikutterがウィンドウマネージャになる必要があることを示唆しています。

使ってみる

githubで公開しています。艦これのアカウントはなくてもいいですが(俺は持ってない)、あったほうがいいと思います。mikutter 0.2.2.1430で動作確認しています。

https://github.com/toshia/mikutter-kancolle

まとめ

明日から年末までまた忙しいからこんなことをしている場合ではない。早く寝ること島風のごとしです!