愛と勇気と缶ビール

ふしぎとぼくらはなにをしたらよいか

YAPC::Asia 2014で "strace for Perl Mongers" というタイトルで発表しました

ついでにスライドもあげておきました。

あげるのが遅くなったのは、体調が悪くて家に帰って寝てたからです。スイマセン。

スライド自体は hakimel/reveal.js · GitHub で作ってて、こいつにはpdf印刷向けのcssがあって普通に印刷できるはず…なのだけど、出力した結果、文字が実際の発表時よりもなぜか全体的に上に寄っています。まあ、ご愛嬌ということで。

割とデモをがっつりやった&スライドに書いてないことを結構喋ってたので、スライドだけだとよく分からない部分が多いかもしれません。


全体としては、以下のような反省点があります。

  • 時間余らせちゃうとあれだよなーと思って内容を盛っていったら普通に40分オーバーしてしまった
  • それに伴って、ツールの使い方の紹介だけじゃなくて、アプリ開発者が普段あまり目をやらないレイヤに興味を持つための入り口としてstraceを紹介したかったのだけど、あんまりその辺について喋ってる時間なかった
  • リアルタイムのデモはやっぱり手がもつれたりするので、録画とかにしておけばよかった

などなど。40分の発表って実は初めてだなー無謀だったかなーと色々心配してましたが、破滅的にグダグダにはならなかったからまあギリギリセーフかな…と思います。


見に来て下さった皆さん、そしてYAPC運営に携わって下さっていた皆さん、ありがとうございました。

無料のサービスって怖い

最近、Tumblrで「Googleであなたが調べるとき、Googleもまたあなたを調べているのだ」というテキストを見た。とてもオシャレ、かつ秀逸だ。元ネタはニーチェの「深遠を覗きこむとき、深遠もまたあなたを覗き込んでいるのだ」という箴言だろうが、ニーチェとGoogleという取り合わせ、僕はこういうのに弱いのだ。

また、どこの誰が言っていたのかは忘れたが、「無料で受けられるサービスにおいては、あなたはお客さんではなくて実は商品なのである」という格言めいたものがある。まこと、その通りだと思う。

Googleのように、色々なサービスでかき集めた情報から広告を表示したり、広告枠を売ったりしている企業においてもそうだし、無料のユーザを集めて、ゲーム内の世界に階層と経済を作った上で一部のユーザに金を落とさせるソーシャルゲームにしてもそうだ。

どんな企業も慈善事業でサービスを提供しているわけではないので、無料でサービスを受けるということは、何らかの形で自分の行動や情報が、サービス提供元が利益を得るための「具」になることを暗黙に受け入れるということでもある。誰もそんなことは明確には言わないが。

今の時点でGoogleの各種サービスが使えなくなったら、僕はとても困る。なにせ、Google Playのアカウントが停止されたついでにGoogle Walletが使えなくなり、Androidの有料アプリが買えなくなった程度のことでも少々困っているくらいだから。

要はGoogleにキンタマ握られているのだ。一個人のキンタマが一企業に握られる、とても恐ろしいことだ。だが、一国家や一電力会社や一異性にキンタマ握られて暮らしているのは人間には割とよくあることなので、実はあまり恐ろしいことでもないのかもしれない。

今となってはキンタマ握られているので、Googleのサービスを使い続けるために多少のお金が必要になったとしても僕は払うだろう。でも、最初にGoogleのサービスを使いはじめる時にそれが有料だったら、僕はそれを使わなかっただろう。僕はGoogleに利潤をもたらさなかっただろう。無料のGoogleサービスを使い始めて既にそれに依存している僕は、Googleに利潤をもたらすための商品になった。

そういった暗黙のねじれがあるために、無料のサービスは怖いな、と思うようになった。「これこれの金額を月額で頂きます」とはっきり言い切っているサービスの方が、なんだか安心できるような気がしている。もちろん、そのサービス提供元が僕を商品にしないという保証はなにもない。利潤を出す方針が明確に定まっている企業の方が、何か怪しげな目的にデータを流用しないような気が、なんとなく、する。それだけ。


つい先日、熱海に一泊二日の旅行に行った。

