February 5, 2009

google_tasks.user.js

Google の ToDo リストを表示する greasemonkey スクリプトを書きました。
これはかなり使えると思いますよ!

ソース

http://jugyo.org/gm/google_tasks.user.js

スクリーンショット

画面右下に出てくる灰色のところにマウスカーソルをのせると…

picture-5

じゃーん!

picture-4

Google の ToDo リストが出てきます。

どういうふうに実装しているかというと、単に iframehttp://mail.google.com/tasks/ig を表示してるだけです。

参考:
GmailのToDoリストをFirefoxのサイドバーへ表示 : ライフハッカー[日本版]

December 19, 2008

Google App Engine で Google GData API を使う (2)

前回の続きです。

Picasa での認証

えーっと、やりたいことは Picasa から private な画像の情報を取ってくることです。
そのためには Picasa 側で認証処理を通す必要があります。
具体的に何をやるかというと、private な情報にアクセスするための「トークン」を Picasa に発行してもらいます。
そのためには実際ちょっとややこしい手順を踏む必要があります。

扱うトークンには「AuthSub Token」と「AuthSub Session Token」の2種類があります。
「AuthSub Token」は一度しか使えないトークンです。
トークンが一度しか使えないとアプリケーション的にはちょっと不便なので、何度でも使えるトークンが欲しいところです。
そこで「AuthSub Session Token」です。
「AuthSub Session Token」を使えば何度でもデータを取ってこれます。

処理の流れとしては、まず「AuthSub Token」を Picasa に発行してもらい、それを使って「AuthSub Session Token」を取得する、というふうになります。
わかりやすいように絵にしてみました。

authsub_token_1.png
まず「AuthSub Token」を発行してもらいます。
Picasa 側でアクセス許可の操作を行った後、URL にトークンを含んだ状態でリダイレクトされてアプリ側に帰ってきます。

authsub_token_1.1.png
「AuthSub Token」をゲットしました。

authsub_token_2.png
取得した「AuthSub Token」を使って今度は「AuthSub Session Token」を発行してもらいます。

authsub_token_2.1.png
「AuthSub Session Token」をゲットしました。
このトークンはデータベースに保存するなどして大事に取っておきます。

authsub_token_3.png
「AuthSub Session Token」を使えば private な画像の情報も取得できます。

意外と面倒くさいですが、理解してしまえば簡単です。
あとは API を使ってどんなアプリケーションを作るか考えるだけです。

サンプルコード

以下にサンプルコードを置いたので、よかったら参考にしてください。

http://github.com/jugyo/using-picasa-web-albums-data-api

Google App Engine で動くように実装されています。

関連記事

Google App Engine で Google GData API を使う (1)

December 15, 2008

Google App Engine で Google GData API を使う (1)

GAE Hack-a-thon に行ってきました

GAE Hack-a-thon というのに行ってきました。
Google App Engine で何か作るハッカソンです。
渋谷にあるグーグルのオフィスで開催されました。
昼食のお弁当がおいしかったです。
ありがとうございました。

さて、僕はマッシュアップなアプリを Google App Engine を使って作ることに挑戦しました(マッシュアップっていう単語、最近あまり聞かなくなりましたね。)。
4人のチームを組んで取り組みました。
みんなでドキュメントを探したりサンプルコードを解読したりしながら作業したんですけど、なかなか楽しかったです。
チームを組んで何かを作るって、仕事以外ではあんまりやらないので新鮮でした。

gdata-python-client

具体的に何をやったかというと、Google Data API というものを使って Picasa から画像の情報を取ってくるプログラムを作りました。

gdata-python-client という便利なライブラリがあったのでこれを活用しました。
python で Google Data API を扱うためのライブラリです。

以下のページからダウンロードできます。
gdata-python-client

Picasa Web Albums Data API

Picasa からデータを取ってくるには、Google Data API に含まれる Picasa Web Albums Data API という API を使います。
gdata-python-client ライブラリに含まれている PhotoService クラスを使ってこの API にアクセスすることができます。
Picasa からちゃんと画像の情報が取ってこれるか以下のコードで確認してみました。

http://gist.github.com/35853

このコードを実行すると、<ユーザーID> に指定したユーザーのアルバムとそれに含まれる画像の情報が全て取得できます。

当然ながらこのプログラムでは private なアルバムのデータは取ってこれません。
private なデータを取得するためには、Picasa 側でアクセスを許可してやる必要があります。
その認証に関わる部分を Google App Engine 上で実装したんですけど、これがなかなか難しくて(というか全然理解していなくて)、一筋縄ではいきませんでした。

続く…

December 4, 2008

読書: プラネット・グーグル

プラネット・グーグル プラネット・グーグル
Randall Stross 吉田 晋治

日本放送出版協会 2008-09
売り上げランキング : 9664

