2006/12/30

WorkStyle更新

WorkStyleのmockup ver 1.2.2とJava版 ver 1.0aをsourceforge.jpにアップしました。
まだリリースメモやら何やら何も書いてませんが、取り急ぎ。

2006/12/25

宇宙版グーグルアース

NASAの観測によれば、宇宙は現在137億歳
ということは、中心から137億光年より外側に宇宙はないということだ。
そんな宇宙をグーグルアースのようにぐりぐり探検できるアプリを国立天文台の4次元デジタル宇宙プロジェクトが作っている。

国立天文台のある三鷹から離陸し、地球を離れ、太陽系の外へ出ると、天の川がいつの間にか銀河系になる。グーグルアースとは違い3次元+時間の4次元でできているため、時間軸も移動できる。地球から飛び立った人工衛星を追いかけるのもいいし(ボイジャー1号2号などいくつかの人工衛星のデータもある)、星座線を表示して北斗七星を横から見るのもいい。
大きな画面と偏光眼鏡があるならば、立体モードも楽しんでみたい。そんな環境がない人は三鷹の天文台のシアターに行けばよい。

このアプリは無料で公開されている。いや、凄い。
# Mac版がないことだけが非常に残念。
# Mac版が欲しいという要望はきているらしいので、作ってくれるといいんだけどな。

4D2U4D2U4D2U4D2U

2006/12/11

WorkStyleモックアップ更新

WorkStyleのモックアップを更新し、version1.2.1をリリースしました。
変更内容は下記の通り。詳しくは全バージョンとのdiffを取ってください。

  • atomに優先度、工数、作成日を追加
  • 検索条件のアコーディオンを改良
  • JavaScriptテンプレートの文字化けを修正
  • 細かい修正各種

workstyle_mock_1_2_1

2006/12/10

片山ゲリオン

これはすごい、アホすぎる、いやすごい。

2006/12/09

Mac OS XでWindows

Parallels Desktop for Mac新しいβ版が出ていた。
もう、現在のリリース版で文句なしだと満足していたが、今回のβ版によってParallelsはさらに凄いことになっている。
新機能はいろいろ追加されているが、その中でも特に気に入ったのは以下の4つ。

  1. BootCamp上のWindowsをParallelsから使えるようになった
    • Parallelsでも十分な実行速度があるが、万一速度が気になる場合、BootCampから立ち上げれば良い。
  2. drag & drop対応
    • Mac→Windows、Windows→Macどちらも可能。
  3. OS画面全体のウィンドウをリサイズ可能
    • ウィンドウをリサイズすると、Windowsの画面の解像度を自動的に調節してくれる。中途半端な解像度(964×696ピクセルとか)も全然余裕。
  4. コヒーレンスモード
    • Windows上で実行しているアプリケーションのウィンドウのみ残して、他の部分を消してくれる。まるでWindowsのアプリを直接Mac上で利用している感じ。
最もインパクトがあるのは4。ただどれも本当に便利。
しかもこの更新は現在のリリース版に対して無償アップデートされるバージョンになるらしい。

コヒーレンスモードの例1:SafariとIE7
parallels

コヒーレンスモードの例1:FinderとExplorer
parallels2
ちなみに、FinderとExplorerで同じディレクトリ(A)を開き、A on ExplorereからA on Finderへファイルを移動しようとするとそのファイルは消えてしまった。逆でも同様。

2006/12/08

Wiiによる破壊活動が進行している

すんごい楽しそう。
きっと彼女もそのうち何かを壊すだろう。
Wii欲しくなってきたな。

2006/12/07

Groovy 1.0 RC-1リリース

Groovy 1.0のRC-1が出たようだ。
このニュースによれば、今月末にはバージョン1を出すらしい。

100あまりのバグ修正にあわせて、移行期間中はサポートされていた昔の仕様(クロージャの|など)が完全に仕様から外れた。
早速コードベースをRC-1に変更しなくては。


---
追記:
作りかけのWorkStyleが動かなくなってしまった・・・。
調べたら、親クラスにはあるが子クラスにはないstaticなメソッドを子クラスから呼ぶことができなくなっていた。
一応バグ報告しておいたが、1.0リリースまでに直してくれるだろうか。
ユーティリティ系のクラスにstaticなメソッドが多いので、結構つらい。

2006/12/05

姉ちゃんの自作詩集(続報)

姉ちゃんの自作詩集発見したが本になったらしい。
レビューを見るとほんとに詩集っぽく編集している感じがするのが気になるが、他の詩も載っているなら読んでみたいものだ。

2006/12/02

Mouse Locator

Mouse LocatorMouse Locatorはマウスの周りに円を表示し、場所を強調するアプリ。
下記の設定にすると、プレゼンやデモのときに非常に便利。

  • Show Button Clicks: YES
  • Display Time: 無限大
  • Fade Locator When Mouse Button Pressed: YES
  • Tigger Delay: 1s

好きな画像を「MouseLocator.png」という名前でピクチャディレクトリにおいておくと、その画像を強調表示に利用してくれる。
ちなみに右のスクリーンショットは自作の画像を設定したときのもの。

Paparazzi!

Paparazzi!はMac OS XでWebのスクリーンショットを取るのに便利なアプリケーション。
スクリーンショットを取りたいページのURLを指定し、「Capture」を実行すると、ページの頭から最後までを含めたスクリーンショットを作成してくれる。

動作画面:
paparazzi

スクリーンショットのサンプル:
Random Note-20061202

Mac OS Xでスクリーンショットにマウスポインタを含める方法

基本的なことなんだろうが、なかなかやり方が分からなかった…。

OS Xに入っている「グラブ」を利用するとマウスポインタを含めたスクリーンキャプチャが可能になる。
# 「グラブ」はアプリケーション>ユーティリティの中にある。

キャプチャの方法:


  1. グラブの環境設定でカーソルの種類を選択する

  2. グラブの「取り込み」メニューから画面を取り込む


grab

2006/11/24

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

groovy, rhino, jython, jrubyの実行速度比較に対して、JRubyの実行速度について下記のコメントをもらった。

Charles Oliver Nutterwrote

Can you run again with JRuby 0.9.1, or better yet with JRuby trunk? 0.9.1 is twice as fast as 0.9.0, and trunk is almost twice as fast again.
というわけで、とりあえず0.9.1について再度テストを実行。
その結果は下記のとおり。
testmaxminaverage
alloc array1104575692.11
alloc matrix231918672012.87
compare871761656543.73
count463941414320.07

