2006/10/31

無理がある

俺の母校はこんな方法で世界史を学んでいました。
西武学園「オーストラリアへの修学旅行参加で"世界史B"を履修済み」…県学事課「無理がある」

そういえば、俺も修学旅行でオーストラリアに行きました。
向こうで一所懸命、世界史を勉強してきた覚えがあります。
行っている間にソ連でクーデターが起こり、帰ってきたら国が一つ崩壊していました。

OS Xでバックスラッシュ

Option +¥
でバックスラッシュ。ただの¥じゃだめ。¥nとかやっても改行されないので注意。
OSXでバックスラッシュを打つ方法、覚え書き

2006/10/29

姉ちゃんの自作詩集発見した

世の中には天才がいるもんだ。

「三時間」
体育なんだ
見てるよ
窓から 見てる がんばって
走って! ランニング!
汗をかいたら ふけばいい
足の指の間までふくのはちょっとやかなぁ
でも好きだよ
本当だよ
でも見たくはなかったかなぁ
でも好きだけどさちょっといやだったなー

「藤井」
私は藤井が嫌いです
藤井も私が嫌いだそうです
でも告白されました
でもお断りしました
私は本当に藤井が嫌いだったからです
ごめんね、藤井
学校おいでよ

「藤井」
藤井が学校に来ました
おはようってあいさつしたら
おはようって返事されました
他にも話しかけてきたけど覚えてません
私は本当に藤井が嫌いだから
藤井、話しかけないで

「就職」
私はこの家に就職するぞー!!
だからおこずかいは千円がいいな
「トモダチ」
変な子がともだちになってしまった
毎日おかしい
最後に「にゃん」っていう
絶対変だ
なんでだれも言わないの?
ほんとは日本人じゃないの?
言ったら失礼なの?
勇気がないの・・・
助けて・・・
変なともだちと私を・・・おもに私を・・・

「言ってやった!」
言ってやった
何人なの?って
日本人だった だから
「ニャン、はおかしい!」って
言ってやった
勇気が出た
ともだちはないたけど
私は悪くないと思うんだけどどうかなー
私が悪かったかなー
ごめんよー
でもすごいスッキリした
お風呂はいるぜー
姉ちゃんの自作詩集発見した
姉ちゃんの自作詩集発見した2
姉ちゃんの自作詩集発見した3
姉ちゃんの自作詩集発見した4

まとめサイト

2006/10/21

どうでしょうリターンズ「ハノイ→ホーチミン・原付ベトナム1800キ」

TVKでやっている「どうでしょうリターンズ」
元々は北海道テレビの「水曜どうでしょう」という番組の(北海道テレビでの)再放送番組。
ちなみに再々放送は「どうでしょうClassic」という名前らしい。

今日やっていたのは、ベトナムのハノイからホーチミンまで原付で1800キロ走破するシリーズの2話目。5話完結のシリーズで、しかも「どうでしょうリターンズ」の最終シリーズのようだ。

内容はタイトルのとおり、ひたすら原付(カブ)でベトナムの道を走るのみ。
ものすごいカブの渋滞の中、信号のない十字路を横切り、数十分毎に豪雨と真っ青な晴天でびしょぬれになっては乾き、カッパに着替えては脱ぎながら走る。
たんたんとつぶやきながら。

今後の放送は、10月27日、11月3日、11月10日それぞれ23:00から。
もう、最高。DVD欲しい!

2006/10/19

航海士の日常

航海士便り
航海士の日常を知るのに参考になりそう。

気になったところを一部抜粋。

遭難通信の98パーセントがイタズラ

船が不幸にも遭難し、人命の危険がある場合に発信するのが遭難通信です。あのタイタニック号事件で初めて使用された「SOS」遭難通信はあまりにも有名ですが、この遭難通信システムは交信範囲が狭いため、付近に船がいなければ助けを求めることができませんでした。その欠点を補うため、平成11年(1999年)に義務化されたのが「GMDSS」と呼ばれる新しい遭難通信システムです。人工衛星や中短波を利用するため、世界中どこにいても付近の船だけでなく最寄りの海岸局(海上保安庁など)に直接通信することができるのが特徴です。しかし一見優れた通信システムに見えますが船舶ID番号を変更して遭難通信が発信できる(すなわち発信者が特定できない)という大きな設計ミスがあるため、イタズラ発信が絶えず、なんと遭難通信の98パーセントがイタズラとなってしまいました。またGMDSS方式の導入により専任通信士の乗船が免除されたことで通信の秩序が乱れたこと、そして便宜上の船籍国(パナマやリベリアなど)の罰則が比較的甘いということがイタズラに拍車をかけたとも言われています。98パーセントがイタズラということで毎日けたたましく鳴り響くアラームにどの船もウンザリ、遭難通信を受信しても「またかよ...」という気持ちで即刻停止して内容には見向きもしないというのが現状のようです。因みに某国の漁船団は目覚まし代わりに遭難通信アラームを利用しているという始末、また外国人船員はウサ晴らしに遭難通信を連打しているという有様です。完全に機能を失った現在の遭難通信システム、緊急時には衛星電話で船会社や信頼ある国(先進国)の沿岸警備隊に直接連絡した方が確実という悲惨な状況となってしまいました。ところで最近、携帯電話からの「イタズラ110番」が問題になりましたが、イタズラ多発が続くと命の絆である110番までもが誰も助けに来ない船の遭難通信システムのようになりかねないかも。


上陸時の食事
上陸中の楽しみのひとつが食事です。でもメニューがまったくわからないと大〜変。船が着くところは観光とかけ離れたマイナーなところが多いため、コミュニケーションに苦労してなかなか食事にありつけません。最後の手段は「隣のテーブルと一緒でお願い!」。


