Personal tools

人種差別地図よりその元データの方が面白い

written by ultraviolet on

先週、国別の人種差別の激しさを世界地図にプロットしたと称する A fascinating map of the world’s most and least racially tolerant countries という記事が Washington Post に載り、世界中で大いに騒がれました。日本でも 極東ブログ などで取り上げられとります。

しかしこの人種差別地図、World Values Survey という大きな調査結果の本当に一部だけを切り出してきたもので、その扱い方には結構注意が必要です。「日本は青くてインドが赤いから日本の方が人種差別が小さい」などと単純な結論を出せるようなもんじゃあないです。
つうか、実はこの元データである World Values Survey 結果をまじめに読み解くと、人種差別地図よりも圧倒的に面白いんです。今日はその一部をご紹介…

Read the rest of this page »

BuddyPress 関数/プロパティの備忘録

written by ultraviolet on

BuddyPress 用の plugin を作っている中で、ドキュメントであまり解説されてなかった内部関数とかフックとかについて使い方を調べたので、忘れないうちにメモ。
$bp は BuddyPress クラスです。参照するときは global $bp; と宣言してください。

関数とかプロパティとか

bp_is_member()

Member Profile を含む画面であるかどうかを判断する関数、であるはずなのだけど、1.5系ではバグがあって正しい値を返してくれないっぽい(少なくともwp_headフック内では返してくれなかった)。仕方が無いので、今のところ $bp->displayed_user->id > 0 で判定してる。

bp_is_group()

Group Profile を含む画面であるかどうかを判断する関数。Group の Home, Admin, Forum, Wiki, Members, Send Invites で true になることを確認済み。Group Directory では false の模様。wp_head フック内でも行ける。

bp_get_group_permalink()

Group Home への permalink を返す関数。Group Profile を含む画面のとき、例えば bp_before_group_header_meta フックから引数無しで呼ぶと (おそらく Groups Loop の中にいるお陰で) 今の Group の URL を返してくれる。ヘッダ作成のために wp_head フックから呼ぶ場合は (おそらく Groups Loop の外なので) 引数無しではダメで、bp_get_group_permalink( $bp->groups->current_group ) として呼ぶ必要がある。

$bp->displayed_user->id

Member Profile を含む画面で、表示ユーザのユーザID (Integer)を返す。wp_headフックから呼んでも、今表示されてるユーザのIDを返してくれるっぽい。後述する xprofile_get_field_data() とかで使う。

$bp->displayed_user->domain

Member Profile を含む画面で、表示ユーザの Profile Home の URL を返す。wp_headフックから呼んでも、今表示されてる User Profile の URL を返してくれるっぽい。

$bp->displayed_user->fullname

Member Profile を含む画面で、表示ユーザのフルネームを返す。wp_headフックから呼んでも、今表示されてる User Profile のフルネームを返してくれるっぽい。

bp_core_get_userlink()

Member Profile を含む画面で、表示ユーザの Profile Home へのリンクを返す。ユーザ名とaタグを含むHTMLリンクを作ってくれる。wp_head フック内から使えるかどうかは未確認。

xprofile_get_field_data(フィールド名, ユーザID)

指定したユーザの Extended Profile を返す関数。フィールド名は文字列。ユーザIDは上述の $bp->displayed_user->id とかで引っ張ってくる。wp_head フック内でも使えた。

bp_core_fetch_avatar()

ユーザやグループの avatar を引っ張ってくる。引数がやたらたくさんあって、全貌を把握できていない。とりあえず自分の用途に使う分には以下のとおり。
html 引数は、true を指定すると img タグを作り、false だと画像のURIのみ返す。img タグを作るときは class とかも指定可能。
no_grav は、false を指定すると Gravatar を使うっぽい感じなので、とりあえず true を指定してる。
type は、full か thumb を指定可能。avatar の大きさっぽい。
Member Profile を含む画面から呼び出す場合、上記二つ以外をデフォルトのまま呼べば、表示ユーザの avatar を返してくれる。これは wp_head フックの中でも確認。
グループの avatar を呼び出す場合、あんまり自信が無いのだけど、'item_id' => グループID, 'object'=>'group', 'avatar_dir'=>'group-avatars' で呼べばとりあえずそれっぽいのが返ってくる。

