RAILS OF RUBY ON RAILS が実にすばらしい件

by tanabe on July 24, 2008

yugui さんのレビューを読んで、RAILS OF RUBY ON RAILS を買ってみた。

詳しくはまた別に書きたいが、想像以上に本当にすばらしい内容の本だった。

誤解を恐れずに言ってしまうと、RAILS OF RUBY ON RAILS は Rails2.x 世代の最高のチュートリアルだと思う。これから Rails について知りたい人は、Web で一生懸命に Rails 情報を探すよりも、まずこの本を買って読んでみるほうがいい。

読むだけなら短時間で内容に目を通せるのもチュートリアル的だ。教科書としてではなくチュートリアルとして買うのであれば、(同じくショッピングカートを作っている)「RailsによるアジャイルWebアプリケーション開発」と比べてもぼくはこちらを推す。

チュートリアルと呼んでしまうと内容が薄そうに聞こえるが、この本のすごいところはチュートリアルとしての進め方をしながら、その実要所要所で必要となる Rais の機能についてはきっちり説明がされているところだ。

もちろん、説明されていないことはたくさんある。説明されていることだって、説明の内容が深いかと言うとそんなことはない。でも、ここから後は必要に応じて自分でリファレンス読んだり、別の本を買ったり、Web で検索したりして調べることができる。

他にもいろいろな点で感動したのだが、とりあえずここまで。(あ、純粋に技術書として買うとここまでの評価にはならないかもしれません。でも、そういう需要には達人プログラマー+DHH+前田修吾さんが応えてくれるので問題ないでしょう。)

Rails of Ruby on Rails ~Case of LOCUSANDWONDERS.COM~
Plan de Sens 清水 智雄
毎日コミュニケーションズ
売り上げランキング: 43091
  

iPhone の Push Notification Service から読み取れるもの

by tanabe on July 16, 2008

iPhone について、否定的なエントリをいくつか読んで、ちょっと違和感があった。別に iPhone 好きでも Apple 好きでもないので、否定的に受け止められること自体は構わない。

だけど、こういうものを捉えるときのアプローチとしては、「もし、後々これが大きなターニングポイントになるとしたら、何をもってターニングポイントになりうるのか?」という視点で検討したほうがいいのではないか。と思ったのだ。

その脅威が実現する可能性についてはまた別途検討すればいい。結果として何でもない単なるおもしろインターネット端末でした、という結論なら安心してスルーするか、祭りを楽しめばいい。

ただ、検討もしないで「あれがない」「これがない」と現在あるものとの比較でないもの探しをしていると、大きな流れを見失う恐れがある。(実際に買った人から「Safari 落ちすぎ!」みたいな声も挙がっているのはひとまず横に置いておく。)

ということで、ざっくりとだが自分でいろいろ読んでみた。

以前に shi3z さんのこのエントリを読んで「ほー」と思った覚えはあったので、 Push Notification Service が iPhone のキーコンセプトだということを取っ掛かりに調べ始めた。(ちなみに「ポジショントーク」というはてブコメの指摘はたしかになー。とも思った。)

http://d.hatena.ne.jp/shi3z/20080610/1213107165
ケータイコンテンツの最大の特徴とは、ユーザ側から働きかけるのではなく、サービス側から働きかけることによってユーザの行動そのものを動的に変えて行くということです。

そうだよなぁ。ケータイであるということは、つまりユーザーが常時携帯し、どこにいてもいつでも手元に置いているということだ。つまり、(PC の前でできることだけではなくて)あらゆるユーザーの行動に働きかけをし続けることができるという可能性を秘めているわけだ。今ユーザーが何をしているか、何を欲しているかを生活の隅々まで追って、その瞬間にほしいものを提供するということができるとしたら、それは携帯端末だけだ。 (ケータイは携帯電話であるので、こう文章にすると文字通りの当たり前のことなんだけど。)

続いて、blog.Winding-life.net さんのなぜはてブが3つしか付いていないのかまったく理解できないすばらしいエントリ。これは全員が読むべき。説明も非常にわかりやすく、その洞察も納得がいきやすい。

http://blog.winding-life.net/archives/23
とにかく重要なのは、サードパーパーティのアプリに対して「着信機能」をシステムレベルで開放してくれるってこと。 ここから広がる可能性は今までの携帯電話とは比較にならないと思うんだけど。

そして、

でもこの仕組みの一番のえげつなさは、音声通話とパケット通信以外のサービスをキャリアに関係なく自分で実装できちゃうっていうこと。今までは「着信機能」を持てないがためにキャリアでしか実装ができなかったものも自分たちで実装できるようになる。要するに「お前らはちゃんとデータを流しさえしてりゃいいんだよ」とキャリア各社に申しておるわけですよ、Appleは。

