トップ 最新 追記
RSS feed

ただのにっき


2006-03-01(水) [長年日記]

メールにメモがつけたい(4)

せっかくパッチをもらったのに、昨日は忙しくて試せなかった。先ほど導入。ばっちり直りました。感謝。もっとも、これだとせっかくテキストファイルになっているのに、エディタでそのままいじれなくなっちゃうね……まぁいいか。

ついでに、拡張機能(.xpi)がどんな風に作られているのかも(今ごろ)知った。ロジックはJavaScriptなんだねぇ。てっきりXMLを使った独自言語だと思いこんでたよ(←XULを何かひどいものだと信じていたらしい)。アプリケーションの組み込みスクリプトも、最近はJavaScriptがかなり手堅い位置を占めるようになってきたなぁ。(MacOSの)DashboardやYahoo! Widgetsもそうだよね、たしか。

Apple新製品

iPod Hi-Fi、ダセぇ。これがApple製品だなんて信じらんない。他社製品が間違って紛れ込んだんじゃないのか。

Mac miniは、相変わらずちょっと欲しい。やはり小さい機械には惹かれる。これでWindowsが動けばなぁ(←だいなし)。

おれだったらフォト蔵APIをこうする

せっかくユーザでもあるので(携帯のバックアップにしか使ってないけど)、β公開されたフォト蔵API(アナウンス)を使ってみることにした……んだけど、概要を読んで「ちょっと待て」と思った。

フォト蔵APIは全てRESTで提供されています。機能毎の個別のURLに対して必要なデータをPOSTします。結果は全てXMLで返ってきます。

えーと、GETを使うべきAPIでもPOSTですかね。それ、RESTじゃなくてただの「なんちゃってRPC」だし。……とは言ったものの、自分だってRESTを理解しているかどうか怪しいもんだ。恥をかくつもりで自説を開陳しちゃった方が楽になれそうなので、書いてしまおう。

RESTは、あるリソースをHTTPのメソッドを使って操作するという「作法」だ(カッコつけて「アーキテクチャ」と呼んだりする)。リソースは特定のURIで表現され、それに対してPOSTでデータの追加、GETで取得、PUTで置換、DELETEで削除を行う。

たとえば写真(photo)を操作するAPIをREST思想のもとで設計するなら、URIは「写真」そのものをイメージする「.../api/photo」にする(名詞であることが重要)。このURIに対して、

  • 写真データをPOSTすると写真が投稿され(IDが返る)
  • IDを指定してGETすると写真が取得でき
  • IDを指定した上で写真データをPUTするとIDの写真が置き換わり
  • IDを指定してDELETEすると削除される

という風にする。特にGETはクエリも含めて特定の写真を指し示すURIになるという点が重要。

アルバム操作も同様で、「.../api/album」というURIに、POSTで作成、GETで写真一覧、PUTで名前変更、DELETEで削除できるような設計をする。

現状のフォト蔵APIは、「.../api/photo_add」のようにURIがすでに機能を表現してしまっている(名詞でなく動詞になっている)。このURIは名前からして写真の追加にしか使えない。だからPOSTだけでも事足りてしまうのだが、これではもはやRESTは名乗れまい。

おまけにphoto_albumやuser_groupのような、本来GETで扱うべきAPIまでPOSTで操作する仕様。ちなみにこの2つのAPIを試しにGETで操作してみたら動いてしまった。そもそも内部でメソッドの区別をしていないようだ。

著名なWebサービスでも、PUTやDELETEまで駆使したフル装備なAPIを提供しているところは少ないので、こういう「俺REST」がはびこる一因になっているような気がする。REST陣営(って誰?)は、コンソーシアムでも作って作法を標準化した方がいいんじゃない? 総務省に「日本REST協会」を作って普及を促進してもらうとか。

Tags: rest photozou
本日のツッコミ(全9件) [ツッコミを入れる]

Before...

masato [ご意見まことにありがとうございます。 たださんのおっしゃることはもっともだと思います。 ただ、Flickrにしろde..]