特に登録した覚えはないのだが、予約した宿に行く道中でGoogleマップを見たところ、宿の位置に「x月y日〜x月z日」という表示がされていた。多分Gmailから宿泊予約メールを拾ったのだろう。

何も心配する必要はない。ディストピアに住む人間は例外なく、そこが便利で幸せな社会だと思って暮らす。

iPhoneがいいか、Androidがいいか、みたいな話

について、僕も含めたIT系の人々はとかくたまに盛り上がりがちなのであるが、別にApple or Googleの株主であるわけでもなし、どちらかのアプリ開発に極端にパワーを傾けているわけでもないのに何故にそんな話題で盛り上がらなあかんの?というのはよく考えてみると一つの謎ではある。(ちなみにWeb系の人はなんだかんだでiPhoneが好きな人が多い気がしている。自分調べ。)

これの背景には多分、

  • 携帯電話というのはそれなりに高い買い物だし、ある程度長い時間をかけて使うものなので、「自分の使っているやつはいいものだ」とやっぱり思いたい
  • IT系の人としては、「こっちのいいプロダクトだ、なぜなら〜」みたいな目利き能力を発揮したい
  • とある案件でひどい目にあわされて髄に染みた恨みがある
  • なんとなく反対側をバカにして溜飲を下げたい

などなど様々な心理的な理由があるのだろう。

僕は長らくiPhoneユーザだったが、半年前くらいにAndroidユーザになって、いささかのオサレさとiTunes連携を失い、Googleサービスとの相性の良さを手に入れた。

別にどちらに義理があるわけでもなし、その時々でより安く使いやすいものを選んでいけばいいと思う。

UIとかUXとかに関してたまに思うこと

UIとかUXとかって、ユーザをおもてなしする、快適に使ってもらう、という意味ではもちろん大事な概念なのだろうが、要は「あってもなくてもいいものをとりあえず使ってもらって、そっからお金をもらう」というような所謂フリーミアム的なサービスを無意識に前提とした言葉な気がしている。

というのは、仕事上使わざるを得ないウェブアプリケーションや、あるいは止むに止まれぬ欲求によって使わざるをえないサイト(エロサイトとか)については、僕らは「ちっ、使いづらいクソUIだな」と文句を言いながらも、使うからである。

ある意味あってもなくてもいいような、ユーザにとって喫緊の用事はないが、サービス事業者側が将来お金を儲けるためにとりあえず使って欲しいようなサービスにおいて、UIとかUXとかが問題になる。なんの役に立つか分からない上に使いにくいサービスとか、意味不明だからである。

つまり、UIがどうとか、UXがどうとかの議論が始まる時点で、極論その人は「あってもなくてもいいサービス」を作っている、ということになる。

もちろん「あってもなくてもいいサービス」を使っていく中で「なくてはならないサービス」になっていくこともあるのだが、それらもほとんど暇つぶしの上で「なくてはならない」ようになっただけで、実際にそれらサービスがなくなっても、ほとんどの場合、人が死んだりはしない。

だからどうだ、って話ではないが。

Chrome extensionでpush messagingを使う時の覚え書き

あくまで、2014/07/26時点での情報。

https://developer.chrome.com/apps/pushMessaging こっちは古い方、かつAndroid向けのGCMとインタフェースが異なるヘンテコAPIなので使わず、

https://developer.chrome.com/apps/gcm こっちを使う。

https://developer.chrome.com/apps/cloudMessaging ここを見るとクライアント (というかextension) 間の送受信しか出来ないように見えるが、

https://github.com/GoogleChrome/chrome-app-samples/blob/master/gcm-notifications/register.js#L51 この公式サンプルを見ればわかるが、Android用GCM APIにAPI key付きでリクエストを投げればサーバサイドから任意にpushできる。ただし、このAPIを叩く場合は、Developer ConsoleにてGoogle Clould Messaging for Androidもenableにしておく必要がある。

ちなみに、上記の口を叩いてpush送る場合、受信元のextensionがChrome Web Storeに公開されている必要はない。社内用extension向けにpush送りたい、とかそんな用途の時にべんり。