狐の王国


2007年02月01日(木) [過去の今日]

#1 場違いなGoogle

仕事用に入れてあるVMware上のWindowsXPがあるのだが、ふと気がつくとそのマシンのJ2SEのアップデートが出ていた。で、当ててみると以下の様な表示が。

Java Runtime Environmentと共に無料プログラムをインストール  Internet Explorer用Googleツールバー

えええええええええええええええ

なんでこんなところでGoogleツールバー?

これってGoogleがSunに広告料支払って載せてもらってるってことなのかなあ。しかし場違いな気がしてならないな。

(@103)

この記事のURI

#2 wikipediaコマンド

はこべにっき#の記事 でwikipediaを引くコマンドラインツールが紹介されていた。

が、UTF-8環境でしか動かないようなので、ちびっとhack。

#!/usr/bin/perl

use strict;
use warnings;
use utf8;

use WebService::SimpleAPI::Wikipedia;
use Encode;

my $encoding = $ENV{LANG} =~ /euc-?jp/i ? 'euc-jp' : 'utf-8';
binmode STDOUT, ":encoding($encoding)";

my ($keyword) = @ARGV;
$keyword = Encode::decode($encoding, $keyword);
$keyword = ucfirst $keyword; # Wikipediaではすべて一文字目は大文字

# SimpleAPIを使ってWikipediaから情報を取得
my $wiki = WebService::SimpleAPI::Wikipedia->new();
my $res = $wiki->api({ keyword => $keyword, search => 1 })->[0]
    or die qq{Entry "$keyword" is not found in Wikipedia.\n};

# 文字コードと改行の変換
my $title = $res->title();
my $body  = $res->body();
my $url   = $res->url();
$body =~ s{<br/>}{\n}gxms; # \n\nになってたので改行1個にしちゃった。

# 出力
print "*$title ($url)\n\n";
print $body;

これで引いてみると……

