予測から実測へ

昨晩、ジコリータで、追突された。ちなみに僕の車はべコリータ。

相手が任意保険の番号が今はわからん(家にかえらないと)とか、携帯持ってないから電話できんとか、最初はなんかちょっとなぁっていう対応だったので、なんだかなぁと思ったんだけど、無事に警察イベントまで終了。

で、某クルマーラボ務めらしいので、もらった名前でググってみたら 「追突時のケガの予測とかの検討」をしているヒトらしい。

やっぱリアルで試(以下略)のかなぁ。

とか思った。

ケガはしてないよー。鞭打ちでもないよー、ただ毎日のデスクワークで腰がちょっと痛いだけだよー。

もっとえいご漬け

単語ドリル

会話聴き取り

もっと英語漬けのほうがおもろい。

Catalyst::Controller::FormBuilder引き続き

引き続きCatalyst::Controller::FormBuilderをいじってるヨ。ってかCGI::FormBuilder読んだ。

で、昨日はこんな感じで書いてたんだけど

my $data = {
            title            => $form->field('title'),
            content          => $form->field('content'),
            tag_text         => $form->field('tag_text'),
            pubdate         => $dt
            };

my $e = $c->model('DBIC::Entries')->update_or_create($data);

でも、podみてたら$form->fieldってメソッド使えばハッシュのリファレンスが返ってくるので、

my $data = $form->field;
my $e = $c->model('DBIC::Entries')->update_or_create($data);

でいいらしい。早速書き直した。フォームのパラメータとかバリデーションとかよきに計らってくれる上に、DBICとの連携も楽だ。

それがDWIMmery?

CGI::FormBuilder - Easily generate and process stateful forms - search.cpan.org

The goal of CGI::FormBuilder (FormBuilder) is to provide an easy way for you to generate and process entire CGI form-based applications. Its main features are:

  • Field Abstraction
  • DWIMmery
  • Built-in Validation
  • Template Support

Back of Beyond

ProductName Back of Beyond
Nu Tone
Hospital / ?円 ( 2007-06-18 )


一曲目と最後の曲が良い。

全体的にちょっとNU:TONE少なめ、ホスピタル多目。リキッドすぎるのはあんま好みじゃないナァ。

とかいいつつ、LindstromとThe Cinematic Orchestraとunkleの新譜を予約してもうた。

Catalyst::Controller::FormBuilderいい感じ

HTML::Widgetだと細かいところに手を入れにくいいので、 Catalyst::Controller::FormBuilderに変えてみたらよさげ。

フォームの設定とかバリデートの情報はYAMLで。しかもデフォルトがTTSiteみたいな階層を取っているので管理しやすい。例えば/books/editに対応する設定ファイルはroot/forms/books/edit.fbと言った具合にfbっていう拡張子をつけておけばよい。

TTで使う場合には

[% FormBuilder.render %]

でよくて細かくいろいろいじりたい場合には

[% formbuilder.start -%]
...
[% END %]

で。

Ajaxデザインパターン

見渡すにはいい感じの本だった。

ProductName Ajaxデザインパターン ―ユーザビリティと開発効率の向上のために
Michael Mahemoff
オライリー・ジャパン / 5040円 ( 2007-05-15 )


Ajaxというよりは、ユーザビリティのデザインパターン的。それをAjaxで実装するためのヒントみたいな。

後半テストとかデバッグとかの話だけどここらへんはだれちゃった。

UI指向だったらflex2とかいうアプローチもあるけど。

JAZZTRONICA!!2

メタモが楽しみ

ProductName JAZZTRONICA!!2
JAZZTRONIK
GATE RECORDS / 2793円 ( 2006-08-09 )


Image::MagickからImagerへ

FC6のこんな構成で

  • httpd-2.2.4-2.fc6
  • mod_perl-2.0.2-6.1
  • mod_fcgid-2.1-1.fc6
  • Catalyst 5.7007
  • ImageMagick-perl-6.2.8.0-4.fc6
  • ImageMagick-6.2.8.0-4.fc6

CatalystからImage::Magickが動かない。Catalyst組み込みのサーバーだとOKなんだけど、mod_perl,fcgidでは動かない。

どうも、アップロードしたファイルが読めてないようで、

my $i = Imager->new;
$i->read(file => $upload->tempname);

のところでコケテル。あーselinuxの設定か?と思って見直したんだけど、全然違った。単順にアップロードするだけならできてるし、readできてないみたい。

もうちょっと追ってみたら、

Exception 420: no decode delegate for this image format

とあってどうもImage::Magickがファイルの形式判別できてないみたいな感じ。

うーん、全然わからんなぁと悩んでたら、use Imager; という記事がナイスなタイミングで。

ナイスすぎる。早速乗り換え。

っていうかちょっと書き直しただけですぐ動いた。

my $i = Imager->new;
$i->read(file => $photo_data->tempname);
my $w = $i->getwidth();
my $h = $i->getheight();
my ($width,$height,$top,$left);
if($w > $h){
$width = $h;
$height = $h;
$top = 0;
$left = int(($w - $h)/2);
}elsif($h > $w){
$width = $w;
$height = $w;
$top = int(($h - $w)/2);
$left = 0;
}

画像を正方形にして36pxのアイコンにするという処理なので、とりあえずちょっと書き直したら動いたけど、

use Imager

例えば scale() の項目を見ると、200x200に「収まるように」小さくするには、type => 'min'、縦横比を無視してそのサイズに引き伸ばしたい場合は type => 'nonprop' というオプションをつければいいことがわかります。

minっていうオプション付けれぼ綺麗にかけそう。

そういえば、ImagerとかImage::Magick,imlib2なんかのリサイズを比較したエントリあったなと、livedoorclip探した。タグつけしないと探しづらくてあかんなぁ。

支那そば家 毎度!

どうしてもにぼにぼが食べてみたいと言い続けて2ヶ月。やっと行く機会ができた。にぼにぼは夜限定なのでなかなかいけなかったのですよ。

早めに会社を切り上げて家族を拾ったら裏道走って毎度へ。工事のおかげでちょっと入りやすくなった駐車場に車をとめたら、歩いて数分毎度の暖簾をくぐる。

子供用椅子も完備なので子供連れでも安心。

U隊長がにぼにぼを頼むと主張するので、ぼくはつけ麺を。

ちょっとわけてもらったけど、にぼにぼ。煮干の出汁が香る逸品。うまい、旨すぎですよ。たまらん。

そして僕のつけ麺。

つけ鴨食べてるみたいな。ざる蕎麦のようにつるつると。

正直甲乙付けがたい。

支那そば家 毎度!

次はつけ麺潮味で。

WikiにXML-RPC

FSWikiにXML-RPCのインターフェースつけた。

Gamessとかの科学計算にはありがちな、長々とした実行結果をパースして、Wikiに突っ込むとかするとよいかもと思ってる。解釈を書き込めるし、編集も簡単だし、pdfに出力できるし。

moinmoinにはデフォルトでついてた。