Archive for 7月, 2008

31
2008

aTunesがようやく使い物になるplayerになりました。
http://x-jukebox.com/atunes
具体的には連続再生に対応しました。playerにYouTubeのflashを貼り付けていただけなので1動画の再生が終わるとそのまま放置。1曲再生で終わるplayerでは作業用なんかには使えないわけで・・・でもeventとれないから仕方ないじゃん。。。と思っていました。
javascriptでハンドリングできないか調べようとしたらあっさり見つかりました。
http://code.google.com/intl/ja/apis/youtube/js_api_reference.html#Events
別にhackとかなんでもなく普通にJavascript APIが公開されていました。これを使ってplayerの再生が終了したら次の動画のplayerをajaxでとってきてreplaceするというコードを書きました。内部でリスト管理するようにしたのでバグとかがあるかもしれません。
連続再生できると今度は音楽ビデオじゃないものはスキップする機能が欲しくなりました。自前のdbにMusicVideoのフラグを用意しようかと思ったりしています。

29
2008

AppleのiPhone開発者セミナー行ってきました。
昨日、MacBook持って帰ってくるのを忘れたので今日は早起きして会社によらないといけないなぁと思っていたのに、相変わらず目覚まし時計はセットしないで、でも早く起きれたけどぼーとジャンプ読んでたら微妙な時間になったので直行しました。
で、ふつーにVAIO開いて聞いてきました。
セミナーの内容は守秘義務があるのでWebに公開できません。でもiPhone Developer ProgramをiDPと略すくらいは言っても良いだろう。タイプするの面倒だったのでこれからiDPと書くことにします。

27
2008

自宅サーバのsymfonyを1.0から1.1に更新しました。
x-jukebox(atunes/mradio)
walkmanlog
のプロジェクトも更新しました。
普通はバージョンをあげるメリットを見極めてあげるもんなのですが、勉強がてらつくってるWebサービスなのでなるだけ新しいものを使おうかと思った次第です。なんとなく軽くなんないかなーという淡い期待はあります。
1.0と1.1の互換性のない部分の更新のためプロジェクトのアップデートに数分かかったのですが、symfony(PHPの1ライブラリ)のアップデートでapacheを止めるわけにもいかないので一旦メンテナンス画面にした上で更新しました。
symfonyプロジェクトのwebフォルダの下に
maintenance.htaccess
maintenance.html
の二つを用意。
maintenance.htaccessはこんなん。

Options +FollowSymLinks +ExecCGI
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)$ maintenance.html [QSA,L]
</IfModule>

maintenance.htmlはメンテナンスです。を表示するただのhtml。
でsymfonyプロジェクトのwebディレクトリで下記コマンドを実行し、.htaccessを置き換え

mv .htaccess symfony.htaccess; mv maintenance.htaccess .htaccess

アップデートが終わったら

mv .htaccess maintenance.htaccess; mv symfony.htaccess .htaccess; cd ..; symfony cc;

で元に戻す。

22
2008

symfony 1.1にupgradeするとsymfony 1.0.xでつくったプロジェクトはそのままでは動かなくなるらしい。
http://blog.symfony.jp/2008/07/01/pear-upgrade-1-0-17/
じゃぁ、動くようにするにはどうすんの?
http://trac.symfony-project.org/browser/branches/1.1/UPGRADE
に書いてあった。
1. プロジェクトディレクトリに移動する
2. symfonyファイルを下記コマンドで更新する

cp /path/to/symfony/lib/task/generator/skeleton/project/symfony symfony

3. ProjectConfiguration.class.phpファイルを下記コマンドで作成する

cp /path/to/symfony/lib/task/generator/skeleton/project/config/ProjectConfiguration.class.php config/ProjectConfiguration.class.php

config\ProjectConfiguration.class.phpの##SYMFONY_LIB_DIR##を/path/to/symfony/で置き換える
4. upgradeコマンドを叩く

./symfony project:upgrade1.1

apps/frontend/config/logging.yml
apps/frontend/config/i18n.yml
apps/frontend/config/config.php
config/config.php
消せとか言われるので消した。
web/frontend_dev.php
web/index.php
はコメントを有効に。って言われるので修正。
symfony ccして、動かすとエラー。
エラー1. Call to undefined function form_tag()

<?php use_helper('Form'); ?> 

を入れないといけないらしい。
エラー2. An internal URI must contain a module and an action
http://www.symfony-project.org/forum/index.php/m/55475/#msg_55475
1.1から必ずdefault_actionで省略できず、必ずactionを指定しないといけないらしい
あとで気がついたが日本語で説明してくれてる記事があった
http://www.thinkit.co.jp/article/71/2/
エラー1,エラー2についてはやむを得ぬ事情があったに違いない。本来では少しでもコードを書きたくないはずなのに、書くコードが増えるほうに倒れた件に関してどのような葛藤があったのか、作者達に聞いてみたい。
※/path/to/symfony/については、アップデート前のプロジェクトディレクトリの/config/config.phpにある$sf_symfony_lib_dirになると思われる。