Amazonで詳しく見る by G-Tools

面白かった。
最近の話題まで、よくまとまってる印象。
だいたいがなんとなく知ってたような内容だけど、通して読むとより鮮明に見えてくる感じがする。
Google について知った気になれる本。

eee_google_reader.user.js


追記 1

今 Google Reader 見てみたら新しいデザインになってて、せっかく作ったスクリプトが無用の長物に。。。
ショボーン。


追記 2

Google Reader の新しいデザインに対応させました。

eee_google_reader_new

ソースコードを見てもらえれば分かると思いますが、実質以下の CSS を追加しているだけです。

#main {z-index: 300; top: 0px; background-color: white;}

eeePC で Google Reader を見やすくするための Greasemonkey スクリプトを書きました(別に eeePC に限らないんだけど)。
単に不要なエレメントを見えなくしてるだけです。
Stylish でやろうかと思ったんですけど、Greasemonkey のほうが導入が(僕的に)楽なので Greasemonkey で書きました。

適用すると以下のような感じに画面いっぱいになります。

google_reader_mini

ソース

以下のリンクをクリックしてインストールしてください。

eee_google_reader.user.js

June 20, 2008

読書: Google誕生 —ガレージで生まれたサーチ・モンスター

Google誕生 —ガレージで生まれたサーチ・モンスター Google誕生 —ガレージで生まれたサーチ・モンスター
田村 理香

イースト・プレス 2006-05-31
売り上げランキング : 13325

Amazonで詳しく見る by G-Tools

やっと読み終わった。
グーグルの歴史について非常に詳細に書いてあって面白く読めた。
もうだいぶ内容忘れたけど。

ラリー・ペイジ曰く、

科学やテクノロジーには梃子として利用できるものがほんとうにたくさんあるんだ。ところが、ほとんどの人がそのことに気づいてない。新しいテクノロジーを使ってできることが、実はとてもたくさんある。ぼくたちはその一例なんだよ

だって。

いやー、グーグルの成し遂げた事ってほんと、すごいっすよ。

June 12, 2008

Google Developer Day 2008 Japan に行ってきました

img_002

Google Developer Day 2008 Japan に行ってきましたー。
いやー、すごいっすね、Google。

Android のデモをやってたけど、動きがちょっともっさりしてる感じだった。
プロトタイプだからかな。
まあ、でも実際見ると「おー!」ってなるよね。
Google Maps のストリートビューのデモはまあおもしろかった。
参考: 動画:Google、Android携帯の最新ビルドを披露 – Engadget Japanese
でも、こんな機能使わないだろうなぁと思った。
だって自分自身がクルクル回ったりしないといけないなんて、ちょっと変というか疲れる。
Android という技術自体はすごくおもしろいと思うんだけど、アプリケーションの開発について考えると、デバイスの種類とかプラットフォームのバージョンによる差異とかが出てきたりすると互換性を維持するのが大変になりそうだなぁ、となんとなく思った。

Google App Engine はやっぱりすごいと思った。
スピーカーの人が実際にその場で簡単なアプリケーションを作るデモをやってたけど、ものの数分でデプロイまでできてましたからね。
Google App Engine は現状、もう誰でも登録してすぐに使い始められるようになってるみたいだけど、日本においてはまだ登録できないみたい。
というのも、登録する際に携帯電話にSMSメールを送信して認証コードを取得するという手順を踏む必要があるんだけど、日本の携帯電話だとそこで失敗するんですね。
早急に解決するとか Google の人は言ってたけど。

OpenSocial の話は、内容は理解できたんだけど「で、それで何が嬉しいの?」みたいな感想しか思い浮かばなかった。
目的がいまいちよくわからない。
SNS なんかから情報を引っこ抜くための API の仕様を決めましたよ、という話なんだろうけど、それの活用の仕方が全然思いつかないんだよなぁ。

AJAX API の話はそんなにインパクトを感じなかった。
ていうか、寝てた。。。
そのセッションの時はもう眠くて眠くて。

Google Gears の話はわかりやすくて良かった。
デモもわかりやすくてよかった。
ただ、Firefox とか IE とかにプラグインをインストールしないといけないというのがネックになるだろうな、と思った。
というか、まあ、未来を見越してブラウザには絶対こういう機能は必要でしょ、みたいなのを先取りして実装していってるといった感じで、そういう姿勢ってすばらしいなぁ、とは思った。
Gears を使ってクライアントマシンのデスクトップにショートカットを作成したり、何かの通知を画面の右下に出したり、複数ファイルをアップロードしたり、といったことがいずれはできるようになるらしい。
参考: グーグル、「Gears」のワーキングプロトタイプを実演:ニュース – CNET Japan

しかし Web はどんどん複雑になっていくなぁ。