TrackBack [http://sho.tdiary.net/20060302.html#p01 ただのにっき おれだったらフォト蔵A..]

たかはし [>それに対してPOSTでデータの追加、GETで取得、PUTで置換、DELETEで削除を行う。 違うと思います。RE..]

mizzy [具体的なメソッドに触れていないのは、それはRFCで定められていて自明だから触れていないだけではないのでしょうか? ..]

ただただし [mizzyさんに言いたいことをすべて言われてしまった……。なお、私のRESTに関する知識は、もっぱらyohei-yさ..]

mizzy [AtomPPの普及が正しいREST API普及につながるのではないかなー、と考えてたりします。そのために早く仕様固ま..]


2006-02-28(火) [長年日記]

wifehacks

ワイフハックとは(ichan::Weblog):

3. hack好きの旦那がハックと夫婦生活を両立させる

例: 細切れの時間を利用したロングテール型hack、温泉やプールでの着替え待ち、出先でのトイレ(化粧)待ちや週末の早起き、調理中などに素早く開発したり読書したりする。

「ロングテール型hack」という表現は2.0っぽくてイイ!と思った。おれもそれを狙って、この冬はコタツにノートPCを持ち込む習慣にしているのだが、かみさんと会話をしながらとか、TVを見ながらhackをするのは至難の業。やっぱ集中できないとダメみたい。

つーかそもそも、こうしてコタツでPCに向かっているおれは今、一人なわけだが。かみさんはリビングから離れたデスクでmixiに夢中。

本日のツッコミ(全1件) [ツッコミを入れる]

TrackBack [http://itoshi.tv/d/?date=20060301#p02 ichan::Weblog _ [W..]


2006-02-27(月) [長年日記]

メールにメモがつけたい(3)

先日導入したMessageNotesだが、あの時書いたメモが、今日みてみると文字化けしている。ががーん。しかも、ファイルを見ても文字コードがなんだかよくわからない。nkfで識別させようにもダメ。w3mに読ませるとSJISだと言うけど嘘だし。化けてるし。←被害にあったのは1通だけなので、ダンプして調べようという気にまではならない

うーむ、これでは使い物にならないではないか。英語で書けってか? メモ本文はWikiに書いて、URLだけ貼っておくか(というのも無茶な気がする)。

RailsによるアジャイルWebアプリケーション開発(前田 修吾)

久美堂で買えた。やっぱ神奈川の田舎じゃダメだぁ、大都会・町田に出ねぇと。久美堂は専門書系のフロアがあるし、レジにはメガネっ娘を配置するという、わかってる本屋であるよ。

あとはこのブ厚いのをいつ読むか、だな……。1年前にチャレンジしてから放置だったし。そもそもフレームワークがキライという問題が(笑)。

Tags: book

エンド・ゲーム 常野物語 (常野物語)(恩田 陸)

恩田陸月間、これにて終了。

蒲公英草紙 常野物語 (常野物語)(恩田 陸)』よりはだいぶ面白かった。常野の人々が混乱した状況がよくあらわされているし、結末もよかった。

でもなぁ、やっぱりこのシリーズは『4087472426』が一番面白いかなぁ。第一作が最高というのは、シリーズ物の宿命か。

Tags: book
本日のツッコミ(全6件) [ツッコミを入れる]

tamo [なんだか軽く escape したら日本語も保存されているみたいです。 (Thunderbird-1.0.7 / EU..]

walrus [一人qwikWebをメール・リーダとして立ち上げて、そこにメモを追加していくというのはどうでしょう。 ...もしかし..]

ただただし [>tamo わお! すばらしい! 明日にでも試してみます。ありがとう! >walrus 一瞬いい考えに思えたけど、..]

shugo [お買上げありがとうございます:) ちなみに私はまだ本屋で発見できていません。 さすがに島根に一冊も入らないというこ..]

ただただし [えっ。あたしゃてっきり、島根に回しすぎてこっちの流通量が足りてないのかと(笑)]

yoosee [あらら、うちだと特に文字化けは発生してないですけどね。 でもやはり1メール&メモで1ファイルの方が安心だよなぁ。そう..]


トップ 最新 追記
RSS feed