$ wikipedia デーモン・ヒル
*デーモン・ヒル (http://wikipedia.simpleapi.net/ja/76166/)

『デイモン・ヒル』より : 氏名 デイモン・ヒル
年 1992 - 1999
所属チーム ブラバム, ウイリアムズ,
アロウズ, ジョーダン・グランプリ ジョーダン
出走回数 115
タイトル 1(1996)
優勝回数 22
通算獲得ポイント 360
表彰台回数 42
ポールポジション 20
ファステストラップ 19
F1デビュー戦 1992年イギリスグランプリ イギリスGP
初勝利 1993年ハンガリーグランプリ ハンガリーGP
最終勝利 1998年ベルギーグランプリ ベルギーGP
最終戦 1999年日本グランプリ (4輪) 日本GP

大成功! すばら!!

(@149)

エントリーがなかったとき文字化けしてら:

STDERRの文字コード変換が設定されてないからか。

binmode STDERR, ":encoding($encoding)";

この1行を追加すればいいだけだな。

(@230)

出力部を変更:

w3mで見るのにURIをコピーするとき、上の方だとめんどいので、URIの出力を下に移動してみた。

printf("*%s\n\n%s\nURL: %s\n\n", $res->title(), $body, $res->url());

こんな感じ。

(@247)

この記事のURI

2007年02月02日(金) [過去の今日]

#1 鴨肉料理初体験

夕飯にパスタを茹でてるというのに、いきなり「鴨肉解凍しちゃったんだけどどうしよう。ステーキにしようかと思うんだけど」とか言わないでください。

というわけでしかたがないので鴨のレシピをぐぐりんぐ。 このへん とか そのへん 見てふむふむって感じ。

材料は、

んでもって、

さらに赤ワインソース。

こんだけだが、これが意外にうまい……。ソースだけ舐めるとくどい気もするが、適量を肉に付けると非常に相性がいい。驚きだ。

というわけで、慌ててしまったが鴨肉料理をひとつマスター。スキルアップ!!

(@548)

この記事のURI

2007年02月03日() [過去の今日]

#1 はてなメンテ

うう、いまブクマしようとしたらはてながメンテ……。ていうか仕事の資料とかブクマしたやつどうしよう!!

うーむ、2つのSBMをつかってどっちでクリップしてもどっちにも反映されるような方法はないかのう。clip proxy的というか、中間に入るサーバソフトが必要になるかなあ。

(@194)

この記事のURI

#2 怠け病に見える病気がいっぱいある件について

日テレアナウンサーの 大杉君枝さん(旧姓鈴木) がどうやら自殺されたらしい。実は密かにファンだっただけに、残念でしかたがない。

ニュース等によると 線維筋痛症 という病におかされてたとのことで、これがまた例によって「怠け病」に見える病なのだそうだ。

正直、この手の病気が多すぎる。 怠け病で検索 してみると、実にたくさんの病があるのがわかる。こういう周囲からまったく理解されない病がどれだけ大変なものか、普通はわからないだろう。

誤解を恐れずに言えば、癌や白血病のほうがまだマシだ。少なくとも終りがある。そのような病気にかかってる患者さんたちの苦しみを無視するわけではないが、戦うべき相手も戦いの終りも見えない状態というのは、想像以上の苦しみだという事は言っておく。

両手両足に10kgずつ、他人には見えない重りを付けて生活してるところを想像してみるといい。体は思うように動かない、すぐ疲弊する。病院の検査でも見つからない。重りを外してくれる人もいない。それどころか重りがあるんだと言えば怠ける口実だと言われる。重りがあるからといって体力が向上するわけでもない。

真面目な人ほど、思うよりも動けない自分にいらだつ。消耗して起き上がる力も出なくなる。全身に広がるだるさで、寝てるだけでも退屈すら感じなくなる。

そういう状態が家族の理解も得られぬまま、延々と、時には何年も続くのである。そりゃあ鬱病だって併発する。

なんでもいい、この状態から抜け出せるのであれば、たとえそれが死だとしてもそれでいい。かといってこの重りが自分を殺してくれるわけでもない。心理的には、そんなところだろう。死ねる病がうらやましいとすら、思い始めるはずだ。

ついでに言えば重りが付いてても慣れるとそれなりに動けてしまう。もちろん普通の人のようには動けないし、無理をすれば翌日からしばらく寝込んだりもする。昨日は元気そうだったのに、なんてことがあるのはそのせいだ。

それぞれ個人差はあるし病気によっても違うだろうが、たいてい怠け病扱いされる病はこんな感じだ。気力も出なくなるので、もっとひどいかもしれない。

冒頭の大杉君枝さんも、そんな状態で仕事や家事をこなしていたのだろう。そしてこなしきれない自分にいらだっていたのだろう。

周囲にやけに疲れやすかったり、休みがちだったり、気力のなさそうな人がいたら、怠け者だと思う前に、病気を疑ってあげて欲しい。できれば病院を5〜6件はまわらせてあげて欲しい。この手の病は見つかりにくく、理解されがたく、映画化もドラマ化もされないので知られにくいものなのだから。

(@648)

この記事のURI

2007年02月06日(火) [過去の今日]

#1 favicon2dots

favicon2dots というのがあったのでやってみた。

3D化された「狐の王国」favicon画像

うーん、3Dにするとカッコ悪さがひきたつな……

(@299)

この記事のURI

#2 ネットでばら撒いても本は売れる

痛いニュース などで話題のドラえもん同人誌の販売中止と損害賠償を小学館が命令した事件。

話を聞いたときは「まあ儲けすぎたせいかな」くらいにしか思ってなかったのだが、あとから俺もネットで見たことがある作品だということに気付いた。

そう、全16ページがネットで公開されていたのである。

なのに、本は1万5500部も出荷されていたという。

ネットでタダで読めるコンテンツに、なぜそれだけの人がお金を出したのか。むしろネットで評判になってさらに売れるようになったとも聞く。そこに着目する必要があるんじゃないのか?

本の中身を無料でばら撒いたところで、本は売れるのだ。まずその事を認識してもらいたい。

これはおそらく、だが……。物理的なアイテムを買う、という行動に出る人は、手元に置いておきたいという欲求や、コンテンツそのものだけでなく装丁やその他の部分にも価値を見出すタイプの人なのではなかろうか。 そうでない人が本やCDを買うと、「飽きたら売る」という行動に出る。これが中古販売に繋がってるのではないか?

古本、中古CDでは著作権者に利益は無い。だったら無料でコンテンツをばら撒いても同じではないか? 中古市場に流れている分だけ売れなくなるかもしれないが、何も生み出してない人間に儲けさせたくないのであれば、無料でばら撒くのが一番なのかもしれない。

本気で、俺はそう思う。

儲かってる人たち:

このドラえもん同人誌の作者である 田島・T・安恵さんの名前でYahoo!オークションを検索する と、当該同人誌に4万円もの高値がついてるのも見受けられる。 小学館の販売中止命令によって得をしたのは、何を創作したわけでもないこういう転売屋だけだ。

実際のところ、この作品はすばらしいものだ。ドラえもんの二次創作としてこれ以上のものは無いだろう。というか、実は(ネットにはまだ残ってるので)読み返してまた涙が止まらなくなってるところである。正直言えば、アニメ化してほしいくらいだ。

二次創作とはいえ、そういう作品を生み出した事に、もっと正当な評価が与えられるべきだ。漫画だけでなく、音楽の世界でもリミックスという二次創作の文化が存在している。これらの中にもすばらしい作品が数多くある。

せめて一定の利益を生み出したら原著作者に支払うという方向で、個人活動だけでも合法的に認めてもらいたい。というか、そうでなければ「目立たないようにこそこそやりましょう」というような今の風潮が続くことになる。だから 無断リンク禁止だとかいう変な話 にもなりがちだし、グレーゾーンで若いクリエイターたちを育てなきゃならなくなる。

健全な文化活動のためにも、二次創作は最大限自由に合法化されなきゃいけない。

(@552)

この記事のURI

#3 Macにはシェア30%を目指してもらいたい

だいぶマシになったとはいえ、まだまだMS一辺倒なサービスも多い。標準技術の採用を促すためにも、ロックインを避けるためにも、Macにはもっと普及を目指してもらいたい。できればシェア30%を目指してもらいたい。

が、 the Month of Apple Bugs の未修正脆弱性を見るにつけ、そんな期待は吹き飛んでしまう。

Appleさん、せめてOSのサポート期間の明示とMS並のセキュリティ対応くらいはやってくださいよ。こんなんじゃ人に勧められない。

しかし、Apple自身が「ウィルスが無いから安全」みたいなCM打っちゃってる痛い状況……。やっぱ期待できねえかなあ……。はあ……。

(@866)

この記事のURI

2007年02月07日(水) [過去の今日]

#1 livedoorがとまっとる?

エラー画面の画像すらでてこないな。めずらしい。何があったんだろ。

(@467)

この記事のURI

#2 mixiの外部ブログ表示がうざったいのでどうにかしてみた

なんでmixiって外部ブログのURIに直接飛ばさないで、「だれだれさんは外部ブログを使っています。」とかいってリンクはったページに一度飛ばすんだろうね。

つーわけでうざったいので Mixi外部ブログ・リダイレクター というGreaseMonkeyスクリプトを書いた。

これでちっとはうざったくなくなるかな。

(@689)

この記事のURI

2007年02月09日(金) [過去の今日]

#1 GTKのクリップボードとXのクリップボード

なんか今さら気付いたのだけど、別管理なのね、GTKのクリップボードとXのクリップボード。前はどっちかに入ったらどっちかにコピーされてたような気がしたのだが、気のせいか?

しかし、Xのクリップボードは前にも書いた覚えがあるが、

$ xclip -o

でコマンドラインから取得できるのだが、gtkには無いっぽい?

ちょっとぐぐったら、 Ruby/GTK2のGtk::Clipboard なんてクラスがあるのをハッケソ。

というわけで、

#!/usr/bin/ruby

require 'gtk2';

clip = Gtk::Clipboard;
text = clip.get('PRIMARY');

puts text.wait_for_text;

なんてやってみたらあっさりGTKのクリップボードを取得できた。xclip互換のオプションも作ったらけっこう実用かな。

(@566)

この記事のURI

#2 混在文字コードなファイルシステム

うちのマシンは長年使い続けてるのもあるのだが、管理してる人間がアレなのでShift_JISとかの文字コードのファイル名がたまにまじっとる。UTF-8ロケールに移行するにも、変換がめんどうだ。

で、実際どれくらいあるのかと思って以下のようなワンライナーを走らせてみた。

$ locate . | perl -MEncode::Guess -ne 'my $dec = Encode::Guess->guess($_, qw/ascii euc-jp/); if(!ref $dec) { print $_; }'

……なんか300以上あるんですけど。

むう、どうすっかなあ、大半はShift_JISだと思うのだが、どうもiso-8859-1なファイル名もあるぽいな。そのまま変換してしまうにはディレクトリ名もあるようだし……。

convmvがEncode::Guess使ってくれれば楽なんだが、ソース見た限りそういう改造突っ込むのも厳しそうだな……。はあ、どうすっかな。

(@574)

この記事のURI

2007年02月10日() [過去の今日]

#1 ミハエル・シューマッハの本当の価値

若干疲労してるのか何も手が付けられなかったので、忙しくて見れなかったブラジルGPをやっと見た。

「運」という言葉がある。あいつは運がいい、今日は運が悪かった、そんな言い方をする。

ブラジルGPでのミハエル・シューマッハは、「運が無かった」と思われるだろう。予選でのトラブル、10番手から5番手へ上がったとたんのタイヤバースト、信じられないような運の悪さが見られた。今までのシューマッハには、こんなことは無かったのに。

いや、そうだ。今までは無かったのだ。今まで無かったのはただ「幸運」なだけだったのか? 否、そうじゃない。運だけで7度も世界王者になれるものか。

機械が壊れる、トラブルを起こすのには、理由がある。保管、運搬、使用状況、いろんな要素がそこに絡む。だからこれだという原因をあげることはできないが、それでも理由は存在している。

ある種の気くばり、ささやかな見逃し、小さなミスの蓄積。思えば日本GPでエンジンが壊れたのは、そういう事もあったのかもしれない。

それは運じゃない。今までできてたことができてなかった。それを人は衰えと呼ぶ。

ミハエル・シューマッハは衰えた。だからアロンソに勝てなかった。運が悪かったわけじゃない。

おそらく、ミハエル自身がそれを一番よく知っているだろう。若いころはそれこそ たくさんのタスクを同時にこなしていながら「これくらいできて当り前だろ、なんでできないの?」って本気で言 うような人間でも、年を取れば衰える。集中力も下がる。若いころはできてた事ができなくなる。それは自分自身の事だからこそ、よくわかる事なのだ。

だから引退を決めたのだろう。

しかし同時に、ミハエル・シューマッハの価値は勝利することではない事も、このブラジルGPは教えてくれた。

F1ファンは異口同音に言う。ミハエル・シューマッハは後方から追いあげてる時が一番おもしろい、と。

ブラジルGPでのミハエルは、耀いていた。10位からスタートして、5位にあがった。そのあとタイヤがパンクして最後尾にまで落ち、トップからほぼ1周遅れにまで後退した。それでも次々に他車を抜き去り、ラスト3周で自分自身が後継者に指名したライコネンをも抜いた。このオーバーテイクは抜いた方も抜かれた方も見事な、これぞF1というバトルだった。気付いてみれば4位。他のどんなレーサーでもありえないリザルトだった。

ミハエル・シューマッハの価値は、決して諦めない事、くさらず最後の最後まで全力を尽くす事、絶対に後ろ向きにならない事、努力し続ける事、そういう正論すぎるような当り前の事を本当に実行し続ける事にこそあるのだ。

ミハエル・シューマッハは天才ではない。天才とはセナやハッキネンのような奴を言うのだ。その天才を、シューマッハは誰にも負けない努力で越えてきた。決して諦めずに。

この偉大なチャンピオンのラストランは、自分自身の本当の価値を体現したと言っていいだろう。勝ち負けが結果に過ぎない事を、改めて感じた引退レースだった。

ありがとう、ミハエル。ただ、それだけを言いたい。

(@941)

この記事のURI

2007年02月11日() [過去の今日]

#1 IE6のkeepaliveのバグ

最近IE6でWikipedia日本語版の表示が異常に遅いのはKeepAliveのせい という記事。

なんで今ごろになってIE6のバグが話題になってんのだろ……。いや、俺も知らなかったんだが。

記事を辿ってくと、 結構前からMSは認識してた ようだ。 セキュリティホールmemo では2004.02.13になっとるな。ちょうど3年前か。

んー、POSTしなきゃ問題ないのかな。パッチあるけどWindowsUpdateに含まれてないということは、非常にマイナーな問題ってことか? デフォルトで入ってるMSIE4.0b2のnokeepalive設定をMSIE6にも割り当てた方がいいんかなあ。パッチ当ててくださいって言った方がまっとうな気はするが。

(@745)

この記事のURI

#2 PHPのフォーム用tokenライブラリ

ちと探したのだが、見当たらなかったので でっちあげた 。 名前はCatalystのRequestTokenっていうプラグインからパクった。

一応新BSDライセンスの表記入れといた。これなら二度と同じもの書く必要は無いだろう。

まあPHPはセッション変数に適当に値つっこんどけるから、いちいちライブラリにしようという人はいないのかねえ。

(@790)

この記事のURI

#3 強者の責任

日本はエラくもないが卑下したもんでもない という記事。 こういう記事を書いてくださって本当にありがとうございます、としか言いようが無い。

興味深かった所をいくつかピックアップ。

イギリスに行って、「ヨーロッパで暮らすのは初めてです」と言ったら、周囲のイギリス人たちから「ここはEnglandでEuropeではない」、と、総スカンを食った、という人がいました。

ちょっとこれは驚いた。イギリスもヨーロッパだと思ってたけど、違うんだ。でもこれは日本人が日本をアジアだと思ってないようなものかな?

Noblesse Obligeはもともと「貴族たるものが負うべき義務」ということだが、「強者が弱者に対して負う義務」といった意味で使われる。

(中略) で、Noblesse Obligeがないから、「日本は強い国だ、と思うこと」=「日本はエライ、と思うこと」という発想になり、「偉そうにしてはいけない」という自制心が、「日本はどうせ小さな国だし」という、「他国から見たら間違った認識」を呼んでいるのでは、と。

これも実に興味深い。確かに侍が祭事をしてた時代はNoblesse Obligeに似たものは日本にもあったかもしれない。しかし、今は侍が侍たる自覚を持てない時代だ。なんせ一億総中流時代の価値観がでっかくのしかかってるからな。

うちは職人の家系なので、親方と弟子の関係ってのは小さいころから目の当たりにしてたはずだし、けっこう身に染みてると思う。親方だった祖父が弟子たちのために家を作り、住まわせ、仕事を教え、独立させたりしてたのも知っている。小さいころに住んでた家は玄関がふたつあり、片方には職人さんが住んでいた。父や叔父はそういう職人さんと兄弟のように育ったのだという。

最近聞いたのだが、俺が住んでるあたりに電話を引いたのも祖父だそうだ。電柱を自腹でたてて、電電公社に線を引いてもらったのだという。今の電柱に変わるとき、所有権が祖父にあった古い電柱を返しにこられて大変迷惑だったそうだが。

祖父は決して貴族ではないが、小さな町のプチ強者としてNoblesse Oblige的な事をしてきたんだと思う。

いきなり国と国の関係でNoblesse Obligeなんて大上段に構えてしまうと、不慣れでうまくいかないかもしれないし、想像も付かないかもしれない。しかし、よくよく考えてみればもっと小さな規模にも強弱はある。

俺がPC-UNIXをいじりはじめたころ、明かに弱者だった。たくさんの先輩たちに教えられ、叱咤され、今はそれで多少なりともお金を頂けるくらいにまでなれた。だから自分でも極力初心者には教えるようにしてるし、質問には積極的に答えるようにしている。それが今の俺にできる先輩達への恩返しだと思うからだ。こういうのも、Noblesse Oblige的なものなんじゃないかと思う。

例えば会社の小さな部所やチーム、学校のクラス、部活、家族。そういうところにもNoblesse Oblige的なものはあるはずだ。

そういうところから意識してみればいいんじゃないかと思う。そういう経験から、日本という国のNoblesse Obligeが見えて来るんじゃないだろうか。

日本がしなければならないのは、「いじめないでください」と小さくなることでもなければ、「自分はエライんだぞ」と突っ張ることでもなく、「大国としての責任を発揮し、さらには世界二番目の国としてアメリカの暴走を抑制する 」ってことだと思うんですけどね。

はい、まったくその通りです……。

他国ではどうか知らないが、少なくとも日本ではどうも「責任を取る=辞任する」ということになりがちで、本当に「問題を解決する」という責任の取り方をしてくれる人が少ないように思う。クビを切らなきゃおさまらないという状況を作りだす衆愚にも問題はあると思うが。

もう少し、我々は「責任」という言葉の意味を考える必要があるんじゃないだろうか。

(@851)

この記事のURI

#4 凡作の価値は

明日から3連休なんだってね という記事。 こないだ書いた ネットでばら撒いても本は売れる という記事に対して、

質のいいものはそうなんだろうけど普通の凡作なんかは買わない人も出てくるってのも事実

という反応をもらった。

うん、確かにその通り。実は良作は売れても凡作は売れないのではないかという疑念は前からあった。 しかし、これには反論したい。なぜなら、凡作には凡作の生き方があると思うからだ。

考えてみよう。20年前の凡作は、今手に入るか? 入るとしても古本屋だ。前の記事でも書いた通り、古本屋で買っても作者にお金が入らない。

ではネットで無料公開し、そこにGoogleなりAmazonなりの広告を載せたらどうなる?

答えは「わずかだが収入になる」だ。ゼロがゼロじゃなくなるのである。

もうひとつの答えもある。「作品を知る人が増える」だ。

20年前の凡作を記憶してる人はどれくらいいるだろうか? 「凡作ではあるがここがおもしろいんだよ」と紹介したとき、相手に読ませられるだろうか?

どんな凡作でもツボにハマる人はいる。そういう人が増えれば、広告収入も多少なりともあがる。ネットで無料で読めるというのは、そういう価値もある。

一時的には確かに発行部数は減るかも知れない。しかし、長い目で見れば結局はプラスになるはずだ。

(@895)

この記事のURI

#5 ページ分割サイト

そうそう、うざいんだよねー、ページ分割サイト。 わたしがFirefoxを使う3つの理由 といういかにもすぎるタイトルでまったくスルーしてた記事をふと見てみたら、 うざい!めんどい!果てしなくうっとおしい! という記事に PageConcater というGreaseMonkeyスクリプトがあるのをハッケソ。

さっそく使ってみたがえらい便利!! さいこー!!

(@929)

この記事のURI

2007年02月12日(月) [過去の今日]

#1 たまに壊れるext3

cronのレポートメール見てみたら、なぜかfj日報が出てきたもんでびっくりしましたよ?

どうもファイルシステムがおかしいみたいなので、再起動してfsck。なんか自動だと失敗しやがるんで手でやるはめに。

そしたらちゃんとcronのリポートメールが読めた。うーん、何で壊れたんかなあ。やっぱし2.6.18使ってるのがわるいのか? debianパッチ当ててないはずだが。

そろそろ2.6.20にしたほうがいいかのう。

(@056)

この記事のURI

#2 オーラやら前世とカルト教団

ゴールデンタイムにオーラやら前世やら、本気ですか? という記事。

うーん、別にTV番組のことなどどうでもいいのだが、霊能者とカルト教団を同一視しちゃうってのはどうなんだろ。

霊の存在というのは宗教的ではあるが、宗教以前の日本人の世界観の中に深く入り込んでる存在だと思う。だから子供たちは心霊写真が大好きだし、墓に手をあわせるのもよいことだとされている。それは霊の存在を感覚的に肯定してるからだろう。

そういう日本人の世界観にあるものを否定しないとカルト教団のテロが再発するっていうなら、それは日本民族の欠陥としか言いようが無い。

非科学的なものを捨て去った世界がいかにどうしょうもない世界か、理解しているならいいんだけどね。

って「ニセ科学」ってカテゴリーで書いてるのか、この人。そもそも科学以外を全部ニセ科学でくくってるのか?

(@711)

この記事のURI

#3 unzipのファイル名がばける

たまにunzipで解凍したファイルの名前が化けることがある。Shift_JISでもUTF-8でもEUC-JPでもISO-2022-JPでもない妙なコードになる。 たぶんunzipのバグでマルチバイトなファイル名の取り扱いに問題があるんだと思うが、さすがにCで書かれたものをおっかけてる暇も無い。

で、CPANを探したら Archive::Zip を見つけたので、 ここらへん とArchive::Zip(3pm)を見ながら適当に書いてみた。

#!/usr/bin/perl
use strict;
use warnings;
use utf8;

use Archive::Zip qw/:ERROR_CODES/;
use Encode::Guess qw/ascii euc-jp shiftjis 7bit-jis utf8/;
use File::Basename;
use File::Path;
use Term::ReadKey;

my $encoding = $ENV{LANG} =~ /euc-?jp/i ? 'euc-jp' : 'utf-8';
binmode STDOUT, ":encoding($encoding)";
binmode STDERR, ":encoding($encoding)";


my $file = $ARGV[0];
my $zip = new Archive::Zip;

$zip->read($file) == AZ_OK or die "Cannot read $file\n";

my $str;
foreach my $f ($zip->members)
{
    $str .= $f->fileName;
}

my $dec = Encode::Guess->guess($str);
ref $dec or die "Cannot recognize files charset\n";

ReadMode 3;

foreach my $f ($zip->members)
{
    my $utf8file = $dec->decode($f->fileName);
    my $outfile = Encode::encode($encoding, $utf8file);
    $outfile =~ s/\/\.\.+//g;

    my $outdir = dirname($outfile);
    mkpath $outdir if (!-d $outdir);

    if(-f $outfile) {
        print "$utf8file exist. overwrite?(Y/n)";
        my $char = ReadKey();
        if ($char eq 'n') {
            print "\n$utf8file skip!\n";
            next;
        }
    }
    print "extract " . $utf8file . " ...";
    $zip->extractMember($f->fileName, $outfile);
    print "done.\n";
}

むう、日記に張るにはちと長いかな。まあいいや。

とりあえずこれで普通に解凍できるってことは、zipファイルには問題無しだな。やっぱunzipのバグかー。どこにそんなバグあるんだろ。debianのsid環境なんだが、etchにも同じバージョン入ってるのかな。だとしたらリリース前にBTSしないとまずいかなあ。

しかし再現データ作れないんだよな……。Shift_JISのファイル名ってだけなら別に問題無いみたいだし……。

(@996)

この記事のURI

2007年02月13日(火) [過去の今日]

#1 涼宮ハルヒの憂鬱の曲がラップバージョンに

ハムスター速報の記事ブログちゃんねるの記事 にあるのだが、アニメ「涼宮ハルヒの憂鬱」の楽曲をラップバージョンにしてる人たちがいるようだ。

聞いてみたのだがこれがまたすばらしい。確かに歌はちょっと下手かもしれないが、原曲のカラオケ版に載せて独自の歌詞をラップで歌いあげている。

特に秀逸なのが挿入歌としては異例の大ヒットとなった「God Knows...」のラップ版で、原曲同様それ自体が実にすばらしい作品となっている。

こういうのを見るにつけ、やはり二次創作はもっと自由でなきゃいけないと思う。だってこれ厳密には違法なんだぜ? 規模が小さいから著作権者が認識してないか、してても黙認してるだけで。

こんなすばらしいアレンジが違法なんてもったいなさすぎる。実に健全なファン活動だと信じたい。

もちろん利益が出たら原著作権者に還元するような仕組みは無きゃいけない。でもファン活動としての二次創作がもっともっと広汎に認められ、いちいちお伺いを立ててお金を払わないと堂々とできないような状況からは抜け出さなきゃいけない。

また、 夜姫と熊猫 というグループは、音楽そのものも自分たちで演奏した男性ボーカルの「God Knows...」を制作している。が、やはり表には出せないと判断してファンたちにこっそり聞かせているようだ。

こういうファン活動も束縛される現状はやっぱりおかしい。ファン活動も創作活動も、もっともっと自由であるべきだ。

(@020)

この記事のURI

#2 office氏に責任を負わせたがために認識の甘さが直らなかったのかね

ファーストサーバ社は危険性をちゃんと顧客に伝えているのか という記事。 お客のサイトの問い合わせページがオレオレ証明書らしい。

で、聞き覚えのある名前だなーと思ってぐぐってみたらドンピシャ、 office氏逮捕事件 の時のレンタル鯖屋じゃん。 テンプレサイトから引用すると、

一方ファーストサーバは自社サーバの契約者に「標準CGI」というCGIキットを無償提供しており、今回問題となったcsvmail.cgiもこの標準CGIキットに含まれていました。ファーストサーバはこのCGIについて、11/8以後のoffice氏とのやりとりで「2002年末から配布CGIの脆弱性(洗浄不足)に気づいていた」と弁明している一方、実際にはCGI利用者にその脆弱性を公開せず「新たなバージョンのCGIをリリースした」という報告だけを行い、旧CGIをリプレースするかどうかは各サイト運用者の任意の判断に任せていたことがわかっています(2ちゃんねる「ファースト鯖」スレ(149-)参照)。

だそうで、事件の直接の原因を作った会社なわけね。

結局このとき責任を取らず、office氏に全責任を負わせてしまった事が、今もってゆるい体質のままでいてしまう理由ってことなのかなあ。

まあ、俺も気をつけよう……。痛い目見てからじゃないと学べないなんて辛すぎる。

(@090)

この記事のURI

2007年02月14日(水) [過去の今日]

#1 アニメ・ゲームのヒロインは不健康すぎる

Wikipediaのアイドル・マスターの項目 を見てて思ったのだが、やはりこいつら不健康すぎる。

The IDOL M@STERの出演アイドルたちの身体データ
名前身長体重BMI3サイズ
天海春香158cm45kg17.683-56-80
如月千早162cm41kg15.6272-55-78
萩原雪歩154cm40kg16.8780-55-81
高槻やよい145cm37kg17.672-54-77
秋月律子156cm43kg17.6785-57-85
三浦あずさ168cm48kg17.0191-59-86
水瀬伊織150cm39kg17.3377-54-79
菊地真157cm42kg17.0473-56-76
双海亜美・真美149cm39kg17.5774-53-77

ロケットガールの時 も思ったが、BMIが15とか16とかいくらなんでも痩せすぎだろ。標準は22だぞ、22。

朝日新聞の「スーパーモデル拒食症で死去」 という記事によれば、

最近「やせすぎモデルは不健康」として、スペインのショーで、BMI(体重÷身長の2乗)が18以下のモデルが出演禁止になったこともあった。

とのこと。

スーパーモデルですらBMI18以下はありえないんだぞ。

うっかりこんな計算してしまって以来、アニメのヒロインがいつぶったおれるか心配で心配でしょうがなくなってきた。アイマスなんてダンスしまくってるもんな。ステージのあと救急車で運ばれて死んでもおかしくない。

もう少し健康的なヒロインじゃないと、安心してコンテンツを楽しめないぜ。お前ら肉つけろ、肉。

(@011)

この記事のURI

#2 Mac信者よ、Macを捨てよ

Apple製品のセキュリティホールを毎日公開するという MOAB の終結を受け、その対策の 第1回第2回 が/.-jにて公開されている。おそらく明日の朝には第3回が公開されるだろう。

まあしかし大量にあることあること……。こんだけ穴あいてりゃいくらでもウィルス仕込めそうだな……。

にしてもコメント欄が痛い。これだけ見せ付けられてもまだ「Windowsのほうが危険」などと信じてる人の多いこと多いこと。いくらWindowsがひどいったって、こんな大量に未修正の脆弱性が出たりしないっての。

ひどいのが まっとうな意見に対して荒しモデ がついてたりすること。どんだけ痛い信者なんだよ。

俺もWindowsがセキュアだとは微塵も思ってない。だが脆弱性対応はしっかりやっている。それは叩かれた歴史があるからだろう。

Appleはユーザーに絶賛されても叩かれることは無い。ユーザーの体質が信者体質だからだ。

大切な友人が間違ったことをしていても君は讃辞を送るのか? その友人のためを思えばこそ、厳しいことも言うだろう。

ならばMac信者よ、Macを捨てよ。Appleを叩くことこそがAppleのためだ。

それを潜り抜けてこそ、本当に現代的なOSを提供できる企業になれるだろう。

(@675)

この記事のURI

#3 ちゆちゃんが18歳になっとる

ちゆ12歳 が久しぶりに更新されてるなーと思ったら、18歳になってる。こっちのほうがかわいいな。

(@807)

この記事のURI

#4 6カ国協議に見るクレーマー問題

6カ国協議が合意の方向 だそうで。 査察受け入れを重視した恰好か、それとも大統領選挙前に解決したくて焦ってたのか。どっちにしてもなんだかなあという印象。

これを見て思い出したのが、先日見た 悪質クレーマーは長期戦に持ち込め という記事。

基本的な考え方として6つの原則が書かれている。北朝鮮問題に照らしあわせてみると……

自分一人で判断せず、組織で対応する
米中露を巻き込む(成功)
長期戦に持ち込む
6カ国協議で向こうが疲弊するのを待つ(待てなかった)
カネで解決しない
つまり経済制裁を続け、支援は一切しないで向こうがあきらめるまで待つ(待てなかった)
理論武装する
向こうに拉致問題が解決してないという言質を取る
同意も反論もしない
「拉致問題解決してないですね」以上のことを言う必要は無い
特別扱いしない
交換条件などはいっさい出さない

というあたりだろうか。

これを逆側、つまり北朝鮮側の視点で見てみると……

自分一人で判断せず、組織で対応する
米中露を巻き込む(成功)
長期戦に持ち込む
6カ国協議で日本が折れるのをひたすら待つ
カネで解決しない
人道と核でGo!
理論武装する
拉致問題解決してますよ、被害者返したでしょ?
同意も反論もしない
拉致問題について言われても同意も反論もしない。解決したの一点張り
特別扱いしない
日本を特別な国と位置づけない

なんと見事に全部成功してる。まさに教科書通り。

こうして見ると日本が負けたのも納得してしまうな。これじゃあ勝ち目が無い。 外務省はクレーマー対策に慣れたデパートで研修してくるべきではないか?

(@948)

この記事のURI

2007年02月15日(木) [過去の今日]

#1 じゃがまるくんが復刻してるぜ

コンビニが近所に無かった小学生のころ、TVCMで見て食べたくてしょうがなかったものがある。7-11の「ブリトー」と「じゃがまるくん」だ。 ブリトーは今もあるし、ときおり機会を見つけて食べているが、じゃがまるくんはいつの間にか消えていた。

が、ふと7-11に入ると「覆刻版じゃがまるくん」なんてものがあるではないか。しかしその時はすぐに家に戻れないし、おなかはいっぱいだったしで「あとで買う」タグを付けて去っていったのだ。

しかし人気があるらしく、食べようと思って買いに行くと、どこの7-11にいっても売ってない。 7-11のサイト に行っても見当たらない。 幻でも見たのかと思ったが、店員さんに聞いてみると売り切れとのこと。それが一週間くらい前の話だ。

ネットで検索してみると、 4年前にも限定的に復刻してた らしい。コンビニでは買えなかったようで、どうりで知らないはず。

そして今日、買い物ついでに寄ってみたら、なんとあるではないか!

おもわず3個ゲット。やったぜ!!! うまそー!

うーん、いつ食べようかなあ……。懐かしの味、楽しみだ。

(@105)

この記事のURI

#2 Y3K問題検証

今度は「Y3K問題」、Visual C++に という記事を うどんとこ で見つけたので、 検証ページ を作ってみた。

残念ながら64bit WindowsでVC++8.0(VS2005?)でコンパイルしたソフト、という条件が揃わないとDoS状態にならないらしいので、そんな環境無い俺は検証できず。検証できた人いたら連絡ください。

(@214)

この記事のURI

2007年02月16日(金) [過去の今日]

#1 家庭用ルータのCSRF脆弱性

ルータのDNS設定を狙う新たなファーミング攻撃発見 という記事。

なあるほど、家庭用ルータは確かにウェブUIの設定ツール入ってるから、そこを狙うわけか。

にしてもCSRFかよ……。ちょっとした事で対策できるのに……。LAN内部だからって安心しちゃダメだねえ……。

とりあえずルータの設定終ったらかならずログアウトしておこうねー。

(@311)

この記事のURI

2007年02月19日(月) [過去の今日]

#1 Firefox用YouTube検索プラグイン

Firefoxの右上の検索窓からYouTubeを検索したいなあと思ったのだが、 mozilla-japan にも addons.mozilla.org にも見当たらない。

で、はてなとかgooとかの検索プラグインを見てみたら簡単そうなので、自分で書いちゃった。これでいいのかよくわからんが、一応検索はできるな。

YouTube検索プラグインを追加

つか 農林水産省まで配布してる というのに、 なんでようつべこういうの配布してないの? 俺が見落としてるだけ?

(@027)

あ、併せてこれも使いましょう:

Piro氏のSecond Search も入れておかないと、いちいち検索エンジン切り替えるのがめんどうで使わない、という結果になりがち。

インストールは addons.mozilla.org から。

(@031)

この記事のURI

#2 2chで出回ってる女性の主張コピペを現実に主張してる女性はいるのか?

なんでかdebianスレで見つけたわけだが、他でも見た覚えがあるな。

From: [977] login:Penguin <>
Date: 2007/02/17(土) 12:04:12 ID:a1yiqB0c

女性は働きたければ働いて、働きたくなきゃ働かない、辛くなったらやめていい。
そもそも女性に辛い仕事を押し付けないこと。かといって雑用やらせるのもダメ。
それで給与も昇進も平等にね。ただし残業、転勤、深夜当直させたら女性差別だよ。
間接差別禁止規定って知ってるでしょ。なんでも平等にね。髪形と服装は女性の自由だけど。
それからアファーマティブアクションと管理職30%目標もね。産休育休もね。当然給与40%保障で。
主婦と言っても、家事を強制される言われはないし、出産するかどうかは女が決めること。
でも産まれたら育児を女性に押し付けないでね。二人の子供なんだから当然でしょ。
ただし離婚したら親権は母親のものだよ。育児は女性のほうが向いてるんだし。

それから働く夫を妻が支えるなんて時代遅れの女性差別。
これからは働く妻を夫が支えなきゃ。
あ、もちろん収入は夫の方が多くて当然だけどね。妻には扶養請求権だってあるんだから。
それと夫は妻に優しくね。妻が望まないセックスは家庭内レイプだよ。
夫が妻のセックスの求めに応じないと離婚事由になるけどね。
離婚したら慰謝料とか財産分与とかまあ当然だけど。
女性はか弱いから母子手当ても生活保護も税金控除も当然だよね。足りないぐらい。

それと女性に女らしさを押し付けないでよ。
そんなの窮屈で面倒だし、いまさら男尊女卑ですかって感じ。
でも男はやっぱ男らしくないとね。
いつになったらレディファースト覚えるの?ワリカンなんてありえないし。
少子化だって男のせいでしょ。男がだらしないから女性が結婚できないんだよ。
え?レディースデー?あれはいいの。
別に私たちが頼んだ訳じゃないし。店が勝手にやってるんでしょ。

と、まあ読んでるだけで笑いがこみあげて来る文章だ。そりゃホントにこんなこと主張されたら、男としては結婚なんて絶対したくなくなるに決まってる。常識的にも「なに都合のいいこと言ってるんだ!」「甘えるのもたいがいにしろ!」と怒られるレベルだろう。実際のところ、現実にこんなこと主張してる女性に会ったことは一度も無い。

しかし、マスコミを通して見る「女性の主張」というのはまさにこの通りだ。

もちろん個々人による主張を「女性」という枠組みでひとくくりにしてる事に問題があるのは言うまでもない。が、ひとくくりにしてるのは誰かということを考えなければならないだろう。

少し前にblogで話題になった 「みんなの意見」は正しいのだろうか という記事。

この記事が契機だと思うが、あちこちで「みんなって誰?」という問いが横行した *1 覚えがある。それは結局「自分の意見」を「みんなの意見」として主張したいだけじゃないかという指摘があった。

結局このような意見を「女性の意見」「女性の主張」として発言するのも、同じことなんじゃないだろうか。少数だがこういう事を考えてる人がいて、その人らが「女性みんなの意見」として自分の主張をばら撒いている。それをマスコミが垂れ流す。

実際のところは、そんなとこなんじゃないかなあと思うのである。

(@096)


*1: それだけ見れば文脈を読めてない人のたわごとでしかないけどもね。
この記事のURI

#3 賛同するもしないも決められないからまとめもくれよ

我々は福島事件で逮捕された産婦人科医の無実を信じ支援します。 という記事。

内容がわからないので賛同しようがない。まとめドコ?

(@171)

この記事のURI

#4 youtube2nicovideo

ニコ動画にようやく初収入があった そうで。おめでとうございます。

で、たまにyoutubeの動画見てて「これをニコニコ動画で見たいなー」という事があるわけですよ。で、また探すのウザいんで、greasemonkeyでリンク作っちゃいました。

youtube2nicovideo

映像の右のURLとかEmbedとか書いてあるところの下に Go nicovideo! ってリンクができるはずなのでクリック一発でニコ動画へ。

(@321)

この記事のURI

#5 「最近の記事」を表示するようにした

なんかあちこちでリンクしていただいて、今月に入ってからアクセス数が多い日で7倍くらいになってたりなんかして驚いちゃうわけだが。

しかし、リンクされた記事しか読んでもらえないのも寂しいのよね、というのもあり、 jikendo+テーマ のコードを流用して右サイドバーを作り、「最近の記事」を表示するようにしてみた。

しかしこれのために HNS::Tools::HeadLine::New の $Template を書き換えると、なぜかtitle要素まで書き換えた内容に変わってしまってliタグとか入っちゃっててしょんぼり。理由がよくわからん。デフォルトのものなら記事タイトルだけしかでないのに。

しょうがないので、HNS.pmのヘッダ出力するところを

    $HNS::System::Title =~ s/<.*?>//g;
    printf("<title>%s</title>\n",$HNS::System::Title);
    #print qq("<title>$HNS::System::Title</title>\n");
    print qq(</head>\n\n);

ってな風に書き換えて対応。しょんぼり。

(@540)

この記事のURI

2007年02月20日(火) [過去の今日]

#1 CSSリファクタリング

昨日デザインを変えたせいで一部ブラウザで表示がおかしくなってることに気付いた。 おもわずかっとなってCSSをリファクタリング。ついでにあちこちおかしいところも見つけて直したり。

まあ思ったより時間とられなくて済んだ、かな……。

しかしやっぱりIE6はクソだな……。付き合いきれん。世の中のブラウザがFirefoxやoperaみたいに素直なものばかりであれば、ウェブデザイナーの労働時間は半減するのではないだろうか。

余計な労力を取られた分、ウェブデザイン企業はマイクロソフトに損害賠償を求めるべきである。

(@052)

この記事のURI

#2 KDEアプリはSuperを使うらしい

まったく使わないのだが、気まぐれにKDEのCDプレイヤー類をいくつか起動してみたら、Emacs上でSuperキーが使えなくなってあせった。どうやらCDプレイヤーがSuperキーを拾ってしまって、Emacsにまで行かないらしい。

うーむ、Superキーは既存アプリやシステムに使われることが無いから安心、と思ってたんだけどなあ。WindowsキーをSuperキーにマップするのが普通になってきたから、そのせいかな……。

やはりMSが諸悪の根源か……。

(@521)

この記事のURI

#3 価値と倫理とオリジナリティと

絵文録ことのはの記事 で見つけた ブログのオリジナリティ という記事。

実に古臭い見識だと思う。

正直言って、オリジナリティなんてクソである。犬も食わない代物だ。オリジナリティにこだわって変なものになるくらいなら、手堅くまとめたもののほうが数倍楽しめる。個性だのオリジナリティだのは無意識のうちに染み出して来るくらいでちょうどいいのだ。

もちろん盗用がいいとは言わない。が、「単なるコピペ」と評されるものが本当に単なるコピペなのか、そこはもう少し考えるべきだ。

例えば当該記事で「テレビ番組のネタを完全にパクって紹介し、オリジナルな意見もほとんどない」と紹介されてる ためしてガッテンのカレー特集がすごい! という記事。これを俺は「パクリ」だとも「オリジナルな意見も無い」とも思わない。

批判してる人に言わせれば「YouTubeや2ちゃんねるで感覚の麻痺した人」なのだろうが、俺に言わせれば逆にそちらこそ「著作権過剰保護で感覚の麻痺した人」である。

その理由の一つはこの記事がTV番組の「要約 *1 」であること。要約することは著作権侵害には当たらない。さらに記事全体がレギュラー番組の紹介であり、内容は再放送予定の定まってないものであることから、元作品にあたれと言えない状況であること。番組サイトへのリンクがあり、レシピはそちらを参照するようになっていること。この記事自体が「TV番組の紹介記事を書く」という実験的側面があり、ツール紹介や所要時間などの情報があること(オリジナルだ!)。最後に、情報番組の信頼性が疑われてる時期に信頼できる番組というスタンスで紹介してること。

これらの理由を考えれば、倫理的にも問題は無いと言えるだろう。引く画像が多すぎるという点は同意せざるを得ないが、実際に半数以下の画像引用でも同じ記事は書けるはずだ。

また、 絵文録ことのはの記事 で「単なるコピペ」に分類されてる2chコピペサイト群だが、これは量が多くてログがすぐ読めなくなるという2chの事情から、おもしろいものを選別して残すというフィルタ的機能を実現した一つの新しい価値だと俺は考えている。アフィリエイト収益の一部を2chに還元するようなルールがあればもっといいと思うが、 著作権者が「読んで楽しければOK」と言っているようだ し、倫理的な問題も無いだろう。

GIGAZINEやPOP*POPのような大半が他人の情報の転載というようなサイトでも、ソースが英語圏で日本語圏の人への紹介という意味では、独自の価値がある。

オリジナルの情報量という意味ではもっと低い人気サイトもある。例えば「大手個人ニュースサイト」などと呼ばれるような、ほとんどリンクだけ、たまにコメントが少しあるようなサイトだ。俺はそういうサイトはrefererが飛んで来た時以外まったく見ないが、運営者の感性で無限とも言えるウェブの情報の中からおもしろいものをピックアップするという、ただそれだけの行為が数多の人々を魅了している。実のところ俺のこの日記でも、アルファブロガーにリンクされるより、アルファクリッパーにクリップされるより、大手個人ニュースサイトにリンクされた方がずっとアクセス数が増えるのである。局所的な話なので一般化できるかわからないが、オリジナルな情報だけが価値ではない証にはなるだろう。

絵文録ことのはの記事では「パクリ劣化コピー知ったかぶりが増えるのは迷惑だが」と言うが、これはソーシャル・ブックマークや検索のPageRankが解決してくれるくれるだろう。情報技術は砂漠の中から一粒の砂金を見つけることを可能にするのだから。

(@523)


*1: ただ、45分の番組から50枚以上の画像を引いており、すでに翻案の域に入ってるという可能性は否定できない。
この記事のURI

2007年02月21日(水) [過去の今日]

#1 「赤信号、みんなで渡れば恐くない」を実際にやると……

痛いニュースの記事 で見つけたのだが、YouTubeに上海市内の交差点の映像があった。これがすさまじい。

上海市民交通バトル

まさに「赤信号、みんなで渡れば恐くない」を体現している。言葉ではよく聞くが、実際にやったところなんて見たことないので非常に驚いた。

物事の善悪はともかくとして、興味深い映像だ。

(@059)

この記事のURI

#2 Super/Hyperキーの由来

こないだSuperキーの話を日記に書いたことから、Super/Hyperキーってのはどこから来たものなのか、という話題がIRCであった。Superキーは最近Windowsキーに割り当てて利用する人が増えているようで、KDE環境などではMetaキーがAltキーという表記になってるのと同様、Winキーという表記でSuperキーが使えるようになっている。

そんな話をしていたら、検索のうまい人というのはいるもので、またたくまに Space Saver II Keyboard で遊ぼう! 第3回 という記事を見つけて来てくれた。ありがとう、変なマシン好きの某氏。そこから引用すると

突然、かつマイナーネタですが、皆さん LMI 社の Lisp Machine の キーボードというのをご存じでしょうか?(中略)Space Bar の両脇に、Control, Meta, Super, Hyper という、強そうな、しかし何につかうのか、いまいち判らないキーが並んでいたそうです。

なんと、Lisp Machine由来だったのか。道理で対応してるアプリケーションがEmacsくらいしかなかったはず。

キー配列はその記事にもあるように、 HHKキーボードコレクション LISP Machine の項目で見ることができる。 Super/Hyperキーのある箇所を切り抜いて引用した。 俺も実機に搭載されてるのは初めて見た。写真で見てみたいなあ。 コンピュータ博物館 に行けばあるかなあ。

(@372)

この記事のURI

#3 文系ブロガーでプログラミングやってますが

文系ブロガーがプログラミング習得するのは無理。 という記事。まあ見事に釣られたわ。

まあ確かに三十路になってからまったく未経験の状態でプログラミングをやろうってのは難しいかもなあ。

でもね、不可能ってことは無いと思うよ。波長の合う解説書にさえ出会えれば、そして夢中になってプログラミングするだけの時間があれば、年齢の壁なんて関係無いと信じたい。

そりゃスタート遅けりゃ不利だし、俺も本格的にプログラム書きはじめたのは20代半ばだ。10代という吸収力の高い時期に夢中になって書いてた人には絶対かなわないってことくらい、わかってる。

でも、今は高速道路があるから。ドキュメントも豊富だし、ぐぐればコード片は山程でてくるし、 コードサーチ なんかもあるしね。参考にできる物は山程ある。

簡単な所から始めてみればいい。まずはUNIXシェルで使える簡単なフィルタを書いてみるのが一番。標準入力からデータを読んでそのまま標準出力に出すプログラムでも書いてみるといいんじゃないかな。そこからデータを加工して出力するように改造して行く。たとえば順番を変えるとか、一部の文字を置換するとかね。

そういうものを作りながら、「標準入力ってなんだ?」とか「文字の置換はどうやるんだ?」とかいう疑問を一つ一つクリアしてくという過程で、調べ方が身につくと思うんだよね。少なくとも俺はそうだった。

それである程度プログラムが書けるようになったら、オープンソースのコードを読む。普段使ってるツールがどうやって動いてるのか理解する。咀嚼する。書き写す(コピペじゃなくね)。書き写したら改変する。とにかく動かしてエラーを見る。

そうこうしてるうちになんとなく書けるようになる……と思うんだけどなあ。まあ、自分がそうだからってだけなんだけどね。俺みたいな三流プログラマの見解なんて、あてになるかわからんしな。

(@617)

この記事のURI

2007年02月22日(木) [過去の今日]

#1 Amazon Simple URI Version 2

Amazonのデザイン変更で動かなくなったので、新しいの作りました。以下よりどうぞ。

AmazonのURLを短くするAmazon Short URI

以前のものは以下:

id:otsuneさんの調査 が面白かったので、前に作ったAmazon Simple URIをちょっと作り直してみた。

Amazon Simple URI Version 2

もちろんuser scriptなのでGreaseMonkey入ったFirefoxとかじゃないと使えないが、 これでotsuneさんが確認した3種類のURIを切り替えてテキストボックスに表示できるようになる。

んでもってこれ入れると、

Amazon Simple URI Version 2のスクリーンショット

こんな風になる。

チャットやメールでAmazonのURIを示すとき、やっぱり長いURIを張るのは気が引けるし、マナーとしてもどうかと思う。ぜひこれを使って短いURIをチャットやメールに張って欲しい。

どこぞのサイトを真似して俺もオチアフィリエイト付けてみるか。

「頭のいい人」はシンプルに生きる──「快適生活」の方法

(@106)

翌日追記:

ShiraiさんがEmacs-w3m版を作 ってらっしゃるので、Emacsな漢はこちらでGo!

2007-04-18追記:

いろいろバリエーションが増えてしまったので、ここにリンクだけ列挙する。

この記事のURI

2007年02月23日(金) [過去の今日]

#1 Emacsの世界は奥が深い

先日作った Amazon Simple URI Version 2 だが、 なんと Emacs-w3m版 を作られた方がいらっしゃる。

っていうかEmacs-w3mってこんなこともできるのね……。すごいなあ……。なんかJavaScriptをelisp変換して実行とかいう妄想を思い付いたのだが、さすがに自分でやろうとは思わないな。

(@454)

この記事のURI

#2 腰が痛いので温泉……行きたいなあ

那須連山の麓という地域特性のおかげか、このへんはどこ掘っても温泉がでるらしく、市営の温泉銭湯なんかもある。

しかし老人向けなせいで昼間も夜もすいてたりはしないんだよなあ。とりあえず営業時間いつだっけと検索してたら、 Google Mapsにその温泉銭湯がある ことに気付いた。地図上だけじゃなくてちゃんと電話番号も載ってるのね。これ広告料払って載せてもらってるのかなあ。

自前のサイトも持ってないようなところがGoogleに広告出すとも思えないしなあ。Googleがユーザーの利便性のために調べまわってるのか? だとしたらすごいマンパワーが必要な気がするんだが。

うーん、Googleは謎が多いな。

(@474)

この記事のURI

2007年02月24日() [過去の今日]

#1 ネットに慣れた人でも情報を見分けるのは難しい

ネット弁慶増加のおかげで、アナログな生き方の彼は勝ち組になれた というはてな匿名ダイアリーの記事が注目エントリに入っていた。

わかってる人はわかると思うが、これは完全な釣り記事だろう。 なんせ締めがこうだ。

人と会うときに

  • 1通のメールを送る
  • 1本の電話をする

ここが勝ち組負け組の分かれ道だという最後の言葉が、

とても印象的な木曜の夜だった。

こんなものは状況によって違う。

そりゃ慣れたコミュニケーション手法のほうがいいに決まってる。相手がメールに慣れてなければ電話、電話に慣れてなければ対面、対面に慣れてなければメール、大切なのは状況判断だろう。

片っ端から電話をかけて会ってくれる人を探すのと、片っ端からメールを投げて会ってくれる人を探すのと、どちらがいいかなんてくだらない。電話のほうが確率は高いとしても、メールは電話の数倍から数十倍は軽く投げられる。どっちもspamには変わり無いけどね。

さて、この記事に見られる特徴を挙げてみよう。

大雑把にはこんなところだろうか。匿名ダイアリーなら発言の責任もないだろうし、俺もこういう記事捏造してみようかな。

しかし、電話などという相手にとってコストの高い手法が効果的だなんてなあ。アポ無し訪問の次くらいに迷惑な気もするんだが、まだまだそういう手法に効果があるというのは事実だろうな。なんせ名簿買ってきて片っ端から電話メソッドがまだまだ多いくらいだからな。

(@044)

この記事のURI

2007年02月25日() [過去の今日]

#1 新聞の言論レベルは圧倒的に低い

毎日新聞……という昨今ではもう名前を出すだけで笑いがこみあげて来る誌名となったが、そこに「ネット君臨:識者座談会」という記事が掲載されている( 前編後編 )。

そもそもネットを知らずに批判してる人がいるのはどういうわけか。まるで自動車がガソリンで走ることも知らぬまま自動車を非難してるようではないか。

柳田邦男氏 ネット上の発信者が突き止められるというのは建前論であって、市井のネット技術に詳しくない人や子供たちは中傷されたり、プライバシーを暴かれても、直ちに相手を捕まえられないので泣いているのが現状だ。

それは方法を知らないだけだ。abuse@にメールを投げるという RFC2142 に示された方法を知った上での発言とは到底思えない。「そんなもの技術者しか知らない」などという言いわけは成り立たない。それこそ検索すればいくらでも出てくるし、「悪用した人間を突き止めたいときはどうしたらいいんだ?」と詳しそうな人に聞くくらいのことはすべきだ。そもそも警察が市民に対してそういう回答をできないのはおかしい。

故意ではなく偶然に画像をダウンロードしたようなケースは、ログを示すなどの方法で過失によることが証明されると考える。

ログで故意かどうか確認できるとでも? 俺はエンジニアとして断言するが、そんなことは技術的に無理。恣意的な運用になるのは間違いない。

さらに匿名発言で泣いてる人がいるという話が出ていたが、実際そんなに傷ついてる人間がいるのか、俺は知らない。

柳田氏 (中略)受け手には一生ついて回ることでも、加害者は1回限りの「祭り」の楽しみで終わる。そこの差が認識されないと本質に迫れない。

そういうが、「祭り」の対象になるのはそれなりの理由がある。俺が今までに見てきた祭りの9割以上は、祭りのターゲットにされたサイトが「世界中に公開されてる記事」だということを認識して書かれてない場合や、そもそもサイトの記事のほうが非倫理的である場合ばかりだ。悪意だけでそんな大量の人間が集まったりしない。むしろ正義感の暴走こそが「祭り」なのである。

後編の最後に「連載第一部のあらまし」という形でこの座談会の文脈が示されている。 いまは既に読めないのだが、

  • 第1回 難病の子 あざける「祭り」
  • 第2回 嫌がる女児を撮影、知らぬ同士で「狩り」
  • 第3回 静かな職場 システムが社員監視

という内容だそうだ。第1回は例の「死ぬ死ぬ詐欺」の話で、それについては 以前にも書いたとおり 、問題点がすでにネットで叫ばれてた中で起きたこと。それを理解せずに表面だけなぞるから馬鹿みたいな見解を出すはめになる。第2回はそれこそテロリストもインターネットを使って連絡を取り合ってるこの時代に、それだけ取り上げてネットの問題とするのはお門違いなのは明白だろう。第3回は社内人間関係の希薄化をOA化のせいだとする記事らしい。コメントする気も失せるほど馬鹿馬鹿しい話だ。第4回以降はまだ読めるが、一言で言えば「ネットに頼ると人間性が低くなる」という論調。 野球害毒論 と何が違うのか。

しかし、これくらいのことはblogやチャット、掲示板などであればすぐに反応が帰ってくるレベルの話だ。ネットでの言論はそういう意味ではかなりレベルが高い。悪の温床のように言われる2chだってこの座談会よりはマシな議論をしてる。

そう考えると新聞の言論レベルは非常に低いと言わざるを得ない。ネットによって失われるものは、むしろ権威をかさにきた低レベルな言論なのではないか?

司会がまとめにこう言っている。

新聞社も紙の媒体と同時にウェブサイトにニュースを流すネット社会の当事者です。ネット情報に誤りがあれば、訂正やおわびを掲載し、信頼される情報提供を目指しています。

そう言うのであれば、 J-CAST を見習え。ネットの議論に参加しろ。

それをやらなければ、この連載自体が「ネットは悪です。新聞を読みましょう」という利益誘導以外の何ものでもないと邪推されるのは間違いないだろう。 人に風の息づかいを感じろという なら、自分自身がネットの息づかいを感じて見せろ。それは自然の声を聞くより、ずっと簡単なことだ。

(@281)

この記事のURI

2007年02月26日(月) [過去の今日]

#1 LdRでずっと出てこなかったフィードが出てきた

Livedoor Reader を利用するようになったのが昨年の初夏くらいだったと記憶してるが、それ以来一度も新着フィードに上ったことの無いフィードがある。 iwatamの個人サーバ というサイトのフィードなのだが、ここのコラムが秀逸で楽しみにしてただけに、何とかして欲しいと要望を送ったこともあった。こんな現象、うちだけだったのだろうか。

しかし今日、Firefox 2.0.0.2のビルドが終ってなんとなくLdRにアクセスしてみたら、新着フィードのトップに出てるではないか。

いやー、嬉しい。いままでどうして出てこなかったのかも不明だが、やっと出てきてくれるようになった。ちょうど ネット世代の心の闇を探る という新シリーズも始まったところで、今後見のがさずに済むと思うと非常にありがたい。

Livedoor Readerはもはや手放せない重要なツールになってるので、今後ともがんばってもらいたいと思う。

(@272)

この記事のURI

#2 Firefox 2.0.0.2 は無事ビルドできた

以前のビルドエラー もなく、素直にコンパイルできた。 2.0のときと同じ ようにコンパイルするだけ、ビルドエラーは無し。

(@488)

この記事のURI

2007年02月27日(火) [過去の今日]

#1 技術のガラパゴス諸島、ニッポン──日本が貧しくなっていく理由

なんとなく ?B を眺めていたら、 なぜiPhoneは日本で使えないの? という記事と IntelはWiMAXを促進するのか阻害するのか という記事が目に止まった。

二つの記事の共通点は、「日本の携帯電話が独自進化してるために使えない/使いにくい製品になっている」ということだ。

これを見て思い出したのが、 日本は「OSS界のガラパゴス諸島」か? という記事。ITmediaの 日本におけるOSSの幻想──OSS界のガラパゴス諸島、ニッポン という記事に対する/.-jのストーリーだ。

もしかして携帯電話に限らず、日本の技術はガラパゴス諸島のように、他の地域から隔離され始めてるのではないか?

だとしたら、輸出量が低下し、国内需要でどうにかしてることになる *1 。実際、携帯電話はほとんどそうだろう。

80年代まで、日本の製品はコンパクトで壊れにくいという評価をもらい、世界中に輸出されてきた。それが日本の高度経済成長の一因になったのは間違いないだろう。そこから国内需要だけに頼るような商売になっているなら、そりゃ内側で食い合ってるだけで儲かったりしないだろう。ますます貧乏になるだけだ。

俺は経済について詳しくもないからなんとも言えないが、やはりガラパゴス化した技術ばかりじゃ、国全体の利益にはならないだろうとは思うのである。

(@412)


*1: 経済産業省のサイトを漁ってみたのだがそれらしいデータは見つからなかった。ポインタくらい示して欲しいものだが。
この記事のURI

#2 hnsにYOUTUBEコマンドを作ってみるテスト

hnsにyoutubeを貼り付けるテスト なんてものを見つけて、HNS熱再燃。IRCで相談したりして、themes.phに以下のような記述を追加。

package HNS::Hnf::Command::YOUTUBE;
use vars qw(@ISA $Template $EndTemplate $NumAttr $IsOneline $AllowCommands
	    $IsBeginSection $CountName $OmittableEnd);
@ISA = qw(HNS::Hnf::Command::Decoration);
$Template = qq(
<div class="youtube">
<object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/%1"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/%1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object>
</div>
);
$NumAttr = 1;

んでもって日記には

 YOUTUBE bNF_P281Uu4

というようにyoutubeのvidを書く。すると、こうなる。

(@553)

この記事のURI

#3 調子にのってhnsにASINコマンドも作ってみた

YOUTUBEコマンドができたことが嬉しくて、ついついamazonの個別商品リンクを作るコマンドも作ってしまった。

package HNS::Hnf::Command::ASIN;
use vars qw(@ISA $Template $EndTemplate $NumAttr $IsOneline $AllowCommands
	    $IsBeginSection $CountName $OmittableEnd);
@ISA = qw(HNS::Hnf::Command::Decoration);
$Template = qq(
<div class="amazon">
<iframe src="http://rcm-jp.amazon.co.jp/e/cm?t=kitsune-22&o=9&p=8&l=as1&asins=%1&fc1=000000&IS2=1&lt1=_blank&lc1=0000FF&bc1=000000&bg1=FFFFFF&f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>
</div>
);
$NumAttr = 1;

中身はほとんどおんなじ。kitsune-22んとこは自分のアフィリエイトIDに書き換えてね(といっても今時HNS使ってる人なんてなかなかいないだろうけど……)。

(@574)

この記事のURI

#4 嫁シリーズを読んで汚れた自分を知る

嫁シリーズ というはてな匿名ダイアリーの連載されてる記事があるそうだ。

内容はほのぼのとした嫁いじりの話であり、ノロケと言ってもいい内容。「うらやましいなあ」などという感想が上がっている。 俺もそんな風に思ったりもした。

「ああ、いいなあ」「嫁かわいいなちくしょう」「新婚さんなんだろなあ」

「きっとこんな夫婦も、10年もすればお互い罵りあうようになるんだろなあ」

……アレ?

どうやら俺の結婚というものに対する思考回路は、とことん汚れきってるらしい。一生独身間違い無しだな、こりゃ。

(@765)

この記事のURI

2007年02月28日(水) [過去の今日]

#1 ホンダF1マシンと環境問題の本質

Honda Racing F1 Team 、環境をテーマにした新コンセプトを発表 という記事にも写真があるが、Google Earthから写真提供を受けたマシンのカラーリングが評判悪いらしい。

俺は別に悪いとは思わなかったのだがな。むしろスポンサーロゴをここまで排除できたホンダの交渉力と、写真をペインティングするという塗装技術の高さに驚いた。

myearthdream.comのHonda F1:360Rotation というページでは、このカラーリングのF1マシンをぐるぐるまわして遊ぶ事ができる。いろんな角度からじっくり見れるので、おすすめ。

もちろんホンダのイメージとはかけ離れたカラーリングだし、伝統のナショナルカラー *1 とも違う。そういう意味では非常に残念だ。しかし、今までのようなナショナルカラーを施せてたことが、スポンサーの色を使わなくてはならない現代F1では奇跡のような事だったのである。

そしてもちろん、環境問題への真剣な取り組みは重要だ。環境保護活動は勘違いした連中が目立つので、取り組む事自体が馬鹿馬鹿しく思えるかもしれない。しかしリアルな問題として、我々の孫や曾孫の時代には、地球に人間が住めなくなってるかもしれないのだ。

特に 団塊から上の世代に食い物にされてる ことを感じ取れる団塊ジュニア以降の世代には、上の世代の尻拭いをする辛さが身に染みるだろう。それをまた我々が子孫に尻拭いさせてはいけないのだ。

そのためにもできるだけ早く、地球環境を保護しなくてはならない。これは偽善でもなんでもない。ぶっちゃけて言えば 「人間が住むのに都合のいい状態を維持する」ための活動だ。地球というのは、どうも調べると人間が住むのに適した気温や湿度であったことのほうが少ないらしい。それでは困るので、どうにか地球のご機嫌を取って人間が住める状態にしておかなくてはならない。ただそれだけのことなのだ。

もちろんそのためにはたくさんの学問を総動員しなくてはならないし、いざというときのために宇宙や他の惑星に人間が住めるような研究も進めなくてはならないだろう。食料をどこから得るかという問題も解決しなくてはならない。地球の生物を採集して食べられるのはいつまでか、いつまでも採集できるようにするにはどうしたらいいか、それも考えなくてはならない。

そういう事を世間に知らしめるためにも、ホンダのような活動は重要だろう。もちろん企業としてクレームを避けるためのポーズも必要だろうが、それだけじゃ済まないのである。

「そういう事は学者や政治家に任せておけばいい」と言う人もいるが、それは社会主義国家の国民が言うことである。民主主義、資本主義の世界では、彼等に予算を与えたり権力を与えたりするのは一般国民なのだ。世論で学者や政治家を動かさなくてはならないのである。

そのためにも、ネットを使って情報を集めよう。選挙に行って「マシそうな人」、あるいは「ダメそうな人以外」に票を入れよう。機会を見つけて、話題にしよう。

それが子孫に尻拭いをさせないための、活動の一歩になる。

(@257)


*1: ホンダ自身が国際自動車連盟に登録した「アイボリーホワイト地に赤」というのが日本のナショナルカラーなのである。同様、フランスはフレンチブルー、南アフリカはゴールドなど、各国のナショナルカラーが存在しており、ここ数年はそれを意識したカラーリングが主流だった。トヨタも白地に赤のカラーリングを施してるし、マクラーレン・メルセデスもドイツのナショナルカラーであるシルバーにマシンを塗っている。
この記事のURI

#2 超間接的に貢献(?)

実は俺は元々Emacs-w3mのユーザーであった *2 のだが、うちの環境だとFirefoxのほうが速かったりして、結局あまり使わなくなってしまった。それでもEmacs上で見たほうが便利なHTMLドキュメントや、辞書を引きながら読みたい英文 *3 など、Emacs-w3mを利用する機会はまだ多少ある。

そんなわけで昔々にemacs-w3m MLにはsubscribeしてあったのだが、ふと気がつくと この前のGreaseMonkeyスクリプトのEmacs-w3m版commitされ ていた。

もちろんこれは 猫熊さん の功績であって俺は何もしてないのだが、なんとなく自分も間接的に貢献できたような気がしてとてもうれしい。いや、ホントに何もしてないけども、やっぱりなぜかうれしいのである。

返信:

256倍すごい なんてほめられると照れちゃいますが、やっぱりcommiterのほうが1024倍すごいっすよー。

ところでYouTube云々っていうのは こういう奴 ですかね。

(@659)


*2: Netscape4からMozilla M1xくらいの頃は、Emacs-w3mを使うことの方がホントに多かった。
*3: Firefoxでも辞書は引けなくもないのだが、やはりlookup.elが便利なのである。
この記事のURI

#3 ドラクエっぽく写真とセリフを演出

ドラクエふうしゃしんメーカー なるサイトができていた。おもしろそうなので例によってDQMAKERコマンドを作成して張り付け。

おもしろいのだが、ネタがなかなか思い付かない。笑える感じの写真とセリフの組み合わせはどうしたら見つけられるだろうか。

(@861)

この記事のURI

#4 HTMLコマンドがあればいいじゃないか

なんかいろいろコマンド作ってて虚しくなって来た。そもそもHTMLを直接張り付けられるコマンドがあればいいのだ。

というわけで、Command.pmとDiary.pmをRTコマンドの実装を参考にいじくってみた。

--- Diary.pm.orig	2007-03-01 05:46:43.000000000 +0900
+++ Diary.pm	2007-03-01 05:56:09.000000000 +0900
@@ -44,7 +44,7 @@
 use vars qw(%Head %Foot);
 use vars qw($BaseTemplate $NameTemplate $HrefTemplate
 	    %BaseTemplate %NameTemplate %HrefTemplate);	# HNS::Diary::Template
-use vars qw($RTMode @RTBuf);		
+use vars qw($RTMode @RTBuf $HTMLMode @HTMLBuf);		
 use vars qw($YoteiHead $YoteiVal $YoteiFoot);
 @ISA = qw(ObjectTemplate HNS::Diary::Template);
 
@@ -97,6 +97,9 @@
 $RTMode = 0;	# [0:Normal 1:Push 2:Convert]
 @RTBuf  = ();
 
+$HTMLMode = 0;
+@HTMLBuf  = ();
+
 
 $YoteiVal = "<li>%value</li>";
 $YoteiHead = "Schedule\n<ul>";
@@ -546,6 +549,23 @@
 		$RTMode = 0;
 	}
 
