2007年1月アーカイブ

2007年1月30日

ISBN-13・ASINのどちらのIDからでもAmazon Web Servicesからデータ取得を行う

<参考>
結城浩のはてな日記:Amazon Web Servicesを使ってISBN-13からASINを取得するPerlプログラム
http://d.hatena.ne.jp/hyuki/20070123#isbn

わくわくする情報をいつも提供してくださって感謝です。
会社の資産管理システムの書籍ISBNが13桁だったり10桁だったりしたので、
ISBN-13・ASINのどちらのIDからでもAmazonから情報を取得できるように少し変更してみました。

システムにAmazonからのデータ取得の機能を組み込んで、実行後にAmazonから
取得した書名・価格が更新されているのを確認して幸福感いっぱいです。
(書名がわりと不正確で価格も0円で登録されているデータが多かったので)

#!/usr/local/bin/perl

use strict;
use warnings;

use Encode;
use LWP::Simple;
use XML::Simple;
use URI;

my $aws_access_key_id = 'あなたのAWS Access Key Id';

# Set up ISBN.
my $itemId = '9784798111117'; # ISBN
# my $itemId = '4798111112'; #ASIN

$itemId =~ s/-//g;
#13桁未満はASINタイプ、13桁以上はISBNタイプとしてデータ取得
my $idType = '';
my $searchIndex = '';
if (length($itemId) < 13){
$idType = 'ASIN';
}
else{
$idType = 'ISBN';
$searchIndex = 'Books'
}

# Set up URL.
my $uri = URI->new('http://webservices.amazon.co.jp/onca/xml');
$uri->query_form(
Service => "AWSECommerceService",
AWSAccessKeyId => $aws_access_key_id,
Operation => "ItemLookup",
IdType => $idType,
ItemId => $itemId,
SearchIndex => $searchIndex,
ContentType => 'text/xml',
ResponseGroup => "Request,Medium",
Version => "2007-01-15",
);

# Retrieve result.
my $response_string = get($uri);
my $response_hashref = XMLin($response_string);

# Compose output string.
my $output = <<"EOD";
INPUT : $itemId
ASIN : $response_hashref->{Items}->{Item}->{ASIN}
Title : $response_hashref->{Items}->{Item}->{ItemAttributes}->{Title}
Author : $response_hashref->{Items}->{Item}->{ItemAttributes}->{Author}
Price : $response_hashref->{Items}->{Item}->{ItemAttributes}->{ListPrice}->{Amount}
EOD

# Print as string.
Encode::_utf8_off($output);
Encode::from_to($output, "utf8", "utf8");
print $output;

2007年1月19日

がけっぷち

◆徳島県動物愛護管理センター:崩落防止壁で収容された犬の譲渡日程について
http://ourtokushima.net/aigo/01news/newsr.php?s=0&b=2928&i=48


お願い
 今回,保護収容された犬が注目され譲渡希望が殺到している状況でありますが,当センターの飼い主がさがす会に参加できない方等につきましては,近隣の都道府県等におきましても収容され処分となる犬ねこが存在しており,各動物愛護センター等が実施する譲渡会を利用していただき,処分となる犬ねこを救っていただくとともに,適正な飼育者としてモラル向上に努めていただければ幸いと考えております。
 ご理解いただき「人と動物がともに暮らせる社会づくり」が達成されますようご協力お願いします。

真摯な文章が心に響きました。

役所を思い浮かべるとステレオタイプなイメージと経験からお役所仕事しかしない
感じがするのだけど、当然ながらいろんな人がいるのだろうね。


◆The Joel on Software Translation Project:エレガンス
http://local.joelonsoftware.com/mediawiki/index.php/%E3%82%A8%E3%83%AC%E3%82%AC%E3%83%B3%E3%82%B9


人々がソフトウェアをいじるのは、多くの場合、それで遊びたくてそうしているわけではない。彼らがソフトウェアを使うのはツールとしてであり、それで彼らがやりたいと思う別なことを実現するのだ。彼らがチャットプログラムを使うのは、それでウィットがあるところを見せて、チャットの相手に一緒に時を過ごしたいと思わせ、そうして最終的には抱くことが出来るチャンスを高め、そうして利己的な遺伝子が自己複製できるようにするためなのかもしれない。彼らがスプレッドシートを使うのは、それでもっと大きなアパートに移れるかどうかやりくりして、デートの相手が来たときにより良い印象を与えられるようにし、抱くことのできるチャンスを高め、これまた遺伝子を利するためなのかもしれない。彼らがボスのためのPowerPointを作るのは、それで昇進して、給料を増やしてより広いアパートを借りられるようにし、そうして相手を引き寄せ、抱けるチャンスを増やし(アイデアが掴めた?)、利己的な遺伝子が複製できるようにするためかもしれない。彼らが素晴しいゴートチーズのラビオーリのレシピをインターネットで探しているのは、・・・遺伝子だ。

たいへん受けました。
なるほど、遺伝子のせいだ!

2007年1月18日

