2009-05-27

openFrameworks

Marco Tempest が使っていたライブラリは openFrameworks なるものらしい。オープンフレームワーク、と聞き取ったので、一般名詞だと思い込んでいました。

The library is designed to work as a general purpose glue, and wraps together several commonly used libraries under a tidy interface: openGL for graphics, rtAudio for audio input and output, freeType for fonts, freeImage for image input and output, quicktime for video playing and sequence grabbing.

openGL によるグラフィックス、rtAudio による音声入出力、freeType によるフォント、freeImage による画像入出力、quicktime による映像入出力をまとめたラッパということでしょうか。ふむふむ。C++ なのですね。



これでデジタルアートっぽいものを作るのだそうで。いつかやる(≒ずっとやらない)。



2009-05-26

BP Study #21 に行ってきた

BP Study #21 に行ってきました。初めての参加です。



個人的にツボだったのは、AMQP でした。ネットワーク上でキュー実装するサーバとの通信プロトコルらしい。非同期に enqueue するので、アプリケーションはにデータを渡したら、あとは知らんぷりしてていいらしい。単位時間あたりのメッセージの個数が大量にある場合には、同期してたら大変ですから。キューは、TCP でちゃんとセッションを張っているから、基本的にメッセージを落とさない。だそうです。



キューだけを実装するインフラがあるということに、衝撃を覚えつつ、まあそういわれてみればそうか、と。小さなアプリケーションどうしでは、アプリ側で通信を実装するんでしょうけど。



ところで次回の Python Code Reading 10 は日程的に、ちときついかも。うーむ。



2009-05-20

本は電子化されて欲しい

ほとんど炎上レベルな「紙の本が100%亡くなると断言できる、たった一つの理由 」ですが、ちょっと釣られてみる(ウラタロス)。



予測はできないけど、希望があります。私が生きている間に、できるだけ早く、本は電子化されて欲しい。読まなくてもいいような情報伝達手段があれば、もっといいけど、それはさておく。ともかく、紙媒体は電子媒体に取って代わられて欲しい。以下は「私の」wish list です。



紙に対する不満
最初に紙媒体に対する不満を。
検索できない: もうね、検索させろと。なんなら migemo で検索させろと。あやういキーワードだったら「もしかして○○?」とか聞いてくれ。くらいの勢いで検索したいです。
体積と質量が大きすぎる: 欲しいのはコンテンツで、コンテンツはデータなのに、どんだけ体積と質量がでかいのか、と。3週間に2, 3冊程度しか買いませんが、それでも年に1回は BOOKOFF にまとめて売り飛ばします。それとは別に捨てたり、職場の蔵書にしたり。
UNDO を含む編集が困難: いきなり本ではなくて、紙媒体全体の話になりますが、編集しにくすぎ。いつもメモ帳や、裏紙を持っていて、いつでも書ける/描けるようにしています。他に代替手段がないから。でも、編集のしにくさという点で、紙はもう限界ではないでしょうか。



紙に求めていないこと
ページめくりなんて要らないし、紙の味わいも要らない。目が見えるからこんなこと言ってられるのかも知れませんが。ページなるコンセプトは紙の物理的制限から発生しているだけです。スクロール、ブックマーク、検索くらいがあればページなんていらない。



紙じゃなくて電子メディアでもできること
一覧性: ぱっと全体を把握できるというのは、原理的に電子メディアでも可能です。iPhone の Safari みたいにズームすればいい。あるいはコンテンツを魚眼表示でもいいかも。ズーミングインタフェースがあれば、一覧と詳細の閲覧は両立できると思います。
書込、付箋: その機能を実装すればいいだけ。Adobe Acrobat でできることは、できるっしょ。
携帯性: 電源を気にしている人が多いようです。実際、重要だと思います。携帯電話を見ていると、そのうち解決される気がします。



確か、増井俊之さんがどっかで言ってたような気がしますが、昔ホームモータなるコンセプトがあったそうです。一家に一台モータがあれば、みたいな話ですが、そんなのは流行らなかった。でも、あらゆるところにモータの類があります。アナログの腕時計、PCなどのファン、携帯電話のバイブレーション、電子レンジ、洗濯機、ハードディスクドライブ、電気カミソリ。私は持っていませんが、ヘアードライヤ、DVD レコーダとか。



期待していること