0.9.0と比較すると、その実行速度は
  • alloc array:約2.5倍
  • alloc matrix: 約2.75倍
  • compare: 約2.9倍
  • count: 約2.7倍
という結果。
compareとcount以外はほぼGroovyと同じ。
現在のtrunkに対してはまだテストしていないが、これがさらに2倍程度早くなるとしたら、Jythonに近づくことになる。

Groovyも頑張れ。超頑張れ。

WorkStyle mockup version1.2

WorkStyleのモックアップを更新しました。
変更内容は下記のとおり。

  • タスクに優先度、〆切、作成日を追加
  • 各画面をよりシンプルに
  • HTMLソースのリファクタリング
WorkStyleの機能についてはこれで一旦FIXする予定です。
# インポートとエクスポート機能を追加するかもしれませんが。

DBTestCase更新

データベースを利用するユニットテストを簡易化するDBTestCaseの0.1.3をリリースしました。

変更内容は下記のとおり。

  • DBのトランザクションをテストクラスと共有できるように変更
  • DBTestCase.prepareがinsert前にdeleteを行っていたのを、insertのみに変更
バージョンは0.1.3ですが、ドキュメント以外の必要な機能は全てそろっています。
下記のようなExcelファイルを用意しておき、
  • Excelのシート名にテーブル名を記述
  • 表の1行目にカラム名を記述(削除する場合にキーにするカラム名は太字にする)
  • 2行目以降は必要なデータを入力
このように利用します。

public class RoleManagerTest extends DBTestCase {
Connection con = null;

protected void setUp() throws Exception {
super.setUp();
con = getConnection(); // autocommit = falseなコネクション
prepare(con, new Classpath("package/tree/TestDataExcel.xls"));
}

protected void tearDown() throws Exception {
super.tearDown();
con.rollback();
}
}


トランザクションをコミットしたい場合は、テスト終了後のデータ廃棄にはDBTestCase#clear()を利用します。

2006/11/18

【まる・てん.てん・】

Yahoo Japan! Internet Creative Award
で大賞をとった【まる・てん.てん・】というブログツールがちょっとすごい。

どうすごいかは、ここでツール自体を実際に見てみてほしい。

2006/11/16

TextMateでGroovy

GrailsチームのリーダーGrame RocherがTextMate用のGroovy環境を作ってくれたらしい。

Getting Groovy with TextMate
このサイトに、TextMateのGroovy用バンドルについての詳しい説明がある。

バンドルのtarボールがcodehausのsubversionにあるところを見ると、そのうちgroovyの公式サイトのIDEサポートのプラグイン情報のところにも出てくるだろう。

リリースノートはこちら


インストール方法:

  1. tarボールをダウンロードし、解凍する
  2. bundleファイル(Groovy.tmbundle)を~/Library/Application Support/TextMate/Bundlesにコピーする。
  3. TextMateを起動する

TextMateからGroovyを実行:
前提:Groovyをインストールし、GROOVY_HOMEを設定してあること。
  • 実行したいGroovyファイルをTextMateで開いた状態でCommand + Rで実行
  • 実行したい行を選択しCommand + Optiion + Rで選択した部分だけを実行

サイエンティストはマッドであるべきだ

1:05から始まるエンジン音が恐ろしい。

2006/11/12

Velocityでテンプレートを継承する方法

VelocityでDjangoのテンプレートのように基底のテンプレートをextendするための方法。

継承ができると何がいいか?
なぜそれほどうらやましいのか?


1. 基本となるレイアウトを1つのファイルで記述し、
  変更が必要な部分のみ別のテンプレートに記述できる。
2. 基本レイアウトの変更可能部分についても、デフォルトの記述が可能。
3. 階層的に複数のレイアウトを継承できる(Aを継承したBを継承したCを・・・)
4. したがって、継承した側のテンプレートでは「本当に変更が必要な部分のみ」
  記述すれば良い。

重要なのは2と3。

デフォルト記述の例:

例えばWebサイトで他の基本的なレイアウトは同じだがメニューだけが違うページが複数あるような場合を考える。
VelocityLayoutServletであれば、メニューだけが違う基本レイアウトテンプレートをそれぞれ用意するか、もしくはマクロなどでメニューを動的に変更できるよう工夫する必要がある。



上記の継承が使えた場合は、よく使われるメニューをデフォルトとして記述した基本レイアウトを1つ用意し、異なるメニューが必要な場合のみ拡張先のテンプレートで記述すればよい。




階層的な継承の例:

上の例であるメニューの中に、さらに特定のレイアウトが共通する複数のページを作る場合を考える。
VelocityLayoutServletであれば、・・・もう考えるのいやだ・・・な・・・となる。
継承が使える場合、前の基本レイアウトを継承した基本レイアウトを作る。簡単!




Velocityでテンプレート継承
いくつか方法はあると思うが、ユーザディレクティブを利用する方法を採用した。
velocity toolsではなく、velocity自体に継承機能を追加するため、どこででも利用できるのが利点。

今回、ユーザディレクティブに追加したのは下記の2つ。
# extends('継承元ファイル')
# block('ブロック名')

手順1:
ディレクティブの実装クラスをダウンロードし、適切な場所に追加する。
velocity-template-extends.zip

手順2:
velocity.propertiesに下記のユーザディレクティブ設定を追加する。
#-------------------------------
# USER DIRECTIVE
#-------------------------------
userdirective=org.apache.velocity.runtime.directive.Extends
userdirective=org.apache.velocity.runtime.directive.ExtendBlock


以上、終了。


使用方法

extendsディレクティブ
extendsはparseディレクティブの変形で、extends〜endまでの部分をパースしてから継承元ファイルをパースするディレクティブ。

A.vm:

#extends('B.vm')
A特有の内容をここに(普通はblockディレクティブ以外を書くことはない)
#end

B.vm:
Bの内容
A.vmのパース結果:
A特有の内容をここに(普通はblockディレクティブ以外を書くことはない)
Bの内容


blockディレクティブ
blockはテンプレートの「部分」を定義するディレクティブで、extendsの範囲外にある場合のみパース結果を書き出す。
同名の「部分」が複数ある場合は、常に最初に定義された「部分」が後から出てきた「部分」を上書きする。
1.vm:
#block('X')
最初に定義したXブロック
#end
#block('X')
次に定義したXブロック
#end