$bp->groups->current_group

Group Profile を含む画面で表示グループの情報を返す。current_group はグループっぽいクラスだと思うのだけどよくわかっていない。wp_head フックからでも使える。確認できたプロパティは

$bp->groups->current_group->id
グループID
$bp->groups->current_group->name

グループ名

$bp->groups->current_group->description
グループ説明文

グループの Home の URL を返すプロパティもあると思うのだけどよくわからなかったので、上述の bp_get_group_permalink() で取ってきた。

bp_activity_add()

Activity Stream にアクティビティを追加する関数。引数がやたら多く、あまりよく使い方がわかってない。とりあえずの使い方は enemy plugin の記事 を参照してみて。

bp_core_current_time()

現在時刻を返す関数。bp_activity_add() 呼ぶときに引数として現在時刻を与えることになるのでこれを使った。

フック

bp_before_member_header_meta

Member Profile 画面に表示項目を追加したいときに使うフック。Cubepoint Integration plugin がここをフックしてるので真似してみた。

bp_before_group_header_meta

Group Profile 画面に表示項目を追加したいときに使うフック。bp_before_member_header_meta と似たような名前のフックがあるだろうと予想して grep かけたらヒットしたのでそのまま使ってる。

bp_member_header_actions

Member Profile 画面に Action Button を追加するときに使うフック。位置的には bp_before_member_header_meta より後ろになる。BuddyPress Followers plugin が「フォローする」ボタンを設置するために使ってる。

bp_get_the_profile_field_value

ユーザの Extended Profile の各項目を表示する際に呼ばれるフィルタ。Custom Profile Filters for BuddyPress plugin がこれを使ってる。このフックでフィルタを挟むと Extended Profile の特定特定項目で markdown 記法を使うとかそういうことも多分できる。

BuddyPress に enemy 機能を入れる

written by ultraviolet on

物凄く久しぶりに WordPress/BuddyPress をいじってます。

Torgをモチーフにしたパロディサイト MarketPress を前に立てたんですが、これに今いろいろ機能追加してまして。
まずは Facebook Like ボタンをつける plugin を作って (WordPress としての blog post に like つけるのはあったけど BuddyPress の profile につけるのはなかったので、Open Graph の og:* タグまで含めて作ってみた)、それから profile が勝手にリンクに変換されるのが気に食わなかったので Custom Profile Filters を入れてさらにいじって profile の一部を bold に変えられるようにしたり。

さらに、ユーザ同士の Friend 関係に加えて Enemy 関係も登録できるようにしたくて、それを追加しました。
とは言ってもゼロから作るのは手間が大変なので、土台になりそうな plugin は無いかと探しまわった結果、BuddyPress Followers という plugin が結構近そうだなと。これは、Twitter の follow と同じく相手の承認を必要としない一方向の follow 関係を作るための plugin です。これを土台に作ることにしました。

Read the rest of this page »

フィンランドのブロードバンド接続権

written by mara on

TechCrunch とかが伝えてる話だけど、フィンランドの国営放送 YLE が、フィンランドでは1Mbps以上の速度でネット接続する権利を2010年7月までに法制化する と報道したらしい
でもそれだけだと中身がよくわからないので、調べてみた

実はこの話は去年から出ていて、2015年までに100Mbpsで接続する権利を法制化するって話が2008年9月の Helsinki Times で報じられてる
その記事に出てくる 100Mbpsで接続する権利 が今回の 1Mbps でも踏襲されてると思うんだけど、それじゃその権利って具体的に何なのって言うと、こんな感じ

  • フィンランド国内で全ての家庭について、家から2,000m以内に100Mbps接続可能なポイントを設ける
  • ただしあまりに遠隔地過ぎる約2,000世帯はこの例外とする