小型化: 小さいこと、薄いことはよいことなのでね。
ユビキタス + クラウド: もうね、コンテンツ本体ではなくて、アクセス権を売ってください。あるいはコピーをどこかに置いておかせてください。そのかわり色んなデバイスからアクセスさせてください。PC でも、電子ペーパーでも、携帯電話でも。自分のグローバルストレージに、書込、しおり、タグづけとか保存しておくから、ときどき同期してくれればよいです。
書くほうも電子化: 紙とペンから早く卒業したい。電子かできれば、いろいろ再利用できるし検索もできます。編集もできます。バックアップをとってバージョン管理もできます。
解像度: 解像度はそれなりに向上してほしいです。でも、いまどきの携帯電話くらいでいいかなぁ。
でいい。UNDO もできるし、隠すこともできる。



アラン・デービスの「ソフトウェア開発 201 の鉄則」のなかで、

ハードウェアの進化には楽観的であれ (p.182)
ソフトウェアの進化には悲観的であれ (p.183)

と書かれています。この本は 1996 年に初刷が出ていますが、今でもそれなりに当てはまっている気がします。紙媒体の電子化も、同じようなことになりそうです。






2009-05-19

銀のさらのCMが、印象に残るわけ

方々で言及されている宅配寿司「銀のさら」のCMが大人気の模様です。ひどすぎます。ここでいう「ひどい」は「意表をつく内容が素晴らしい」とほぼ同義です。おそるべし比較広告。



どうもニコニコ動画や YouTube から消えていってるので、すぐに見られなくなりそうです。







それにしても記憶に残るCMです。これは sticky なメッセージではないかと考え、ちと検証してみましょう。



Chip Heath と Dan Heath による「Made to Stick」という本で、メッセージを記憶に残すために必要な6つの要素を上げています。記憶に残る都市伝説や、マーケティングメッセージ、あるいはプロパガンダなんかも、この6つ要素があるのだ、と。曰く「Simple」「Unexpected」「Concrete」「Credible」「Emotional」「Stories」。これらが銀のさらのCMで、どのように活用されているか見ていきます。



Simple: このCMは非常にシンプルです。宅配寿司が、なんとなれば銀のさらの寿司が、他の外食/中食オプションよりも良いのだ、ということです。一貫して競合と比較しています。



Unexpected: このCMの基本的なキモはここにあるかと。「宅配ピザはセカンドベースと間違われるかも知れない」とか。しかも、唐突に草野球の走者がスラインディングしてきます。ちょw ねーよwww。あまりに意外なので印象に残るわけです。しかも各比較対象にたいして数秒しか時間を使わずに、ぽんぽんとつぎのネタを繰り出します。必然的にシンプルな話になるわけです。



Concrete: 非常に具体的です。「こちらのほうが信頼性が高い」みたいな話ではなく、寿司屋の配達の人と、レストランの店長ロボットがルームランナーで走っていて、ロボットがこける。で、安全だ、と。セカンドベースにしてもそうです。



Credible: 信憑性。このCMの内容にはまったく信憑性がありません。もうそれは、おそろしいまでにない。中華料理で食べたカニの仲間が来るわけがない。このCMでは、信憑性を完全に逆手に取っています。明かな嘘によって記憶に残しています。さらに、信憑性を完全に放棄するというのは、メタな意外性を創出することになっています。



Emotional: Heath の本では、恐れなどの感情を喚起させることで、記憶に残させる、という話です。このCMの場合は、笑い、です。職場で両サイドの席の同僚に、勤務時間中、この CM を見せたら「ぶほっ」みたいな感じになっていました。この強烈な感情の喚起が、記憶に粘りついています。



Stories: 物語性もあります。いろんな逸話を紹介していますが、いずれも一貫して「宅配寿司がよい」と比較しつづけます。そして最後に、宅配寿司は銀のさら、とか言うわけです。あるいは銀座の寿司屋と、銀のさらのどちらを選ぶか、というCMでは、人々がどんどん銀のさらを選んでいく(あるいは妨害されていく)様が描かれます。風雲たけし城みたい。これもストーリーが明確です。



とまあ、えらそーに色々かきましたが、こういうCMが見られるのなら、テレビ買おうっかなぁと思った次第です。






2009-05-17

道尾秀介 / 向日葵の咲かない夏



ミステリィとオカルトが混じった小説です。以下、ネタバレあり。



オカルト的な世界が、この小説の下位レイヤーを構成しています。カバーにも

S君は首を吊って死んでいた。[...] S君はあるものに姿を変えて現れた。


とありますので、こういうのがアウトな人は、アウトだと思います。私もこういうの苦手なのですが、ちょうど村上春樹の「国境の南〜」を読んだ直後だったので、すんなり受け入れて読みました。