はい。これだけしか引用しません。ぜひ全文読んでください。

次は、米国の CNET から。

http://news.cnet.com/8301-17939_109-9964040-2.html?hhTest=1
For the better part of a year, users with jailbroken iPhones have been enjoying apps that run the traditional way (in the background), even when the device is in sleep mode. Jailbroken apps like Mobile Chat and Intelliborn's Intelliscreen (hands-on) run quietly, pulling in data every few minutes and popping up with a message the way Apple's own apps behave. The problem is that this model doesn't scale.

iPhone は(jailbreak することで)従来型の(バックグラウンドプロセスによるプル型の)仕組みを実装することもできる。ただし、この仕組みはスケールをしない。という指摘。携帯デバイスという特性上、複数のクライアントアプリケーションがバックグラウンドプロセスで動作し続けるというモデルは非効率であり、その解として Push Notification Service が出てきている。と解説している。

This new tunnel for data is a veritable gold mine that's not just metrics--it's attached to user IDs and billing information too.

さらに、この Push Notification Service という新しいユーザー接点(データをユーザーへ届けるパイプ)は、ユーザー ID でユーザーを個別に識別可能であり、決済機能とも結び付いている。

個別の端末について IP を握っており、それがユーザー ID と過去の様々な通信活動の履歴と結び付いているという状況を思い浮かべると、Apple の優位性がはっきりと見えてくる。そして、意外にもそれは DoCoMo が握っていた優位性とも似ている部分がある。DoCoMo は独裁者としては優しかったのかもしれない。Apple はそれほど甘い顔を続けないだろう。

国内の情報に戻って、WWDC2008 の基調講演を丁寧にまとめた記事へ。上記を踏まえて読み返すと、その構成や文句についていろいろ考えさせられるものがある。(わざわざ検索して読み返さんでも、すべて WWDC2008 で言われてるじゃん!自分どれだけ鈍いんだ!的なものも含めて。)

http://plusd.itmedia.co.jp/pcuser/articles/0806/13/news039.html

たとえば、この辺は見える景色が違ってくるのではないだろうか。

3番目は、looptのSam Altman氏は、iPhoneのCore Location APIを使って、自分の周囲にいる友達を表示してくれるアプリケーションを紹介。利用者は自分の居場所についてコメントを残したり、友達にメッセージを残したりできるという。

Altman氏は「これまでは終わってから、実は友達が近くのレストランにいたということが分かったりした」「looptを使えば2度とさびしく一人で食事をすることはなくなる」と語った。このソフトはApp Storeにて無料で配布される。

で、なんだかんだでこうして見てくると、Apple は最近の Web の流れとして明らかに見えていた「テキストベースじゃない Web の世界」で勝とうとしているのだということに気付く。iPhone が提示しているアプリケーションとそのインフラとして働くデータとサービスの集合があり、Web と呼ばれたものはその基盤を担っていくという未来を Apple は描いているし、iTMS から着々と実現に向けて駒を進めている。(別にこれは新しい話でもなく、Adobe も MS もそれに向けた手を打っていた。ただ、その概念がソフトウェアとその開発環境という枠組みを出なかっただけだ。)

最後にこれは Apple によるロックインだ!という当然挙がるであろう声も紹介しておく。

http://skypejournal.com/blog/2008/06/3g_iphone_misses_continuity_of.html

この記事の中では、バックグラウンドプロセスを採用せず、Push Notification Service を採用したことによる問題をいくつか提起している。一番気になる点はやはり必ず Apple を介さないといけない仕組みになっている点だろう。それを利用して Apple の一人勝ちモデルとしていくのか、それともそこを共存共栄の仕組みへと進めていくのか。

この Apple が Push Notification Service の根っこをがっつり握っているよ、という話で思い出すのは、fladdict さんの「バイパス」の話。まさにバイパス以外の何物でもないものを出してきたという印象だ。

この機会に fladdict さんの一連の Apple 関連エントリも読まれることをおすすめする。

それにしても、なんだか、こういう内容でブログを書くのはとてもひさしぶりな気がするな。

  

ゆの in Ruby

by tanabe on July 13, 2008

元ネタは知らないんだけど、sumim さんのところで読んでおもしろかったので Ruby の別解。

#!ruby -Ku
X = []
def method_missing name, *args
  puts "ひだまりスケッチ×365 " + args.to_s if name == :<
end
X / _ / X < :来週も見てくださいね!

method_missing 万能すぎちゃってあまりおもしろくないな。