+	### HTML
+	if( $hnf_ =~ /^<\!--HTML START-->/ ) { $HTMLMode = 1; @HTMLBuf=(); return; }
+	if( $hnf_ =~ /^<\!--HTML END-->/ ) { $HTMLMode = 2; }
+	if( $HTMLMode == 1 ) {
+		push(@HTMLBuf, $hnf_);
+		return;
+	} elsif( $HTMLMode == 2 ){
+        $hnf_ = '<div class="html">';
+        $hnf_ .= join("", @HTMLBuf);
+        $hnf_ .= '</div>';
+        $hnf_ =~ s/&gt;/>/g;
+        $hnf_ =~ s/&lt;/</g;
+        $hnf_ =~ s/&amp;/&/g;
+		$HTMLMode = 0;
+	}
+
+
 	if ($HNS::System::Caching) {
 		print X $hnf_;
 	}
--- Command.pm.orig	2007-03-01 06:12:05.000000000 +0900
+++ Command.pm	2007-03-01 06:12:18.000000000 +0900
@@ -35,7 +35,7 @@
 			$Entities{'Image'}, $Entities{'Replace'},
 			$Entities{'Comment'}];
 
-$Entities{'Cite'} = ['CITE', 'PRE','INCLUDE','RT'];
+$Entities{'Cite'} = ['CITE', 'PRE','INCLUDE','RT','HTML'];
 $Entities{'List'} = ['UL', 'OL', 'DL'];
 $Entities{'Block'} = [$Entities{'Cite'}, $Entities{'List'}, 'P', 'DIV'];
 