2,000世帯涙目
ラップランドの先の方とかかなあ

でもまあ要は2kmおきにネットカフェを作ればOKって話だよね
1人あたり100Mbpsって話では無さそうだけど、まあそれは仕方ないか

高速道路は無料化すべきか

written by ultraviolet on

高速道路を無料化すべきかどうかは、「○○であるべき」的な倫理的価値観からのべき論よりも、定量的データを元にした制度設計論で判断するのが良いと思う。とか言いつつ今回私もデータ無しで話をするんだが、まあそこは許せ。

shi3z memo

ホントは、高速道路どこまでいっても1000円とか価格を低く固定するのは、経済学的にはバカげている。(って経済政策の先生が言ってた!)実際、トラック協会だったか、以前は高速道路料金値下げを主張していた利益団体から、料金が下がって混雑しすぎで逆に儲からなくなったせいか、苦情がきているようだ。この夏はぼくは高速道路を乗らなくていいように飛行機で北海道に行きますw
部分均衡の最適化は、その結果どうなるかよく考えてやらないといけないよ – WASSHOIの日記 – そんな博士の一日

iPhone のテザリングも同じ話だと思うんだがなあ
(via raurublock)
コモンズの悲劇
(via buru)
(via otsune)
高速道路が未だに全線有料のままのほうがおかしい
海外みたいに建設費の回収が終わった道路は無料化すべき
土日だけ値下げとか中途半端なことをするから混雑するのであって、全面値下げなら混乱も起きない

アメリカ初めとする諸外国では高速道路が無料になっていて久しく、かつ渋滞が日本ほど頻繁には発生していない。この二つの事象を因果関係として結びつけて「無料にした方が渋滞が起きない」と考えたくなるのもわからんでもない。でもそれ、たぶん違うと思うんだがなあ。

データの裏づけなく勝手な想像を書いちゃうけど、私の仮説では、日本の高速道路って(そして一般道も)、交通量と比較して絶対的に道路容量が足りてない。まあ以下のような事情があるし。
Read the rest of this page »

人間を操る猫のゴロゴロ音

written by ultraviolet on

海原雄山くん(子猫) 我が家では5月から猫を飼っております。生後三ヵ月半ほどの雄猫で、名前は海原雄山くん。可愛かろうっ。
それはそれとして、Scientific AmericanNew Scientist などで猫について興味深い記事が出とります。猫(家猫)にはゴロゴロ言う声の調子で飼い主をコントロールする能力がある、つう説です。

まあコントロールするつっても「次の選挙で幸福実現党に投票しろ」とかいった洗脳ができるわけではないんですが、「猫に餌をあげたくなる」レベルの効果はあるようです。サセックス大の Karen McComb 博士が Current Biology 誌に投稿した論文によると、猫はお腹が空いてくるとゴロゴロ言う声の220-520Hzの高域成分が大きくなるんだそおです。New Scientist のサイトに掲載されてる 普通のゴロゴロ空腹時のゴロゴロ を聞き比べるとわかるんですが、空腹時の方が激しい感じ。鼻息が荒いっつうか。
んで、こっちの空腹時のゴロゴロを聞いた人は、普通のゴロゴロよりも、落ち着かず、あまり快くない気分になってしまうんだそうな。それで飼い主とかだと「猫に餌をあげないと」との考えに至ってしまうと。
興味深いことに、これは猫だけでなく人間の赤ん坊にも見られる性質だそおです。人間の赤ん坊でも、空腹時には300-600Hzの高域成分が大きくなる。赤ん坊的な立場にいる生き物に共通する生存戦略だと見られます。

オハイオ州立大の C. A. Tony Buffington 教授は、この研究について、「動物病院で猫の患畜が何を求めているか察するのに役に立つ」とコメントしています。私も今日帰ったら雄山くんのゴロゴロ音を聞き分けてみねば。

Wikipedia の報道協定