朝の切れ味

昨晩2時間ほど知恵熱をだすほど考えても解決できなかった問題が、朝の5分であっさりと解決する。
この質の違いはなんなのだろう…。問題の切り分けの速さが圧倒的に違います。

私は朝の4時から12時までを定時にしたほうがいいかもね!

<昨晩>
CatalystのWebアプリでinputに入力した内容をhtmlで表示すると文字化けが発生する
→MySQLの問題に違いない
→DBICのon_connect_doに文字コードを指定したりと試行錯誤

<今朝>
→文字コードはどの層でもutf-8にしているからコードを変換しているロジックがあればそこがおかしい
→Charsets::JapaneseのPluginを外す
→解決

myapp.yml設定メモ


Model::DBIC:
connect_info:
- 'dbi:mysql:foo'
- 'root'
on_connect_do:
- "SET NAMES 'utf8'"
- "SET CHARACTER SET 'utf8'"

2007年1月16日

コリスOSの暖かい思い出

いままでWebアプリは、Windows環境でActivePerl+Apatch(AnHTTPd)で開発してきたのだけど、
使いたいPerlモジュールがインストールできなかったりで、環境作成に試行錯誤するのが大変に
なってきたので、coLinuxを使って、Windows上で動作するLinux環境での開発に移行中です。
LinuxのディストリビューションはDebianを選択しました。

仕事でも遊びでもOSはWindowsを使うのがほとんどだったのが、だんだんLinux系を使うことが
多くなってきて、覚える必要を感じていたのもあり、毎日が発見でよい感じです。


エディタはEmacsを使いつつ、今のところ使い慣れた秀丸で作業するほうが10倍ほど効率が
いいので、Sambaで共有をかけてWindows上から秀丸で編集して、Emacsは本を見ながら
ちょっとづつコマンドを覚えて、秀丸との作業効率の差を埋めていっているような感じ。


あとMVCの設計が独学の為、PerlフレームワークのCatalystで実際にWebアプリを作成してみて、
どういった設計でMVCを実現しているのかを勉強しています。
私の設計だとどうもMとCがあまり別れないXD
フレームワークは最初に掛かる学習コストに躊躇するけれど、慣れると効率良いですね。
その為にフレームワークはあるのだけど。


ちなみにcoLinux(コリナックス)の響きは、大好きなゲームのRoomania#203で主人公が
使っていたパソコンで動作していた架空上のOSの「コリスOS」を思い出して大変ほんわかします。

リスのマークがパッケージに描いてあって大変可愛いのです。
あとパソコンがらみのシナリオがこれまた泣けるのです。
コリスOSの壁紙をダウンロードして使っていたのだけど、PC切り替えの時に紛失してしまいました。

2007年1月 9日

踏み込める勇気

なにかを成そうとするには、手に入れるものだけでなく失うものを理解し、
それでも踏み込める勇気(狂気)だと、最近、とても強く思う。
たぶん、それはエンジニアでも学者でも剣士でも同じことではないか。

最上嗣生氏:最上の日々
http://homepage3.nifty.com/mogami/diary/d0701.html#04t1


ポアンカレ予想に決着をつけたとされるペレルマンは証明に7年かかったらしい。彼は髪も爪も伸びっぱなしの異様な風体で引きこもって研究していたらしい。

さて、これがまあ、臭く無い程度にお風呂に入ったり、洋服を洗濯したり、服に穴があいたら買いに行ったり、床屋に行ったりしたとしよう。われわれは、そういう人間らしい見た目を保つために平均して一日の起きている時間の一割くらいは使っているだろう。これで証明まで7年が8年にのびるだろう。

さらに大学に通勤して1時間、これで、8年が9年。教務などをこなしたり、会議に出たり、科研費などの書類を書いたりの様々な雑務をこなせば、使える時間のうち半分くらいは使うだろう。これで9年が18年。

さらに、本当にできるどうか分からない研究に専念できるのはかなりの度胸というより(上の意味で)狂気がある人間だけなのだ。で、残った時間の半分を安全パイの研究に使ったら、18年が36年である。おそらく一生証明できない。こうして普通の研究者の人生は終わるのである。

梅田望夫氏:人それぞれの個性について
http://d.hatena.ne.jp/umedamochio/20061217/p1


口には出さずとも同等以上にわかってる奴はつねに1000人はいる。それを論文にまとめたりブログに書いたりできるやつが100人ぐらいいて、本気でそれの実現に自分の人生を賭けるやつは1人


ツールバーに占拠されたIE

年末に実家に帰って妹から、インターネットする時のPC
が重いと相談を受けてびっくりしたこと。

1.2種類のウィルス対策ソフトのリアルタイム検索が実行されていた
2.IEにツールバーが5つ以上入っていた

ウィルス対策ソフトはPC購入時に付いていたのと、自分で買って
インストールしたのが両方動いていたようです。

IEのツールバーはGoogleバーとかGooバーとかEpsonバーとか、
何処のツールバーなの?なツールバーまで表示されており、
画面がかなり埋まって、面白いことになっていました。