1.vmのパース結果:
最初に定義したXブロック
2.vm:
#extends('3.vm')
#block('X')
最初に定義したXブロック
#end

3.vm:
基本テンプレートではXブロックを定義していない
2.vmのパース結果:
基本テンプレートではXブロックを定義していない

4.vm:
#extends('5.vm')
#block('X')
最初に定義したXブロック
#end

5.vm:
#block('X')
ここでXブロックを定義
#end

5.vmのパース結果:
最初に定義したXブロック


継承の例
basic_layout.vm:
基本レイアウトをここに。
#block('menu')
デフォルトのメニュー
#end
#block('contents')
デフォルトの内容があれば、ここに
#end

pageA.vm
#extends('basic_layout.vm')
#block('contents')
内容だけ変更
#end
#end

pageB.vm
#extends('basic_layout.vm')
#block('contents')
独自の内容
#end
#block('menu')
メニューも変える。後ろで定義しても、最終的にはextendsの外での並び順になる。
#end
#end

pageAのパース結果:
基本レイアウトをここに。
デフォルトのメニュー
内容だけ変更


pageBのパース結果:
基本レイアウトをここに。
メニューも変える。後ろで定義しても、最終的にはextendsの外での並び順になる。
独自の内容

EclipseでJakartaのコードフォーマットを利用する

参照:http://wiki.apache.org/directory/IdeHome

Apache.orgではEclipseのコードスタイルの設定用ファイルを用意しているので、ファイルを取得し、Eclipseにインポートしてやればよい。

Eclipseの設定方法は下記の通り。

  1. Windowメニュー→Preferences > Java > Code Style > Formatter
  2. 「import」ボタンを押下。上記URLから取得したファイルを選択してインポート。

実際にこのフォーマットを適用するには、ソースファイルの中で
  • 右クリック→Source→Format
  • Shift + Cmd + F (OS Xの場合)

2006/11/08

割礼

動画
ゴンッ!! ピョン!

2006/11/03

Free Hugs

フリーの協調フィルタリングエンジン

Taste

Javaで作られたフリーな協調フィルタリングエンジン。
・User-based Recommender
・Item-based Recommender
・Slope-One Recommender
の3つの方法によるレコメンデーションが可能。

アプリケーションとの連携方法もいくつかパターンがある。
Direct
直接、アプリケーションに埋め込む方法。

Standalone server
別サーバとして起動し、HTTPリクエストかSOAPによって連携する。

EJB
ステートレスセッションBeanを通して利用する方法。Javaで作られたフリーな協調フィルタリングエンジン。

  • User-based Recommender
  • Item-based Recommender
  • Slope-One Recommender
の3つの方法によるレコメンデーションが可能。

アプリケーションとの連携方法もいくつかパターンがある。
Direct 直接、アプリケーションに埋め込む方法。
Standalone server 別サーバとして起動し、HTTPリクエストかSOAPによって連携する。
EJB ステートレスセッションBeanを通して利用する方法。

OS XでISOイメージを焼く

OS Xでは標準でついてくる「ディスクユーティリティ(Disk Utility)」を使ってisoイメージの作成とCD/DVDへの焼き付けが出来る。

■isoイメージの作成
参照:http://osx-navi.main.jp/Utilities/dmg.html

ディスクイメージの作成方法:
ファイルメニュー→「新規」→「フォルダからのディスクイメージ」でイメージ化したいフォルダを選択。
「イメージ」ボタンをクリック→保存場所を指定すれば自動的に作成してくれる。
暗号化(パスワード設定)も可能。

CD/DVDをディスクイメージにする:
CD/DVDをセットし、ファイルメニューの「新規」→「"〜”からのディスクイメージ」を選択します。

Windowsで開けるISO形式のディスクイメージを作成する場合:
保存時の「イメージフォーマット」を「DVD/CDマスター」で「保存(作成)」する。
作成されたイメージファイルの拡張子は「.cdr」なので、「.iso」に書き換えればWindowsでも開ける。

■isoイメージをCD/DVDに焼く
ディスクユーティリティで「ディスクを作成」ボタンを押下し、isoイメージを選択する。

2006/11/02

IDEに求めるもの

IDEの個人的な評価軸のメモ

- リファクタリングがさくさく出来る → EclipseのJDTいいね
- ユニットテストがさくさく出来る → EclipseのJDTレベルあれば十分
- ステップ実行が出来る → ま、大抵のIDEはできる。
- Subversionとの統合 → CVSはなくていい
- コード補完 → TextMateのスニペットはすごいね。
- 動作の軽さ → 起動の重さは多少は我慢する
- コードブラウジングの容易さ → 関連する複数ソース間の往来

他になんかあったかな?
最近のVisualStudioはどんな感じなのだろうか。

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

2006/09/30

ジンベエザメのいる水族館

沖縄美ら海水族館
ジンベエザメのいる水槽

プロジェクトの遅延衝撃

プロジェクトの遅延による影響の度合いを数値化する式。

遅延衝撃をdとすると、その求め方は、

d = ( log2(遅延する日数) +1 ) / ( log2(現在から予定期日までの日数) +1 )

である。このポイントは2つある。

- たくさん遅延するほど大きくなる
- 予定していた期日までが近いほど急激に大きくなる


たとえば、32日前に8日の遅延が判明したら、
(3+1)/(5+1) = 0.666

たとえば、1日前に1日の遅延が判明したら、
(0+1)/(0+1) = 1

たとえば、4日前に8日の遅延が判明したら、
(3+1)/(2+1) = 1.33

たとえば、1日前に4日の遅延が判明したら、
(2+1)/(0+1) = 3

Ringo's Weblog

2006/09/29

とりかえしのつかないことをしてしまった。

An Inconvenient Truth

地球温暖化をテーマとした映画。

もはや二酸化炭素やメタンの排出抑制でコントロールできる段階ではない気がするが、実際のところ、どうなんだろう?

ゲームのリアル

第2回:ゲームのリアルって何よ!?

ゲームのリアリティは「現実」を目指さない。プレイヤーの気持ちを目指す。
現実感<リアリティ>を作り出す人間の認知構造って、今、ものすごく興味がある。
院にいる間にこの興味が湧いていれば良かったんだが。

2006/09/03

groovyのインストール

環境:
Mac OS X(10.4.7)
JDK1.5.0_06
groovy-1.0-JSR-06

配置
/usr/local/groovy-1.0-JSR-06
/usr/local/groovyからリンクを張った