written by duke on

先週 APF などが伝えたニュースだが、昨年秋にアフガニスタンでタリバンに誘拐・監禁されていた New York Times の David Rohde 記者が、脱出して保護されたらしい。
私はこの誘拐されていたという話を全く知らなかったのでどうしたことかと驚いてよく読んでみると、この誘拐事件については New York Times 等マスメディアの間での報道協定により、報道が自粛されていた模様だ。

しかし同じ New York Times の別の記事 Keeping News of Kidnapping Off Wikipedia を読んでさらに驚いた。この記事によれば、Rohde 記者誘拐事件について Wikipedia 上でも何度かユーザによる編集として書き込まれたことがあったが、いずれも報道協定によって削除されてきたのだと言う。削除は Jimmy Wales と Wikipedia 管理者達、そしてイギリスの The Times 紙との協力によって行われた、とこの記事では述べている。New York Times の公式スポークスマンから Jimbo に対して直接報道協定の申し入れがあった模様である。

記事中で Jimbo が述べているところによれば、この誘拐事件については他のマスメディアが沈黙していたことから、「信頼できるソースが無い」ということを削除理由として処理されていた様子だ。確かに管理者としても扱いやすい状況だったと言うことだろう。
それでも記事中には管理人とユーザとのやり取りがヒートアップしていく様子が描かれており、興味深い。誘拐事件についての記述に固執するユーザもいたようで、先週 Rohde 記者脱出の報が世界を駆け巡ると、管理人に「ほら見ろ、削除は間違いだったじゃないか」との罵声が管理者に浴びせられたそうだ。Wikipedia 管理者というのも同情されてしかるべき立場かと思う。

この事件は、Web2.0的な市民ジャーナリズムと検閲との関係がなかなか一筋縄ではいかないということを改めて思い起こさせるものだと言える。CGM への報道協定の適用は、いったい誰がどのように判断してどう適用すべきなのだろうか。マスメディアはいずれ滅亡するがその後は現在のマスメディアが負っている責任をユーザ1人1人が負わねばならなくなる とは ultraviolet の指摘だが、そのような社会の到来は意外と早いのかもしれない。

参考: 「報道協定」についての Wikipedia 日本語版エントリ

著作権とフロンティア

written by duke on

一年半以上前に 著作権の歴史 と題して、イギリスでの著作権制度がどのような過程を経て成立したかを説明した。いささか時間は経ってしまったが、今回はその続きとして、アメリカで著作権制度がどのような生い立ちをたどったかについて、私の考えを書いてみる。
今さらこのようなエントリを起こす理由だが、巷で話題になっている Google Book Search について、また別の角度から眺める視点として有益ではないかと考えるためだ。

Read the rest of this page »

コンテンツに付随する価値

written by duke on

P2Pとかその辺のお話@はてな の 岸さんの言うとおり!既存のコンテンツ産業から搾取するのを止めよう! で Jamendo が勧められているのを読んだ。その主旨には賛成なのだが、それと同時に我々は「何故 Jamendo の音楽がそれほど聴かれていないのか」について考える必要がある。そこに、「コンテンツ」と呼ぶものに我々が実際に何を求めているのかを考える鍵があると私は考えている。そこを考えれば、Jamendo を勧めることが何故必要かも更に深く理解できるはずだ。

以前 コンテンツの終焉 というエントリを書いたことがあるが、私は「コンテンツ自体の価値」というものをあまり高く認めていない。我々が金を払ってコンテンツを購入するとき、実はコンテンツそのものに価値を見出して金を払っているというよりも、コンテンツに付随する別のものに価値を見出している方が割合として多い。
今回は、その「コンテンツに付随する別のもの」として、効用と手間の二つを取り上げてみる。

Read the rest of this page »

Views

ゲームの面白さ

written by ultraviolet on

西尾さんの ゲームの面白さに関するブレスト に触発されて、久々に ゲームの面白さ について考えてみた。

