Last Smile

U隊長が購入したので、あまりマジメに聴いた事がなかったのだけど、、、 Last Smileが最近妙に気に入っておりますヨ。

ProductName Early Times
LOVE PSYCHEDELICO
ビクターエンタテインメント / ¥ 3,045 (2005-02-09)


フェスで演ったら感極まるな。

Mind Hacks読了

予約して買ったのに、やっと読み終わった。

ProductName Mind Hacks―実験で知る脳と心のシステム
トム スタッフォード,マット ウェッブ
オライリージャパン / ¥ 2,940 ()
通常24時間以内に発送

注意の章と、推論の章と記憶の章が面白かった。特に推論に関してはいくつかはぁーなるほどと思える記述が。

  1. 論理力を鍛えるのは後天的
  2. 記憶定着はランダムにやったほうが効率が良い
  3. イメトレは十分効果的

1は最近読んだ勝間和代さんの本で論理力を鍛えるってのがあったのでつながった。

2はiKnowやってるとつながる。でもiKnowの場合一回のトレーニングの中ではある程度パターンがあるよね。あと画像とワードを結びつけてるってのもなるほどなかんじ。ディクテーションで画像が浮かんでくる単語が結構あるし。

というわけで、うまいこと、自分をハックしていってるなぁと思った。

3はworkとは全然関係なくて今年はボードいくぞと。イメトレ重要。今年は540ぐらいはまわしておきたいところ。でも去年一回もいってないから、こじゃれたB1でもいいかなぁと。

B1はイメージでまわりますよな。フワッと浮いてモキュッとまわってスルンとちゃくると。

仕事も頑張りつつ、スコップかついでヤマボクもいく。

Web::Scraperではてブスクレイピング

自分のブログをブックマークしたひとのはてダをLDRで購読する事が多いので、scrapeしてURLを表示させてみる

use URI;
use Web::Scraper;
use List::MoreUtils qw/uniq/;

my $uri = URI->new('http://b.hatena.ne.jp/bookmarklist?url=http://blog.kzfmix.com');

my $scraper = scraper {
  process 'dt.bookmarker a',
    'users[]'=> '@href';
};

my $res = $scraper->scrape($uri);

print join "\n", map { s/b.hatena/d.hatena/;$_} uniq(@{$res->{users}});

あとはこの結果をGmailに送ればよいような。

Maybeお仕事モナド

(成功するかもしれない)失敗するお仕事をつなげてより大きい(成功するかもしれない)失敗するお仕事を実行するみたいなメイビーモナド風味な仕事スタイルのヒトが割と多いことに最近気がついた。

その、失敗という成果を自分にフィードバックして次の仕事計画に生かす気などさらさらない仕事スタイルは僕にはまるっきしあわんなぁなどと思った。

あと、そういうメイビーモナド風味の人間をまとめてつくったメイビーモナド風味なプロジェクトに投入されるのもやだなー。

それって結局、淡々とタスクをこなすという単なる流れ作業でしょ?

って言いたくなるぜ。めいびー

っていう夢をみたって、今度三歳になる娘が言ってました。

Imagerでlomo風に

lomo風にしてみたくなった。

sample

NK705で撮ったサンプルをlomo風味に。

sample_lomo

コード

use Imager;

my $source = shift;
my $lsat = 0.0;
my $usat = 0.2;
my $contrast = 1.5;
my $scale = 1.5;

my $img = Imager->new();

$img->read(file => $source);

my ($halfwidth, $halfheight)  = ($img->getwidth/2, $img->getheight/2);
my ($endx, $endy);

if($img->getwidth > $img->getheight){
  $endx = $img->getwidth;
  $endy = $halfheight;
}
else {
  $endx = $halfwidth;
  $endy = $img->getheight;
}

# contrast & sat
$img->filter(type=>"contrast", intensity=>$contrast);
$img->filter(type=>"autolevels", lsat=>$lsat, usat=>$usat);

# fountain
my $overexpo = $img->copy;
$overexpo->filter(type     => "fountain",
        ftype    => 'radial',
        channels => 2,
        xa       => $halfwidth,
        ya       => $halfheight,
        xb       => $endx,
        yb       => $endy);

my $vignette = $overexpo->scale(
                scalefactor=>$scale
                   )->crop(
                       left=>($scale-1)*$halfwidth,
                       top=>($scale-1)*$halfheight,
                       width=>$img->getwidth,
                       height=>$img->getheight
                      );

$img->compose(src=>$nradial,tx=>0,ty=>0,opacity=>0.6,combine=>"mult");
$img->compose(src=>$overexpo,tx=>0,ty=>0,opacity=>0.4,combine=>"subtract");


$img->write(file => "lomonized.png");

こんな感じのレイヤーを重ねたイメージ。

sample_lomo

GIMP Lomo Pluginのソースを見ながらつくったのだけど、Imagerのアルファチャンネルの使い方がよくわからなかったのでちょっとさぼってる。そのせいで白のあたりが飛んでしまうのが気に入らない。

Chart::Clicker

Chart::Clickerを試してみた

use Chart::Clicker;
use Chart::Clicker::Data::Series;
use Chart::Clicker::Data::DataSet;

my $cc = Chart::Clicker->new;

my $series = Chart::Clicker::Data::Series->new(
     keys    => [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ],
     values  => [ 42, 25, 86, 23, 2, 19, 103, 12, 54, 9 ],
                          );

my $series2 = Chart::Clicker::Data::Series->new(
     keys    => [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ],
     values  => [ 67, 15, 6, 90, 11, 45, 83, 11, 9, 101 ],
                           );

my $ds = Chart::Clicker::Data::DataSet->new(series => [ $series, $series2 ]);

$cc->add_to_datasets($ds);

$cc->draw;
$cc->write('foo.png')

Cairoベースなので結構きれい。

sample chart

最近はグラフはもっぱらmatplotlibなんですが、使い分けられればいいかもしれない。

macbookでImagerを使う

Imagerでjpgをサポートさせるためにここのdmgを入れる必要があった気がする。

よね?

use Imager;

my $read_image = Imager->new;

my $image_source = "20080901152.jpg";
$read_image->read(file=>$image_source)
  or die "Cannot load $image_source: ", $read_image->errstr;

my $scaled_image = $read_image->scaleX(pixels=>100)->scaleY(pixels=>100);

$read_image->compose(src=>$scaled_image,
                   tx=>250,       ty=>10);

$read_image->write(file=>'test.jpg')
  or die 'Cannot save test.jpg: ', $read_image->errstr;

yuki

composeとかblendもできるのでやりたい事はできそう。

日本酒テクノとか日本酒アシッドジャズ

日本酒でレゲエというイベントがあるのだから

日本酒でテクノとか日本酒でアシッドジャズなイベントがあっても良いと思う。

なんといってもリッチーも日本酒好きみたいだしな。

GimpのScript-Fu

Script-Fuコンソールを起動するとScheme処理系が立ち上がる

tinyscheme

なにか書いてみたくなりますな。

プログラミングGauche読了

やっと読み終わった。

ProductName プログラミングGauche
Kahuaプロジェクト
オライリージャパン / ¥ 3,360 ()
通常24時間以内に発送

19章の継続のところのcall/cc、コルーチンの話と、26章の自前で簡易HTTPサーバーを作るところが面白かった。

また、(SICPと違って)文字列処理とかモジュールの話などの実用性に重きをおいた部分がよくまとまってperlのように使える気にさせられる。

perlからruby,pythonに移ったって話は聞くけど、perl,ruby,pythonからgaucheに移ったっていうヒトはいるんだろうか?