このオカルト・レイヤーの上に、ミステリィが乗っかります。下位レイヤーに対してはきちんと整合性のある話になっています。この構成に気付かせないように、叙述トリックの布石があり、終盤で回収されていきます。とても面白かったです。





2009-05-16

教育目的のプレゼンテーション

相手に何かしてもらうことを目的にしたプレゼンテーションの解説というのはたくさんあります。実際、そういう場合にこそ、プレゼンテーションが必要になることが多いわけですし。ですので、あなたがプレゼンテーションなのだ、とか、心に響かせないと、みたいな話になります。



それとは別に、教育目的のプレゼンテーションがあります。知ってもらうこと自体が重要な場合です。実際、そういう状況においてプレゼンテーションという形式がよいのか分かりませんが、まあ、そういう機会があります。Python Code Reading なんか、そういう例です。別に、私は Python 2.x から 3.0 に乗り換えて欲しいと思っているわけではないのです。



で、そういうときって、話が細かくなりがちで、かつ、細かい話が本質的に重要だったりします。なので、スライドの作り方や、話し方や、スタイルなんかも、一般的なプレゼンテーションとは異なるアプローチが必要なんではないかと、最近思い始めています。



とは言え、プレゼンテーションが始まった段階では「オレの話を聞け」という目的があるので、最初の方は一般的なプレゼンテーションのノウハウが適用できると考えています。



2009-05-15

ランニング タイムトライアル 1.5km 6分56秒

ジョギングを再開して1週間になりますが、すでにマンネリ化しつつあります。そこで、週末に予定していた 1.5 km のタイムトライアルを思いつきで決行。



6分56秒。9分くらいかかると思っていたので、上出来です。若かりし頃は、こんなペースで 10 km とか走っていたと思うとぞっとします。



ところで無理しすぎたので、頭がぼーっとして、少し痛いです。酸欠か?



2009-05-13

Time Machine を設定してみた

自宅のネットワークストレージとして、バッファローの LS-WHGL/R1 を持っています。バックアップとか、普段使わないファイルを保存するのに使うことを目論んでいました。ところが、Mac OS X の Time Machine って無線 LAN で、このストレージをバックアップ用にしてくれませんでした。で、放置すること数ヵ月。



検索してみたら、いろいろチャレンジしているページがありました。今回は LS-WHGL/R1シリーズでTimeMachineを使う を参考に設定。途中、どこかの手順でしくじったらしく、ディスクユーティリティでドライブが出てこないという自体に陥りましたが、TimeCapsuleじゃないNASを使って、TimeMachineを使ってみるを読みながら、再チャレンジしたら、見事設定完了。おおお。



さっそくバックアップを始めたら、これがまた時間がかかります。まあ、無線 LAN でディスクまるごとバックアップしようとしたら時間がかかりますわな。



あとバックアップ中、というかネットワークでがしがし転送しているときには、Bluetooth のマウスやキーボードの反応がおそろしく悪くなります。なので、作業中はついつい「バックアップを中止」してしまって、なかなかバックアップが終わりません。ないよりマシってことで。



10年ほど前は、バックアップをするために、pdumpfs を NTFS 用に Python で実装して使っていたものです。Time Machine すばらしすぎ。



2009-05-12

Glims - Safari の検索用プラグインをインストールした

Mac では Firefox をデフォルトブラウザにしています。理由は (1) プロファイルを分けておける、(2) migemo がある、(3) 検索フィールドから Amazon の検索ができる、の3つです。



ただ Safari のタブをドラッグして、別ウィンドウで開く、というのもなかなかに便利です。調べ物をするときなんか、特に。



で、探してみるとやっぱりあるもんですね。Glims という Safari プラグイン。Firefox の検索フィールドと同じように、検索サイトを指定できます。検索サイトの登録も簡単です。他にも、Google 検索結果でサムネイル表示、cmd-z で閉じたタブを undo なんかもできます。すばらしい。



2009-05-09

ジョギングの SNS 「ジョグノート」がすごそう

「ジョギングするぞ!」と、年に12回くらい決意するのですが、続きません。意志の力の弱さには自信があるので、誉められドリブンあるいはジマンパワーを活用して、ジョギングしたいと思います。



というわけで見つけたのが、ジョグノートという SNS。いろいろ機能はありますが、気になる機能は以下の3つです。



練習記録
練習した内容を記録できます。距離と時間を記録できるあたりが、ジョグノートです。あと、ジョギング、ウォーキング、自転車、水泳から種目を選べます。このトライアスロン向きな感じ。それから、距離と時間から、ペースも自動計算してくれます。もちろんグラフ表示。