環境変数の設定
/Users/hisaboh/.bash_profile
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi


/Users/hisaboh/.bashrc
export PATH=$PATH:/opt/local/bin:/usr/local/groovy/bin

ここでgroovyshを実行すると、下記のエラーが出て実行できない。
java.lang.SecurityException: Prohibited package name: java.lang
at java.lang.ClassLoader.preDefineClass(ClassLoader.java:479)
at java.lang.ClassLoader.defineClass(ClassLoader.java:614)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at org.codehaus.groovy.tools.RootLoader.loadClass(RootLoader.java:143)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at org.codehaus.groovy.tools.RootLoader.loadClass(RootLoader.java:143)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.codehaus.groovy.tools.GroovyStarter.rootLoader(GroovyStarter.java:121)
at org.codehaus.groovy.tools.GroovyStarter.main(GroovyStarter.java:160)

対処方法は以下の通り
[#GROOVY-1386] command line tools fail with SecurityException on OSX - jira.codehaus.org
Groovy on a Mac

startGroovyの中のこの部分を
# For Darwin, use classes.jar for TOOLS_JAR
TOOLS_JAR="$JAVA_HOME/lib/tools.jar"
if $darwin; then
TOOLS_JAR="/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Classes/classes.jar"
fi

コメントアウト
# For Darwin, use classes.jar for TOOLS_JAR
TOOLS_JAR="$JAVA_HOME/lib/tools.jar"
#if $darwin; then
# TOOLS_JAR="/System/Library/Frameworks/(中略)
#fi

2006/08/27

Mac(satie)のtomcat設定

設定
CATALINA_HOME=/usr/local/tomcat

起動・終了設定

# cd /Library/StartupItems
# mkdir Tomcat
# touch StartupParameters.plist
# touch Tomcat
# chmod +x /Library/StartupItems/Tomcat/Tomcat


StartupParameters.plist
{
Description = "Tomcat Server";
Provides = ("TOMCAT");
OrderPreference = "Early";
Messages =
{
start = "Starting Tomcat Server";
stop = "Stopping Tomcat Server";
restart = "Restarting Tomcat Server";
};
}


Tomcat
#!/bin/sh

export CATALINA_HOME=/usr/local/tomcat
export JAVA_HOME=/Library/Java/Home
. /etc/rc.common

StartService() {
if [ "${TOMCAT:=-NO-}" = "-YES-" ]; then
ConsoleMessage "Starting Tomcat"
sudo -u hisaboh $CATALINA_HOME/bin/startup.sh
fi
}

StopService() {
ConsoleMessage "Stopping Tomcat"
sudo -u hisaboh $CATALINA_HOME/bin/shutdown.sh
}

RestartService() {
if [ "${TOMCAT:=-NO-}" = "-YES-" ]; then
ConsoleMessage "Restart Tomcat"
sudo -u hisaboh $CATALINA_HOME/bin/shutdown.sh
sudo -u hisaboh $CATALINA_HOME/bin/startup.sh
else
StopService
fi
}

RunService "$1"


手動での起動・終了
# SystemStarter start "TOMCAT"
# SystemStarter stop "TOMCAT"


起動設定
/etc/hostconfig
TOMCAT=-YES-もしくはTOMCAT=-NO-

2006/08/25

俺…やめるんだ

ワラタ2ッキ グランドクロス

金星  「あれさ、グランドクロス?おまえ参加する?」
木星  「うぃ」
火星  「参加」
地球  「一応いまんとこ」
海王星「あー・・・あれなぁ・・俺公転周期微妙にあわねぇんだよなぁ・・・」
水星  「マジ?」
天王星「周期なげーと大変なんだよなぁ」
土星  「だよな、そっちどーよ?」
冥王星「いや、おれ・・・」
金星  「どしたん?」
冥王星「その、おれ・・・無理なんだ・・・」
海王星「なんで?周期だいじょぶっしょ?」
冥王星「そうじゃなくて・・・」
水星  「なになになに、まさか自転がらみ?あらあらあらきてんじゃねーこれ、うはww」
冥王星「はは・・・そうじゃないよ。そうじゃなくて・・・俺やめるんだ」
木星  「うん?」
冥王星「……惑星・・・止めるんだ」
一同  「…」

なんたらかんたら 冥王星「あたい…間違ってたんだ…」

98 :VIPがお送りします :2006/08/23(水) 21:32:52.11 ID:OaQeOOp60
みんなが楽しそうにあの人の周りを回ってるの見て、いいなぁって思ってた。
ここはとても寒くて、でも私はこんなだし、でも…さびしくて。
いつのまにか、こっそり私も回ってた。みんなみたいにうまくいかなかったけど。

見つかっちゃった時は少し恥ずかしかった。でも、うれしかった…
みんなが私に気づいてくれた。ここは寒いけど…もう寒くなかった。
私はもう、一人じゃないんだって。そう思えた。
でも…やっぱりいけない事だった。みんな今まで騙してゴメンね。やっぱり私には資格がなかった。

今まで私を仲間にしてくれて、ありがとう。
みんなにたくさんのあったかい思い出をもらったから、私はそれで十分です。

どうか、私が勝手に回ることをゆるしてください。
うまく回れるように、今も頑張っています。
そうしたら、もしかしたら、また…
それは絶対にない。頭ではわかってる。でも、そうせずにはいられない私を、どうかゆるしてください。

2006/08/22

模様替え

夏が終わるので、部屋を夏仕様に変更した。
過ぎ去ってゆくものを、とどめおけないものを。失われていく記憶に

Before
模様替え(Before)模様替え(Before)


After
模様替え(After)模様替え(After)模様替え(After)

2006/08/21

ケルロン・モウラ・ソウザ

このドリブルを実現できる選手がいるとは!
早く代表の試合で見てみたいなぁ。



2006/07/27

IntelMacにDarwinPortsでrubyをインストール

こんなのでた。

---> Fetching zlib
---> Attempting to fetch zlib-1.2.3.tar.bz2 from http://www.zlib.net/
---> Verifying checksum(s) for zlib
---> Extracting zlib
---> Configuring zlib
---> Building zlib with target all
---> Staging zlib into destroot
---> Packaging tgz archive for zlib 1.2.3_0
---> Installing zlib 1.2.3_0
---> Activating zlib 1.2.3_0
Error: Target com.apple.activate returned: Image error: /opt/local/include/zconf.h already exists and does not belong to a registered port. Unable to activate port zlib.
Error: The following dependencies failed to build: zlib
Error: /opt/local/bin/port: Status 1 encountered during processing.

しょうがないので、
sudo port -dv install ruby
とやると、

Error: Target com.apple.build returned: shell command "cd "/opt/local/var/db/dports/build/_opt_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_dports_devel_openssl/work/openssl-0.9.8b" && make all CC=/usr/bin/gcc-4.0" returned error 2
Command output: /usr/bin/libtool: internal link edit command failed
making all in engines...
make[1]: Nothing to be done for `all'.
making all in apps...
rm -f openssl
shlib_target=; if [ -n "libcrypto.0.9.8.dylib libssl.0.9.8.dylib" ]; then ?
shlib_target="darwin-shared"; ?
fi; ?
if [ "${shlib_target}" = "darwin-shared" ] ; then ?
LIBRARIES="../libssl.a ../libcrypto.a" ; ?
else ?
LIBRARIES="-L.. -lssl -L.. -lcrypto" ; ?
fi; ?
make -f ../Makefile.shared -e ?
APPNAME=openssl OBJECTS="openssl.o verify.o asn1pars.o req.o dgst.o dh.o dhparam.o enc.o passwd.o gendh.o errstr.o ca.o pkcs7.o crl2p7.o crl.o rsa.o rsautl.o dsa.o dsaparam.o ec.o ecparam.o x509.o genrsa.o gendsa.o s_server.o s_client.o speed.o s_time.o apps.o s_cb.o s_socket.o app_rand.o version.o sess_id.o ciphers.o nseq.o pkcs12.o pkcs8.o spkac.o smime.o rand.o engine.o ocsp.o prime.o" ?
LIBDEPS=" $LIBRARIES -L/opt/local/lib -lz" ?
link_app.${shlib_target}
( :; LIBDEPS="${LIBDEPS:-../libssl.a ../libcrypto.a -L/opt/local/lib -lz}"; LDCMD="${LDCMD:-/usr/bin/gcc-4.0}"; LDFLAGS="${LDFLAGS:--fPIC -fno-common -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -O3 -fomit-frame-pointer -fno-common}"; LIBPATH=`for x in $LIBDEPS; do if echo $x | grep '^ *-L' > /dev/null 2>&1; then echo $x | sed -e 's/^ *-L//'; fi; done | uniq`; LIBPATH=`echo $LIBPATH | sed -e 's/ /:/g'`; LD_LIBRARY_PATH=$LIBPATH:$LD_LIBRARY_PATH ${LDCMD} ${LDFLAGS} -o ${APPNAME:=openssl} openssl.o verify.o asn1pars.o req.o dgst.o dh.o dhparam.o enc.o passwd.o gendh.o errstr.o ca.o pkcs7.o crl2p7.o crl.o rsa.o rsautl.o dsa.o dsaparam.o ec.o ecparam.o x509.o genrsa.o gendsa.o s_server.o s_client.o speed.o s_time.o apps.o s_cb.o s_socket.o app_rand.o version.o sess_id.o ciphers.o nseq.o pkcs12.o pkcs8.o spkac.o smime.o rand.o engine.o ocsp.o prime.o ${LIBDEPS} )
/usr/bin/ld: warning /opt/local/lib/libz.dylib cputype (18, architecture ppc) does not match cputype (7) for specified -arch flag: i386 (file not loaded)
/usr/bin/ld: Undefined symbols:

_deflate
_deflateEnd
_deflateInit_
_inflate
_inflateEnd
_inflateInit_
collect2: ld returned 1 exit status
make[2]: *** [link_app.darwin] Error 1
make[1]: *** [openssl] Error 2
make: *** [build_apps] Error 1

Warning: the following items did not execute (for openssl): com.apple.activate com.apple.build com.apple.destroot com.apple.archive com.apple.install
Error: /opt/local/bin/port: Status 1 encountered during processing.

こんなのが出てきた。
要するに、/opt/local/lib/libz.dylibがppc用になっていて、i386用になっていないのが原因らしい。

ググッタところ、調査方法と対処方があったので、それに従ってまずは確認。

satie:~ hisaboh$ file /opt/local/lib/libz.dylib
/opt/local/lib/libz.dylib: symbolic link to `libz.1.2.2.dylib'
satie:~ hisaboh$ file /opt/local/lib/libz.1.2.2.dylib
/opt/local/lib/libz.1.2.2.dylib: Mach-O dynamically linked shared library ppc

ということで間違いなくppc用になっているのが原因。
ソースコード版のDarwinPortsを入れればいいようなので、まずは既存のDarwinPortsをアンインストール
http://wiki.opendarwin.org/index.php/DarwinPorts:FAQ#How_do_I_remove_or_uninstall_DarwinPorts.3F


satie:~ hisaboh$ sudo rm -rf /opt/local/ /Library/Tcl/darwinports1.0


/Applications/DarwinPortsと/Library/StartupItems/DarwinPortsStartupはなかった。

ソースコード版を入れようかと思ったが、そもそもどこからDarwinPortsをインストールしたか覚えていなかったので、一度だけ、dmgを試してみようかと。
http://darwinports.opendarwin.org/getdp/からDarwinPorts-1.2.1-10.4.dmbをダウンロードしてインストール。


satie:~ hisaboh$ sudo port selfupdate
satie:~ hisaboh$ sudo port install ruby

したら無事成功。

ソースコード版を入れる必要はなかった。

2006/07/17

フランス縦断

ワールドカップをDVDに移しておこうと思ってTVをつけたら、
NHKで「世界遺産 フランス縦断の旅」をやっていた。
だいぶ前にイタリア縦断をやっていたが、そのフランス版。

今日は2日目。船でセーヌ川を下って行くのをたんたんと1時間半生中継。
この散歩の空気感を持つ番組はすばらしい。

セーヌ川にも船に住んでいる人が結構いるんだな。
結構広くて、中にオフィスがある船を見せてもらっていた。
なんてうらやましい生活だ。

川下りがしたい・・・。
やっぱりシベリア行くべきか?

2006/07/08

flickrアップ完了

やっとアップとタグ付けが終わった。
いくつか友人までしか公開していないものがあるので、
全部見たい人は連絡ください。
(flickrのアカウントを取る必要があります。)

2006/07/04

flickr

ランカウイ、マレーシアランカウイ、マレーシアランカウイ、マレーシアランカウイ、マレーシアランカウイ、マレーシアランカウイ、マレーシアランカウイ、マレーシア芝生の海でiraq146爛れた日々キクミ家にてなっちゃんの家に遊びに行ったゴールデン街でデビッドと奄美大島iraq146iraq33iraq97恭子の誕生日?ライド、俺たちはどこにいたのだろうかライド、俺たちはどこにいたのだろうか
写真のバックアップ用にflickrのアカウントを取った。
基本的には他の人が撮った写真以外は公開している。
ちょっとこの写真は隠しておいてくれ、というのがあったらすまんが連絡をくれ。

他に誰かオンラインの写真共有サービス使っている人はいないかな?

空中浮遊ベッド

できればこんなベッドをプレゼントしたい。

2006/06/24

サッカー日本代表

86年 木村和司のフリーキックに夢を見た
90年 は憶えていない
94年 アメリカ大会予選、座り込んだラモスの背中に無念を知った
96年 オリンピックでブラジルを破り
98年 フランスで初めて本大会の芝を踏んだ
00年 シドニー五輪でベスト8、世界との距離が一気に縮まり
02年 自国開催。グループリーグ突破も不完全燃焼に終わる
06年 グループリーグで敗退。夢のようなチームが夢のまま消えた。

サッカーを始めた頃、W杯の存在を知らなかった。
日本代表を応援し始めた頃、W杯とは予選のことだった。
幸運なことに3回も本大会に出場できた。
ジュール・リメへの道はまだ遠い。

前園が消え、カズも去った。
城も伊東ももう代表には戻ってこない。
中田・川口はいつまで現役でいられるだろうか。
俺らの世代のサッカーはもうすぐ終わる。

幸せな日々だった。
もう戻ってはこない。

ブラジル戦

さ、勝負だ。

2006/06/15

Macの小技

林囓より

☆ 同種のアプリケーションウィンドウをDockへ一括収納
通常アプリケーションウィンドウをDockへ収納するときに、ツールバーをダブルクリックするのはみなさんご存じでしょうが、Optionキーを押しながらこの動作をすると、同じアプリケーションのウィンドウを全部 一度に収納することができます。
Optionキー+ツールバーをダブルクリック


☆ ファイルを開いたままの複製、エイリアス作成
ファイルを開いたままウィンドウ上部のプロキシアイコンをドラッグすることで、任意のフォルダに移動することができます。
この時Optionキーを押すとコピー(複製)になります。


☆「情報を見る」の状態で他のファイル情報へ切り替える
Finderのメニューバーから「ファイル」をクリック(プルダウン)して、Optionキーを押すと「情報を見る」が「インスペクタ」に変わります。
この状態で表示させると、矢印キーを押すことで他のファイルやフォルダの情報へ次々と切り替えることができます。(Optionキー+コマンドキー+「I」でもOK)
(他にも変わる項目がありますのでお試しあれ)


☆ エイリアス(Windowsでいうショートカットアイコン)を作成
任意のファイルやフォルダをOptionキー+コマンドキーを押しながらドラッグするとエイリアスを作成することができます。

(頭文字Sさん ありがとうございました)


☆ テキストクリッピング
例えば、Webサイトでメモしておきたい文章などを選択してデスクトップへドラッグすると「テキストクリッピング」というファイルが作成され、テキストの内容を保存することができます。

2006/06/14

くやしくなる画像

http://2log.blog9.fc2.com/blog-entry-1017.html

復活

ようやく傷が癒えた。
まだまだあきらめない。

日本がクロアチアに勝って、ブラジルがオーストラリアに勝てば、
ブラジル戦が最高に面白くなるんだから。

2006/06/13

CASSHERN(キャシャーン)はもっと評価されていい

ちょうど今日TVでキャシャーンを放送していたので、前に映画館で見たときに思わず書いた感想を再掲。

---
最も感嘆したのは、ラスト。
というか、ラスト5分のために、退屈な2時間30分の前振りがある。
だが、この退屈でお尻の痛くなる2時間30分があるおかげで、ラストの凝縮度・速度がものすごい。

1〜2分くらいの間にものすごいスピードの中で
カラマーゾフのイワンとアリョーシャの対話を展開しながら、
すべての伏線の意味をつまびらかにし、
敵のボスに絶望の中での死をあたえ、
答えられない問いを問いかける。

キャシャーンは現代の仏典である。
エヴァはLCLの液体の中で皆が溶け合い、ひとつになる極楽の1つの形を
提出したが、キャシャーンが提供したのは
液体の中で常に復活し続けてしまう地獄の世界。

復活を前提とした輪廻転生の世界の中で
終わらない戦いの連鎖をどうやったら断ち切ることができるのか。

安定をもたらすシステムによる抑圧を禁止し(アメリカ・イスラエル)、
愛するものを奪われた憎しみによる戦いを禁止し(テロ)、
愛する人のために生きることを禁止し(家族)、
抑圧される者たちの救済を禁止し(キリスト?)、
その上で、なすべきことはなんであるかと、
キャシャーン(我々)は問われる。

キャシャーンがやらねば誰がやる!
そんなこと言ったって、そこまで禁止されてキャシャーンにいったい何ができる?

映画は、残念ながら安直な答えを提示して終わる。
いわく、
「人間は生まれ、存在するだけで他人に迷惑を与える」
「だから、まずは他人が存在することを許さなくてはならない」
「人がお互いに許しあうことで、はじめて世界は穏やかに回り始める」

はっきり言って、ダメダメである。
ま、といっても、そのひとつ前の段階で、
「愛する人のために生きる」というもうひとつの安易な答えを否定した上で、さらに次を探っているので、この終わり方は単に原作による制限なのかもしれない。

ただ、このような安直な終わり方をしてもなお、この映画の価値は減じられることはない。
なぜなら、その答えはありえない、ということを映画自身が証明しているから。
この映画の中では、この答えにかかわる伏線だけが常にリアリティのない演出で表現される。
というか、どうやったとしてもリアルでありえない状況でしか「赦し」は行われない。
それは、奇跡として、または信仰としてのみ許されている行為である。
その奇跡を奇跡でないものとして描くために、映画は最後にキャシャーンとその恋人の間に、希望という名の子供が生まれた、としてラストを飾る。

もちろん、そこで生まれるものは希望でなどありえはしない。
そこで生まれるのは絶望であり、その絶望のために彼らは輪廻の輪からはずれて永久に消滅する悟りの道を見出す。

エヴァは「逃げちゃダメだ」と叫んで、LCLの海から陸(現実世界)に戻り
キャシャーンは「逃げろ」と叫び、輪廻の海から宇宙(そら)へと逃げ出した。

少なくとも、今、キャシャーンが問われた問いに対する答えは悟りの道しか存在しないだろう。
だけど、さらにうがって見れば、その悟りの道でさえ実際にはお話の中にしか存在しない(キャシャーンはSFである。現実ではない。)。

アメリカがあり、イラクがあり、イスラエルがあり、パレスチナがある。
愛する人がいて、殺される人がいて、殺す人がいる。
少なくとも我々が生きるこの世界でキャシャーンの問いは有効だ。
そしてその問いに答えることは今の俺にはできない。

---
追記:
キャシャーンは反戦映画として見てはいけない。
反戦映画として見てしまうと、かなり糞だ。
般若心経みたいなものとして見た方がいい。

---
ちなみに、キャシャーンはかなりエヴァを意識していると思う。
エヴァとは正反対だけれども。
# エヴァの「逃げちゃダメだ」に対してキャシャーンの「逃げろ」
# エヴァの「LCL」に対するキャシャーンの「新造細胞」
# エヴァのラスト2話に対するキャシャーンのラストシーン
# エヴァのキリスト教に対するキャシャーンの仏教

俺の感想は、「やっぱりイエス・キリストは仏教徒だよな」ってところかな。

2006/02/22

空中庭園


たまたまギンレイホールで二本立てでやっているのを見た。
怖い映画、とても怖い。

理性的であることは、それ自体が感情的だ。
理性的でしかいれないことは、悪夢だ。

2006/02/13

アニメオタクにスロットの打ち方を教えよう

ワラッタ2ッキ

アニメオタクにスロットの打ち方を教えよう
28 :名無しさん@お腹いっぱい。:2006/01/15(日) 18:34:02 ID:E7f23oDe
ちゃんと教えるよ、ネタスレもいいけど本当にヲタでも打ちたい人はいるだろうから。

まず店に入ったら打ちたい台を探す。
台があったら、誰もいなくてもすぐ座っちゃダメ。まず下皿を見るの。
ここで下皿にタバコとかライターとか携帯とかお財布とか奈良の大仏とかが置いてあったら、それは誰かが台をキープしてるってこと(予約みたいなものね)だから、座っちゃダメ。
無事何も置いてない台を見つけたら、座ってみよう。
夢に見たアニメキャラの台だよ。液晶とか付いてるし。デモ画面可愛いようわぁとかボーッと見てると池沼確定だから、まずメダルを借りよう。
メダルは台の左か右にあるメダルサンドで借りるんだよ。千円札を入れるところが店によって違うけど、どこかにあるから、そこに千円札を入れるんだ。
そうするとメダルが50枚出てくるから、それを全部下皿に入れる。
最近はメダルが勝手に下皿にレール伝って入ってくれるところも多いけどね。
メダルを借りたら、さぁ打ってみよう。
メダルは1ゲームまわすのに3枚いるから、3枚入れる。入れるところは台の右側のほうにあるはず。
そうしたらレバーを叩くんだ、レバーは左のほうにあるちいちゃい玉っころのことだよ。
レバーっていっても初めてみたら「これレバーじゃねぇだろ?ただの玉にしか見えねぇ!」とか思っちゃうだろうけど、そんなこと知るかよ。ダルくなってきたからもう書くのやめる。氏ねよアニヲタ。

31 :名無しさん@お腹いっぱい。:2006/01/15(日) 19:08:23 ID:+Nu+w2l4
>>28
ヒドスww

最後の注文

最後の注文
グレアム・スウィフト著

ドストエフスキーは、作中人物に自分の言葉に対する執拗な言い換え/言い訳をいつまでも続けさせることで、言葉を伝えることのできない他者(=存在)を描いた。
スウィフトは作中人物の言葉を何度も反復し、常に言葉を発したものの意図せぬ意味をその言葉に与え続けることによって他者を表現している。
どこかの批評家は、「スウィフトの本を読むことは、神が精神分析を行うのを見ているようだ」と評したらしい。
この小説において、精神分析が行われているのは間違いない。問題は、それを行っているのが果たして神か否かだ。
神なら、良くできた佳作。他者なら傑作。

ただし、この小説を本当に面白く読むにはデキャンタ(=批評/分析)が必要だと思う。


ちなみに、スウィフト読むなら、まずはウォーターランドを読むべきだ。
こちらは文句なく彼の最高傑作だから。

2006/02/10

workstyle-java 0.3

workstyle-javaのversion0.3をアップしました。

workstyle-spec 1.1.3に対応。
- 関連タスクを追加
- タグ管理機能の強化
- Ajax化
など。

基本的に欲しい機能はだいたいそろったはずなので、
今後は細かいバグ修正と、
WorkStyleを利用してタスク管理をする方法をまとめる予定。

workstyle-spec 1.1.3

workstyle-specの1.1.3をアップしました。
変更内容はWorkStyle Ajax版開発上の注意にあげたものの修正、およびIEでAjax部分が動作しないバグの修正。

# 今バージョンでは、Webサーバ上に配置しないとIEではきちんと動作しないので注意。
# POSTのアクションを受け付けないため

2006/02/08

さよならウンコ

さよならウンコ
831 :名無しさん@明日があるさ :2006/02/07(火) 17:26:58
「わたしを捨てないで!」とうんこは云った
肛門は何も云わずにうんこを捨てた
何か云いたげに肛門はひくつくが
ため息ひとつも出さないで
黙ってうんこを捨てたのだ

うんこは水たまりに転がった
未練げに肛門を見上げてる
水浸しになったうんこは
涙を流していたとしても
それと判別できなかった

肛門は別れ際の口づけを
白いハンカチで拭う
白いハンカチにはうんこの残した紅の跡
それは水たまりに投げ捨てられた
うんこを覆い隠すように

そんな悲しい結末を
ちんこは眺めてた
ふぐりのかげから人知れず
うなだれながら眺めてた
こんな別れを見るたび
彼は涙を流すのだ

2006/02/06

存在論的ニュース

良いニュースと悪いニュース
621 :マロン名無しさん :2006/02/05(日) 10:16:30
「良いニュースと悪いニュースがありますが…」
「悪いニュースから聞こうか」
「悪いニュースは、良いニュースがないことです」

622 :マロン名無しさん :2006/02/05(日) 10:48:25
で、良いニュースは?

623 :マロン名無しさん :2006/02/05(日) 10:51:58
そりゃ悪いニュースがそれしかない事だろ

タイプ・O・ネガティブ

男の子のために売らなかったバイオリン
487 名前: バイオリン 1/3 投稿日: 02/12/12 20:59
ある町の骨董屋。
店に並べられている骨董品の中には一挺のバイオリンがあった。

ある日、店に一人の男の子がやって来ると
店の主人に「あのバイオリン、いくらですか」と訊いてきた。
主人が値段を言うと、男の子は「・・・全然足りないや」
とうつむいてがっかりした様子だったが、顔を上げると
「お金もって、また来ます」と言って帰っていった。

数日後。
主人は男の子が新聞配達のバイトを始めたことを偶然知る。
男の子は、その体には大きすぎる自転車に新聞を積んで坂道を登っていた。
一生懸命ペダルをこぐ男の子の姿を、主人はじっと見つめていた。

それからしばらくたったある日。
主人がいつものように店番をしていると、身なりのいい男性が店を訪れた。
男性は店の中の骨董をいろいろと眺めていたが、バイオリンに目を留めると
主人に向かって「あれはいくらかな」と訊ねてきた。
主人が「いえ、あのバイオリンは・・・」と口ごもると
男性は「なんだ、売り物じゃないのかい。しかし私はあれが気に入ったんだ。これでどうだろうか。ぜひ譲って欲しい」
とバイオリンの値段の何倍もの額のお金を取り出し、主人の前に置いた。
主人は思いがけない金額を前にして、少しの間考えていたが、やがて
「申し訳ありません。やはりお売りするわけにはいきません」と男性に告げた。
「やっぱりダメか。残念だが、仕方ないな」男性はそう言うと帰っていった。

それから数ヵ月後。
「あのバイオリン、まだありますか?!」
新聞配達で貯めたお金を持って、男の子が店にやってきた。
しかし、店の中にバイオリンは見あたらない。
男の子がキョロキョロと店内を探していると
「待ってたよ」
主人は男の子に微笑みかけ、あの日以来、誰にも買われないように奥の棚にしまっておいたバイオリンを持ってくると、男の子の前に差し出した。
ぱあっと笑顔になった男の子が目をキラキラさせて、バイオリンを手にしようとしたその時、

バ  キ  ン  ッ ! !

主人の手がバイオリンをへし折った。
呆然としている男の子に向かって、主人はうれしそうに一言。
「これが私の楽しみ」

2006/01/29

WorkStyle Ajax版開発上の注意

現在、java版を作ってますが、モックアップからそのまま移行しているときに、
いくつか引っかかったものがあるので、メモ。

・local.jsをプログラムから生成する場合
 サーバから返すときのcontents-typeを"application/x-javascript"にする。
 → そうでないと、他のjsと連携できない(Safariで確認)

・local.jsでリクエスト方法をGETとしているものはPOSTに変更する。
 → なぜかGETでは動作しなかった(Safari, Firefox, Caminoで確認)
   モックアップもあとで要修正。

・TaskDetail.htmlの中の「〜が存在する場合はdisplay:none」を設定というのは
 「〜が存在しない場合はdisplay:none」の間違い。コメントなどがない場合はdlやtableが
 表示されない方がよいため。

2006/01/26

WorkStyle更新

workstyle-spec-1.1.2
・Safari対応(1.1.1)
・モデルが1.1.1で落ちてしまっていたのを修正

workstyle-java-0.2.2
・非Ajax版の最終版となる予定
・見積もり工数登録部分のバグを修正

2006/01/23

workstyle-spec1.1

WorkStyleのモックアップversion1.1をアップしました。

変更点は、
・タスクの関連付けに対応
・タグ管理機能の強化
・AJAX化
です。

Macデビュー

Intel Mac買っちった。
家のネットワークどうしようか考えていたら、
いつの間にか有楽町にいて、気がついたらiMacが家にあった。

どうしようか考えながらセットアップしてたら、
どっかの無線LANにつながっちゃった。
・・・ま、いっか。
早いうちに自前のネットワークを用意しよう。

さてと、ターミナルはどうやったら動くのかな?

2006/01/16

頭のいい人のPC用壁紙の探し方

360 :水先案名無い人:2006/01/15(日) 23:07:21 ID:K14AGldd0
  425 名前:番組の途中ですが名無しです:2006/01/15 19:31:34 ID:d3fGhIsv0
  だれか壁紙くれ

  431 名前:番組の途中ですが名無しです:2006/01/15 19:33:04 ID:Vfpw2ZM10
  >>425
  http://images.google.co.jp/images?sourceid=navclient-ff&ie=UTF-8&rls=GGGL,GGGL:2005-09,GGGL:ja&q=1024%20768&sa=N&tab=wi
363 :水先案名無い人:2006/01/16(月) 00:26:45 ID:MExVocfB0
ソノハッソウハナカッタワ

2006/01/12

workstyle-java 0.2→0.2.1

WorkStyle(Java版)のバージョン0.2をアップしました。
変更点は
・IE対応
・Atomフィード追加
・mockup0.2対応
・その他各種修正
です。

0.1からバージョンアップする場合は、
これまでのデータはすべてwebapps/workstyle/WEB-INF/dataの
中にあるので気をつけてください。
詳しくは付属のドキュメントを参照のこと。

http://sourceforge.jp/projects/workstyle/

追記:
Atomに不具合があったので、修正版を0.2.1として
出しなおしました。

2006/01/10

中村屋

なんなんだ、これは。

2006/01/07

WorkStyleモックアップ1.0.1

WorkStyleのモックアップを更新しました。
・IE対応
・使い勝手を少しだけ向上
・その他細かいスタイルの修正

http://sourceforge.jp/projects/workstyle/

追記:
エンティティ・モデルも更新しました。
・SQL-92準拠に修正
・添付ファイルをタスクから独立(タスク:ファイル=N:N)

2006/01/06

workstyle-java 0.1

WorkStyle(Java)のver0.1をアップしました。
0.1とは言ってますが、一通りすべての機能を使うことができます。

今のところ、warファイルしかアップしていません。
これをtomcat等にデプロイするだけでインストールは終了です。

ま、良かったら使ってみてください。
http://sourceforge.jp/projects/workstyle/