いろいろ間違えたので7/23修正。

22
2008

Social Spring Graph(Google Social Graph API + SpringGraph)でパラメータ対応しました。
URL
- http://apps.makotokw.com/socialspringgraph/
パラメータ
- twitter: twitterのアカウント名
以上。
たとえばtwitterのmakoto_kwさんのグラフは
http://apps.makotokw.com/socialspringgraph/?twitter=makoto_kw
です。
自分のtwitterグラフの紹介に使ってみてもらえると幸いです。

22
2008

俺の3連休。。。。
PHPカンファレンス2008に行ってきました。京急蒲田は精神的に遠い。。。
とりあえずメモです。
http://wiki.hackathon.jp/pukiwiki/?%E3%82%BB%E3%83%9F%E3%83%8A%E3%83%BC
動画もそのうちあがると思うのですが、個人的には基調講演とパネルディスカッション(PHPの次に学ぶ言語は何か)だけとりあえず見ておけばよいと思います。
makoto_kw的、次に学ぶ言語は何か。
python/Objective-C 2.0や。
単にGoogle App Egine/iPhoneやりたいだけなんだけど。
何にせよやりたいことを元に使うものを決めるのが良いかと。

17
2008

はじめの一歩が久しぶりに面白い。
いや、別に最近面白くなかったと言いたいわけではなく。
宮田vsランディーボーイJrはどっちが勝つかわからない。普通に考えれば宮田。なんだろうが、ストーリー的には宮田が勝つよりもランディーボーイJrが勝ったほうがつながる。(そう見えるように作者に誘導されているのかもしれないが)
いずれにせよ、主役がどう勝つのかを楽しむよりも本当に勝つのか?というプレッシャーを感じれるのは久々な気がするぞ。

17
2008

Google Social GraphSpringGraphを使ってみました。
Social Spring Gprah: http://apps.makotokw.com/socialspringgraph/
SocialSpringGraph_200807170.jpg
FlexのSpringGraphを見たときにtwitterとかのSNSと連携させたら面白いだろーなーと思っていたのでやってみました。
twitterなら既にありそう。と思ったのですが意外と見つからず。おそらく60分に70回のAPI制限に引っかかるからなのかな・・・と思いました。twitterのdocumentみる限り1分に1callがベースになっているらしい。
Google Social Graphだと一日5万回制限になってます。(2008/07現在)

Use of the Social Graph API is subject to a query limit of 50,000 queries per user per day.

(http://code.google.com/apis/socialgraph/docs/api.html)
crossdomain.xml全開だったのでflashで作ってみました。flashの場合、クライアントからアクセスしていることになるので、この50000回制限ってクライアントIP単位になるのか、よくわかりません。
とりあえず、全部リンクくっつけると大変なことになるので、followしあってる同士のみをつないでいます。
右クリックでソースもみれるようにしているのでテキトーにみてください。

15
2008

ネムイ。月曜日から無駄に本気モード。
Movable Type Hackathon Vol.3で作成したMTmyloをさらに改善して、0.1.0としてリリースしました。
http://projects.makotokw.com/trac/arcadia/wiki/MovableType/MTmylo.ja
myloで写真付きブログを簡単に投稿するためのプラグインです。プラグインはiMTをベースにしておるため基本的に画面はiMTと同じです。細かい画面遷移は上記プロジェクトページを参照してください。
FirefoxでmyloのUserAgentで表示するの図。
mt-MTmyloHowToUse_0.10_04.jpg
(↑iMTにはない画像アップロード機能)
mt-MTmyloHowToUse_0.10_06.jpg
(↑アップロードすると本文にhtmlが追加されるのであとは文章を書くだけ)
実装としては、Movable Type 4では画像のアップロード時にiframeをoverlayさせて表示させているところ(myloだとまともに表示されない)を小さなiframeのwindowで表示し、アップロード、ファイルオプションの指定を簡略化して本文に貼り付けます。基本的にmyloでとった写真をアップロードする前提で簡略化しています。
まだiPhone 3Gはさわってないけれど、少なくともカメラ付き+キーボードがあることからiPod touchよりはmyloの方がブログを書くのに向いていると思います。
どうでも良いけどmyloでキャプチャ画像とれないのかしら?

14
2008

ADCに質問投げたのをよく見たら、asia.apple.com宛になってたのでふつーに日本の人から日本語で回答が来てもう大丈夫だからActivateしてください。と言われたのでActivateしました。
iphonedevprg_200807140.jpg
とりあえずDocumentでも読むかー