ゲームの面白さについて考察することは私も20年以上昔からやっているのだけれど、これについて考察する人のほとんどって、「自分がゲームしてて面白いと思う箇所」についてひたすら考察を深めていくのは得意だけど、「自分には面白いと思えないが他の人によると面白いらしい箇所」について考察するのは一様に不得手だよね、てのが10年程前から感じていること。それぞれ自分の内側だけを見ての議論になって、水掛け論になりやすい。まあこれはゲームの面白さに限らず「○○の面白さ」という主観を扱う議論になると必ず出てくる問題なんだけど、でもゲームではその点が先鋭化しやすい。私がゲームについての議論から遠ざかった背景には、そういう点への反省も理由の一つにあります。
なんで今回は、羹に懲りて膾を吹くべく、この「自分に面白いと思えない箇所」について分析するに留まらず、さらにあっち側に行っちゃって、「こんなところを面白いと主張する人なんて滅多にいないし、もちろん自分にとっても面白いとは思えないんだけど、しかし行動科学的に考えるにここが面白いという結論にならざるを得ない箇所」について考えてみたいと思います。

今回サンプルとして取り上げるのは、作業 です。

世の中には作業ゲーと言う言葉があって、一般にはこれってクソゲーを構成する要素の一つと見なされてるようです。
でも思うんだけど、評価の高いゲームでも、作業的側面って意外とあるよね。クロフォード/コスティキャン的分類で言うところのパズルを解く過程でも作業って結構ある。作業的要素があっても、作業自体が楽しければスルーされて良ゲーと呼ばれ、楽しくなかった場合にだけ作業ゲーというレッテルを貼られることになる。RPGのレベル上げでも楽しく作ってあるものはレベル上げ作業自体が楽しいし。作業自体が悪い要素かって言うと、私にはそう思えないんです。

さらに昔RPGのゲームマスターやってた経験から言うと、プレイヤーに作業をさせるのって結構重要なんですよ。意思決定や知的なパズル、あるいは創造的と称されるようなアーティスティックな活動よりも、むしろ単純作業を大目に盛り込んだ方が、プレイヤーの満足度は高くなる。てのが私の実体験から学んだことです。
それが何故かってのは私も完全には理解できてないんですが、どうも「参加感」とでも言うような何かがあって、単純作業ではあっても作業すること自体が「俺ってゲームに参加してる」的な感覚を高めてくれるみたいなんです。
参加感はソロプレイでも重要ですが、多人数でゲームをプレイするときに特に影響が大きくなると認識してます。人がゲームをプレイするときって、ゲームで複雑な精神活動を発揮して楽しむてのも重要なんだけど、どうもその前に「他人と一緒のゲームをプレイしてるんだ」という実感自体が重要なんじゃないかって気がしてる。マズローの欲求段階説に当てはめて言えば、下の方にある所属欲求になるんかな。なのでここではそういうのを便宜的に低次の面白さと呼ぶことにして、もっと複雑なハードコアゲーマー好みの面白さを高次の面白さと呼ぶことにします。

んでさー、こういう「低次のところが実際には効いてくるんだよ」てな話は、私も含めてハードコアなゲーマーにはあまり好かれないんですよ。特にゲームの面白さを論じたがるゲーム論壇(そんなん本当にあるかは知らん)的な人たちには嫌われ易い。高次の面白さは実はあんまり関係無いんだよ的な結論になり易いかんね。でもそれって、イノベーションのジレンマに似た構図があるよね。

さらに言うと、ハードコアなゲーマーが高次の面白さだと認識してるような要素ってのも、実は低次の面白さを無理やり高次のフレームに当てはめて解釈してることが多かったりする。例えば一時期流行った「ゲームは創造的芸術だ」論の大半はそっちだよねえ。ゲームをポストモダンアートとして捉えてとか、つまり ywad.com の人が東浩紀のオタク論壇について言ってるような話。