使用していないソフトを全てアンインストールして、
テーマを標準からWindowsクラシックにしたり、
システムの復元機能を無効にしたところ結構軽くなって、
喜んでおられました。


最近の私の仕事ではライトユーザ(PCはメールとインターネットと年賀状作成だけの方)との
接点がめっきり減ってしまったので、こういうのは新鮮だと思いつつ、
Webアプリを作っている時には、使用されるエンドユーザにこういった人たちが
居ることを意識にしないといけないと思ったのでした。


あと、妹ぐらいのユーザだとウィルスを踏ませるのは簡単だと
思いました。なんでもかんでもダブルクリックするし。

2007年1月 6日

あけましておめでとうございます

本年もよろしくお願いします。

1/5が仕事始め
挨拶関係で半日、勉強会関係で半日過ごして、ほとんど仕事はしていません。

仕事から1週間以上離れていた為か、頭に霞が掛かっているような違和感を
感じながら1日を過ごしました。

冴えていない頭は記憶の時系列がおかしくなっているみたいで、自分の所属を
とっさに言うシチュエーションで、5年前の所属を間違えて発言していました。
やばいよあんた。


挨拶では全社員の前で、1人ずつ今年の抱負を発表していたのだけど、
皆さん話し方も内容もきっちりしていて、すごいなぁと感心して聞き入っていました。
笑わすオチのポイントとかをきっちりと練っている人もいて、レベルの高さにちょっと絶句。

大勢の前での発表をきっちりと発言できる人でも、仕事の打合せが苦手な方が
結構多くて、今までは話すこと自体が苦手なのかと思っていたのだけど、
単に経験不足なような気がします。

私はといえば、フリートークの方がぜんぜん駄目です。
アーマードコアのステージの攻略法についてなら3時間ぐらい話せるのにねXD

2007年1月 2日

初笑い

おもしろすぎるw
みんなもレッツトゥギャザーしようぜー

ルー語変換
http://e8y.net/labs/lou_trans/

安倍キャビネットゥ総理大臣リポーターインタヴュー
http://e8y.net/labs/lou_trans/?url=http%3A%2F%2Fwww.kantei.go.jp%2Fjp%2Fabespeech%2F2006%2F09%2F26press.html

【安倍総理】  まず、美しい国について申し上げますと、これは立候補したときのリポーターインタヴューでも申し上げたことでありますが、まず、その姿のワンは、美しいネイチュアやジャパンのカルチャアや歴史や、そしてトゥラディッションをインポータントゥにする国であると思います。

このサイトを変換!
http://e8y.net/labs/lou_trans/?url=http://yuki.silk.to/

2007年1月 1日

無限の住人

無限の住人 (1)

大掃除で出てきた無限人を最初から読み直しています。
万次が戦っている理由やら、凛を助けた最初の理由やら忘れていました。

凛「私--才能ないのかな……   昔は よく門下生の人達に木刀で 型を教わったし   父親が死んでからは道場で二年間毎日一人で剣振ってて   卍さんの斗いだってずっと見てたのに   何だか全然 思うようにいかないんだなァ

卍「ナメてんのか?お前
  ……いいか
  毎日毎日血ヘド吐くまで打ち合ってたってんならいざ知らず
  そんな 門下の三ン下どもに型教わったり
  平らな床の上で相手もねェのに剣振ったり
  それがどーしたってんだよ
  お座敷で強くなれるくらいなら苦労はしねえ

卍「昔--二年間で百人の侍を斬り殺した事がある
  それだけ実践をくぐってきた人間でもな
  逸刀流相手にゃ「やっと勝てる」ってのが正直なところだ
  道場での稽古ごとなんざ屁の足しにもなりゃしねェ

  才能がどーたらっつーのは
  やる事やった奴だけが云う台詞だよ笑わせんな


凛(……これって
  はげましてるつもりなのかな?ひょっとして;

何回読んでも面白いなぁ。
血反吐を吐くくらいに努力したことないなぁ…

お正月のはなし

■描いた夢と、ここにある今

1/1~1/3でメジャーのアニメが一挙再放送しているみたいです。
たまたま観たらかなり熱くて面白かった。オープニングの心絵からしてやばいほどに熱い。
子供のために全力を尽くすおとさんがかっこよすぎました。
優しく厳しいおかさんも素敵でした。

私もこの主人公と同じようによく思い上がるから、思い上がるのもいい加減にしろって
言ってくれる人に期待するだけじゃなくて、自分でも気をつけないとね!

NHKアニメワールド メジャー MAJOR
http://www3.nhk.or.jp/anime/major/

■やれば何でもできるもんですね

年賀でいただいた中に、以前に私がメインでしていたシステムを
メインSEで新機種の乗せ上げを担当しましたという内容と、
やれば何でもできるもんですねというコメントが。

担当したシステムは子供みたいなモノで可愛いし、
頑張っている同僚の近況も嬉しかったのでした。