現地通貨を手にするまでの苦労
上陸してまず必要なのが現地通貨です。発展途上国を中心に米ドルが使用できる国もありますが、欧州各国(ユーロ移行後はラクでしょうね)や韓国、台湾など経済水準が高い国では現地通貨が必要不可欠です。そこで大変なのが短い上陸時間での両替作業です。タクシーは現地通貨しか受け付けないことが多いため、まず市街地まで米ドルか日本円で行けるタクシー会社探しから始まります。運良く荷役作業員や代理店のクルマに乗せてもらえればラッキーですが、自由時間の都合からそう上手くゆきません。やっとのことでタクシーを呼び、市街地に出たら第2の関門「銀行」が待っています。両替の際に上陸許可証が認められずにパスポートが必要だったり、記入シートの内容が現地語で理解不可能だったりと苦労させられます。また治安の悪い国の銀行は警備が物々しく、入るだけでも気合いがいります。ケニアの銀行は両替所が電話ボックスのように1人づつ隔離されており、背後ではAK-47機関銃を持った警備員が待機、カメラなんて取り出そうもんなら銃殺されそうな雰囲気でした。ところでATMで現地通貨も引き出せるクレジットカードは非常に重宝するのですが発展途上国の小売店では手作業のところも多く、不正されたら大損害を被る恐れがあるため注意が必要です。因みに私はインドで高額商品購入の際に思い切ってクレジットカードを使いましたが、臆病な私はスキミング(カード番号を不正に読みとること)を恐れてカードリーダーに不正がないか店員に嫌がられるほど入念にチェックしました(分解したいのでドライバーを貸して欲しいと言ったけれどダメでした)。

近代化船の登場と廃止
日本人船のコスト競争力回復のため、昭和55年(1980年)頃より1船あたりの乗組員数を減らす試みが官労使一体でプロジェクト化されました。これらは<近代化船>または<パイオニア・シップ>と呼ばれて数々の自動化機器の採用がすすめられ、最盛期には乗組員僅か11名という超大型タンカーも出現しました。近代化船は一定の成功を収めましたが混乗船のコストには到底かなわず、加えて乗組員不足から生じる整備上の問題と過労問題が発生したため平成11年(1998年)に廃止が決定されました。こうして日本の船会社は賃金の高い日本人船員を船乗りとしてだけでなく海運技術者として採用する傾向を強め、陸上での船舶管理を実行できる能力を要求するようになり、これらの知識を養う場として乗船勤務させるようになりました。


意外に多い転勤
陸上勤務中に与えられる社宅も乗船勤務中にはどの船会社も与えていないのが現状です。個人差はありますが、日本の外航船会社ではだいたい数年間の船乗り生活と数年間の陸上勤務を交互に行っているのが普通です。そのため数年間の陸上勤務を社宅で送り海上勤務に移行した際、持ち家がなければ転勤を余儀なくされます(但し正規家賃を払えば社宅を利用できます)。また陸上勤務では他のサラリーマン同様、本社のみならず全国各地の支店や子会社への派遣もあるため船乗りといえども転勤が多いのが事実です。


その他
・海にポイ!。知られざるゴミのゆくえ
・ある日突然、食料がカラッポ。フィリピン人コックの管理能力
・2等航海士の1日
・海賊よけのカカシ
などなど

2006/10/10

水陸両用ヘビ

あ〜、この映像探してたんだ。
やっぱり凄い。

2006/10/09

groovy, rhino, jython, jrubyの実行速度比較

Djangoを触っていたら、Strutsにそのまま戻るのがちょっとつらくなってきたので、Java上で動くスクリプト言語を取り込む方法を模索中。

というわけで、まずは各スクリプトの速度比較を行った。
ベンチマークを取るのに利用したのは下記ページのテストソース。
http://www.javaworld.com/javaworld/jw-03-2005/jw-0314-scripting.html

テストは4つ
alloc array: 100,000個の要素を持つリストの各要素を初期化
alloc matrix: 500個の要素を持つ500個のリストを初期化
compare: 1,000,000個の整数を比較
count: 1から1,000,000までをカウントアップ

それぞれ100回実行して、max/min/averageを記録。結果の単位はms(ミリ秒)。
ソース: script-benchmark-2006-10-09.zip

環境は、
OS: Mac OS X 10.4.8
CPU: Intel Core Duo 2GHz
Memory: 2GB
Java: 1.5.0_06
groovy: 1.0-JSR-06
rhino: 1_6R4
jython: 2.2a1
jruby: 0.9.0



groovyの速度は微妙。一応バージョン2から速度改善を行うらしいが、まだ1のリリースも住んでいないので、当分この速度のままであることは覚悟する必要がある。groovyは簡単にJavaのバイトコードにコンパイルできる。しかし、コンパイルしたclassファイルを直接実行してもインタプリタで実行したものに比べ、10ms程度早くなるなるだけだった。

LanguageJavagroovyrhinojythonjruby
alloc arraymax1329063753872025
min955031341591709
average97.67529.86141.49201.011746.1
alloc matrixmax949311103535768
min2767811705216
average3.86826.2102.0195.795528.97
comparemax6195019180721203
min3177612656318679
average3.71834.16137.63573.2318970.76
countmax314814038712208
min1568920511594
average1.8962.0292.53211.8311819.82


Javaとの実行時間比は:
groovy: 約5.5〜500倍
rhino: 約1.5〜50倍
jython: 約2〜150倍
jruby: 約20〜6000倍
となる。

2006/10/08