ywad.com — 動物化するポストモダン
著者のもともとの目的は、仮に世の中の人を「モダン」と「ポストモダン」と「オタク」に分けたとして、「ポストモダン」と「オタク」の類似性を強調し、あるいは後者を前者の流れの中に位置づけることで、「モダン」と「ポストモダン/オタク」の二分法と、「オタク」が「ポストモダン」の正統的な後継者であるというアイデアを、「モダン」の人に納得させることなんだと思われる。なお、上に書いた私の立ち位置は(自分で書いていて恥ずかしいが)「ポストモダン」である。AさんとBさんとCさんがいて、Cさんが、自分がBさんと仲がいいことをAさんに見せつけるためにBさんと手をつないだが、Bさんは困惑しているという図式。

実はホイジンガのホモ・ルーデンスやカイヨワの四分類にも似たようなフレームがあったりせんだろか。どうしてもこういうゲーム論って「ゲームという娯楽の社会的地位を向上させたい」という論者の思いが投影されて、恣意的な議論になりがちだと思う。

まあ私もそういう「高次のゲーム的面白さ」を追及するのが大好きなハードコアゲーマーなので、「どうすれば高次の面白さを深められるか」についてテクニカルな議論を展開するのは大歓迎です。
なんだけど、おそらくゲームの面白さを掘り下げて考える上では、認知心理学的なベースが必要なんじゃないかって気が最近してるんですよ。無意識の部分も含めた人間の認知活動ってのがあって、その氷山の一角が水面上に現れて「ゲームの面白さはここだ」的な議論になる。けど水面下で動いている人間の精神活動を、詳細に把握とまでは言わなくてもベースとして押さえておかないと、実際にゲームを面白くするエンジニアリングとしては機能しないと思う。

例えば「ストーリーテリングが面白い」てのはなんか規定事実のように扱われてるけど、それは何故?
十数年前には「ストーリーテリングが芸術表現だから」みたいな言説が流行ったけど、私はそれ全然信じてなくて、それより「人間の脳にとってストーリーという認知フレームが親和性高いんじゃないか」みたいな認知心理学的な話を掘り下げる方が生産的じゃないかと見てる。

もちろん「認知しやすいゲームが楽しいゲーム」みたいな単純な話に落としこめるわけじゃあないと私も思います。難しいUIを征服するのが楽しいってゲームもあるし。けどその場合でも「自分の上達ぶりが認知できる」ようなメタ認知が重要だったりとか、やっぱり認知心理学に深く関わる話になると思うんですよ。いろいろ突くべきところはあると思う。そういう辺りを何ぞ考えてみんかね。

かく言う私は、先月から塊魂にはまっております。今週の関西旅行では、滋賀の田んぼや清水寺の観光客、神戸の港のクレーンなどを見るたびに、「これがーっと巻き込んだら気持ちいいよね」と妻と言い合っておりました。ちなみに妻は乙女ゲー好きです。

  • Languages

  • Recent Posts

  • Archives

  • Categories

  • Themes

  • Subscriptions

  • Meta

  • Social Services

    Flickr  Picasa  movapic  Photobucket  Zooomr  YouTube  Ustream  Vimeo  scribd  SlideShare  Hatena Bookmarks  Diigo  Commons Marker  Google Reader  StumbleUpon  Digg  Reddit  Hatena Diary  Rauru Blog  WordPress  Blogger  LiveJorunal  Livedoor Blog  posterous  Tumblr  Clipp  Twitter  Plurk  LogPi  identi.ca  Disqus  IntenseDebate  TypePad  Last.fm  GoodReads  LibraryThing  Booklog  amazon wish list  Polyvore  pupe  Upcoming  Wakoopa  yelp  Dopplr  Foursquare  ロケタッチ  GetGlue  Hatena Mono  Kiva  ohloh  MySpace  Windows Live Space  LinkedIn  Facebook  Google+  Plaxo  Netvibes  FriendFeed  backtype  klout  MyBlogLog  socialtunes  kotonoha  2manji  Himitsuku  iddy  mixi  the interviews