コースマップ
技術的にはこれがすごそうです。地名や住所から地図検索し、クリックしながらコースを設定できます。設定したコースは公開/共有されます。で、このコースの距離、高低差、カロリーが自動計算され、表示されます。カロリーは体重と距離から概算ですが、有効数字が1桁もあればよいので問題ありません。



1




ブログパーツ
最近の練習記録をグラフ表示するブログパーツがあります。はてなグラフみたいな感じです。これがあればジマンパワーも炸裂です。


気付いたのですが、今使っているブログサービスでは任意のコンテンツを表示できないのですねぇ。そのために、値段が3倍のサービスにアップグレードするのは、さすがに本末転倒な気がします。 (追記: できました)





2009-05-05

仕事が遅い私の Things 活用案

GTD 実践ツールとして Things というアプリケーションを使っています。Mac OS X 用のタスク管理ツールです。50ドルくらいです。β版から使っていたので、10ドルほど安く購入しました。シンプルなアプリケーションなので、色んな使い方ができます。ここでは、私の使い方を記録しておきます。



使用方法の前提



  • 公私混同


  • 大小さまざまな(GTDではなく一般的な意味での)プロジェクトが同時に走る


  • プロジェクトの重要度や期限の厳しさが異なる


  • 個々のプロジェクトはボトムアップで発生することがあるが、上位の戦略に結びつけるのは自分の仕事


  • 報告ドリブンにしたい


上のような特性から「どのプロジェクトが、いつ終わるのかほとんど見当がつかない」ことが課題です。もうね、何年社会人やってるんだと。ちゃんとプロジェクト管理すると準備におそろしく時間がかかりそうなので、Things を使い続けて、ある程度の解決をしてみようと考えています。



「ical」タグ
Things には作業時間を計算する機能がないので、工数見積は別のツールで行う必要があります。そこで iCal に TODO というカレンダーを作っておいて、プロジェクトAに1時間かかる、みたいな情報をカレンダーに入れておきます。この作業をし終わったプロジェクトに ical というタグをつけます。TODO カレンダーは工数見積のためだけに使うのでアラームなんかは鳴らしませんし、状況によって自由に時間を変更させます。欠点は面倒だということと、毎日のように更新しないといけないことです。



「★」「☆」タグ
ical タグが破綻しそうなので、新しいのを使いはじめました。重要で急ぐ作業には「★」、重要ではないけど急ぐ作業には「☆」をつけます。これは週次レビューで更新されるはずです。もしかしたら、重要軸と緊急軸で分けられた4象限にするべきなのかも知れません。



「template」タグ
定型のプロジェクトはテンプレート化しておきたいものですが、Things にはテンプレート機能がありません。そこで someday の中にテンプレートとなるプロジェクトを作っておいて「template」とタグ名をつけておく方法が、サポートページで紹介されていました。必要になったら、このプロジェクトをコピーして、使います。



AREAS
GTD の責任や役割と呼ばれるものを、このエリアに割り当てます。仕事の場合には、担当している製品やセグメントを使います。プライベートの場合には「Finance」「Health」などをエリアにします。できるだけ MECE になるように。エリア機能を使うのはこれが初めてなので、様子を見て、変更することになると思います。



そんなわけで、Things で人生を立てなおすことを狙っております。



2009-05-04

誉められドリブンな人生

今年に入ってから、仕事をコントロールできている感がありません。仕事はたまっていますし、休暇中にも仕事の問い合わせや指示が届きます。ついに GTD が破綻したのではないかと焦ってしまいました。



タスク管理ツールに最適解はあるか」のように

会社はそれとは逆で、
・作業期限がある。
・報告義務がある。
・日にち、時間という枠でシビアに管理する必要がある。
・かかった作業時間を計測しておくほうが何かと都合がいい。

という意見もあります。一方で、GTD は比較的抽象度の高い方法論なので、状況に応じて柔軟に対応できるはずだという望みも捨て切れません。



破綻」に、GTD 破綻の分析として

基本的に自分は義務感を行動原理としているということ。

ということが書かれていました。自分の場合はどうかと考えてみると「すごいと思っている人に誉められる」のようです。生々しいのでこの結論に至った仮定は省略です。



そこで思いついたのたが「Report-Driven Work」と「Blog-Driven Life」です。仕事を、報告書を出す、と定義し直します。で、まともな報告書を出すために、まともな行動をする、と。プライベートのほうはブログで。さて、いつまで続くことやら。