Info

Archive for

Google App Engine の ImageAPIを使うためにはPython Imaging Library が必要でした。Windows環境では一発でインストールできましたが、Mac OS X ではどうもうまく行ってなかったので、メモしときます。

Python Imaging Library ソースをダウンロード
http://www.pythonware.com/products/pil/ からPython Imaging Library 1.1.6 Source Kit をダウンロードして適当な場所に保存する。

解凍してから以下のコマンドでインストール

$ cd Imaging-1.1.6
$ sudo python setup.py install

しかしコンソール画面に JPEG support not available が表示された場合は、libjpegをOS Xにインストールする必要があります。http://www.ijg.org/files/jpegsrc.v6b.tar.gz ダウンロードして解凍します。

$ cd jpeg-6b
$ ./configure
$ make
$ make install-lib

完了したら、もう一回PILをインストールすればOK!


昨日、横浜で行われたGoogle Developer Day 2008に行って来ました。先輩から誘われたのですが、行ってみて本当によかったと思いました。

朝8時に起きて名刺と入場券の準備。横須賀線で横浜へ、みなとみらいに着いたのが9時40分。先輩と待ち合わせしてパシフィコ横浜へ。入り口のところにあるでっかいGoogleロゴを見た瞬間、「しまった!カメラ持ってくるのを忘れた!」。こんなイベント参加するのが初めだったもんで…(来年は忘れない)

入場してメインホールに着いたら既に大勢の人が席に座ってました。意外と多くの人がノートPCを持ってました。空いてる席を見つけて間もなく開始されました。村上憲郎氏の挨拶から始まりました。今年のテーマは3つの「C」。

  1. Cloud
    クラウドをよりアクセスしやすく
  2. Connectivity
    コネクティビティをユビキタスに
  3. Client
    クライアントをよりパワフルに

Cloudには「Google App Engine」、Connectivityには「Android」、Clientには「Gears」と順に説明がありました。「Android」は今回はじめて聞きました。デモを見ると「iPhone」と似たようなUIを開発できるらしいです。Google Maps API for Flashデモでトラブルも発生しましたが、まあ~理解できる話ですよね。午後のセッションデモではちゃんと動いたようです。12時から各セッションが始まりました。人気のある「Google App Engine」のセッションはアメリカのエンジニアが講演しました。サンプルを作成してる途中で何回もコンパイルエラーが発生して笑いも取れました。自分の話だと「自分もまだ完璧ではないということですね」(ハハハ)。最後のセッションは「Googleソフトウェア エンジニアの日常」を聞きました。Googleほとんどのプロジェクトはボトムアップ的に始まったものだと言いました。何かというととりあえずアイディアがひらめいたら、20%プロジェクトとして開始する、認められたらメインプロジェクトとして発展させるということです。主に使ってる言語はC++、Java、Python、Javascript。ちょっとびっくりしたのは、ソースの共有でした。要するに秘密プロジェクトなどはないと、Googleの一員であればGoogleのすべてが見れるということですね。うらやましい~

充実は1日でした。来年も参加したいな。

今日気付いたんですが、PHPスクリプト開始タグと終了タグには注意するところがありました。

今まで、推奨されてるタグを使ってPHPコード書いてました。

<?php
… php script …
?>

今日パートナから書いたPHPコードを自分のマシンにいれて動かそうとしてたところで、どうもPHPとして認識できなくなり、通常のhtmlで表示されました。phpinfo(); を書いてみたところ環境には問題ないと、じゃ何か?よくよくみると、パートナさんが書いたスクリプトの開始、終了タグが自分と違ってました。

<?
… php script …
?>

何百個のファイルを修正するのは無理。そこで設定を変えて自分の環境も表示できるとように調べたところ http://php.holywar.net/manual/ja/configuration.directives.php を発見しました。

ページに書いてあるように、php.ini の 「short_open_tag」をOn にしてサーバーをリロードしたらうまくいきました。