@@ -472,6 +472,16 @@
 $Template = qq(<div class="%1">\n);
 $EndTemplate = "</div>\n";
 
+# HTML command
+package HNS::Hnf::Command::HTML;
+use vars qw(@ISA $Template $EndTemplate $NumAttr $IsOneline $AllowCommands
+$IsBeginSection $CountName $OmittableEnd);
+@ISA = qw(HNS::Hnf::Command::Cite);
+$AllowCommands = [''];
+$Template = "<!--HTML START-->\n";
+$EndTemplate = "<!--HTML END-->\n";
+$OmittableEnd = 1;
+
 ################################################################
 # Sub Entities
 package HNS::Hnf::Command::Sub;

うちは好みで<p>の補完も入れることにした。

+        $hnf_ = '</p><div class="html">';
+        $hnf_ .= join("", @HTMLBuf);
+        $hnf_ .= '</div><p>';

これで以下のようになる。

ほげほげ

うまくいってるかな。

(@876)

この記事のURI

最近の記事

以上、23 日分

タイトル一覧


カテゴリ分類
Powered by hns-2.19.8, HyperNikkiSystem Project

過去にこの日記が置いてあったcgi.misao.gr.jpは廃止されました。それによって記事へのURIが変わってしまっています。cgi.misao.gr.jpをwww.misao.gr.jpと置き換えるだけで同じ記事にアクセスできるはずです。

Sugano "狐志庵" Yoshihisa(E) @ 美紗緒ネットワーク <koshian@misao.gr.jp>
日記管理ページ