最近読みました。お勧めです。ファンタジーというよりは「少し不思議な物語」です。
「西の魔女が死んだ」新潮文庫 梨木香歩著
●西の魔女が死んだ
学校に行けなくなってしまった小学生のマイは、田舎のおばあちゃん(魔女)の家で暮らすことになります。そこで、魔女修行を通して成長していきます。
本中でちょっと心にとまった言葉は、―シロクマがハワイより北極で生きるほうを選んだからといって、だれがシロクマを責めますか。―でした。真面目に頑張りすぎてしまう人に贈りたい言葉です。
●渡りの一日
町に戻ったマイのとある一日の物語です。自分で決めたことを遣り通すという、魔女の教えを自分のものにしていっています。そして、それは少し不思議なことを起こします。
本中でちょっと心にとまった言葉は、―誤解は人生を彩る―でした。
2007年07月31日
2007年07月30日
梅雨が明けたと思っていたのに
今日は一日雨。梅雨明けはまだ先なのかな。
4000万年前には身長170cmの大ペンギンがいたそうな。↓
http://www.technobahn.com/cgi-bin/news/read2?f=200707251639
・旭山動物園のペンギンの散歩が、この大ペンギンで行われたなら。
・後ろから大ペンギンにポンポンと肩を叩かれたら。
・道を歩いていたら、向こうから大ペンギンの一団が行進してきたら。
なんて妄想してみたりして。
4000万年前には身長170cmの大ペンギンがいたそうな。↓
http://www.technobahn.com/cgi-bin/news/read2?f=200707251639
・旭山動物園のペンギンの散歩が、この大ペンギンで行われたなら。
・後ろから大ペンギンにポンポンと肩を叩かれたら。
・道を歩いていたら、向こうから大ペンギンの一団が行進してきたら。
なんて妄想してみたりして。

2007年07月29日
参院選
住民票を移していないので、地元に行って投票しました。
自分予想としては、自民党の支持率を落ちているといっても、どちらかというと政治不信といった方がいいかなと思っていたので、投票率が低くなって自民党が惜敗という感じかなと思っていました。
しかし、今テレビを見てみると「大敗」ですね。内閣メンバのわきの甘さをメディアがこれでもかと突いていたことの影響が大きかったかな。(まあ、わきの甘い人間が重要なポストにいるのが問題なのでしょうが)
社会保険庁の問題などは、与党だけの問題ではないと考えていますし、これをもって安部総理の評価とするのは早計だと思います。すぐに解散総選挙をする必要はないと思いますが、民主党などは追い込みをかけてくるでしょうね。
自分予想としては、自民党の支持率を落ちているといっても、どちらかというと政治不信といった方がいいかなと思っていたので、投票率が低くなって自民党が惜敗という感じかなと思っていました。
しかし、今テレビを見てみると「大敗」ですね。内閣メンバのわきの甘さをメディアがこれでもかと突いていたことの影響が大きかったかな。(まあ、わきの甘い人間が重要なポストにいるのが問題なのでしょうが)
社会保険庁の問題などは、与党だけの問題ではないと考えていますし、これをもって安部総理の評価とするのは早計だと思います。すぐに解散総選挙をする必要はないと思いますが、民主党などは追い込みをかけてくるでしょうね。
2007年07月28日
いかとセロリの炒め物
台湾の家庭料理です。
簡単、リーズナブルでお奨めの一品。
いかとセロリって相性いいんですよ。
【材料(2人前ぐらい)】
・イカ 1ぱい
・せろり 1〜2本
・唐辛子 適量(好みの辛さに合わせる)
・にんにく 1片
【プロトコル】
(1)イカをさばきます。わたをとって、適当(2〜3cmとか)な大きさにきります。
(2)切ったイカに酒をふりかけておきます。
(3)にんにくを細かくきざみましょう。
(4)セロリもざくざくと、適当(1cm幅とか)な大きさにきります。葉がある場合はこれも使いましょう。また、スジをとる必要はないです。
(5)フライパンに油をひき、ニンニクを入れます。
(6)フライパンが熱くなったら、イカと唐辛子を入れて炒めます。
(7)イカに火が通ったら、セロリを入れて炒めます。
(8)酒を1まわしします。
(9)塩・胡椒して、少し経って、酒気が飛んだら出来上がり。
【補足】
セロリの香りが強い方がイカと合うので、スジをとらない方がいいです。
簡単、リーズナブルでお奨めの一品。
いかとセロリって相性いいんですよ。

【材料(2人前ぐらい)】
・イカ 1ぱい
・せろり 1〜2本
・唐辛子 適量(好みの辛さに合わせる)
・にんにく 1片
【プロトコル】
(1)イカをさばきます。わたをとって、適当(2〜3cmとか)な大きさにきります。
(2)切ったイカに酒をふりかけておきます。
(3)にんにくを細かくきざみましょう。
(4)セロリもざくざくと、適当(1cm幅とか)な大きさにきります。葉がある場合はこれも使いましょう。また、スジをとる必要はないです。
(5)フライパンに油をひき、ニンニクを入れます。
(6)フライパンが熱くなったら、イカと唐辛子を入れて炒めます。
(7)イカに火が通ったら、セロリを入れて炒めます。
(8)酒を1まわしします。
(9)塩・胡椒して、少し経って、酒気が飛んだら出来上がり。
【補足】
セロリの香りが強い方がイカと合うので、スジをとらない方がいいです。
私はなぜフレームワークが嫌いか Part2
データベースのフレームワークについて考えてみましょう。
良い道具を作るときのコツはユーザの80%が満足するものにすることです。別の言い方にすると、頻繁に使う(主流となる)利用用途に合わせてつくられるべきです。全員を満足させようとすると、80%のユーザにとって不要、もしくは邪魔といっていいものが付加されてしまうからです。
業務の根幹であるデータベースの周りのプログラムは、その業務や案件の特色の影響をもろに受けます。そのため、十人十色といっていいほどに多様化します。システムによりけりというものです。
つまり、合わせるべき主流となる利用用途はないのです。なので、無理にフレームワークを作ろうとすると、あらゆる使用用途を想定することになるため、うんざりするような多くの設定や規約をつくることになってしまいます。
さてさて、それではどうしたいいのでしょう。
良い道具を作るときのコツはユーザの80%が満足するものにすることです。別の言い方にすると、頻繁に使う(主流となる)利用用途に合わせてつくられるべきです。全員を満足させようとすると、80%のユーザにとって不要、もしくは邪魔といっていいものが付加されてしまうからです。
業務の根幹であるデータベースの周りのプログラムは、その業務や案件の特色の影響をもろに受けます。そのため、十人十色といっていいほどに多様化します。システムによりけりというものです。
つまり、合わせるべき主流となる利用用途はないのです。なので、無理にフレームワークを作ろうとすると、あらゆる使用用途を想定することになるため、うんざりするような多くの設定や規約をつくることになってしまいます。
さてさて、それではどうしたいいのでしょう。

2007年07月26日
ひぐらし
職場でパタパタとプログラミングしていると、外からひぐらしの鳴き声が。
ひぐらしの鳴き声を聞くと、なぜかすごく懐かしい気持ちになって心がざわつく。なんでだろう。
ひぐらしの鳴き声を聞くと、なぜかすごく懐かしい気持ちになって心がざわつく。なんでだろう。
2007年07月25日
「人月の神話―狼人間を撃つ銀の弾はない」
昨日、少し書きましたが、この本はソフトウエア開発の本質をついている定番といえるものです。ソフトウエア開発に携わる人は必読ではないでしょうか。
私が納得したことは「ソフトウエアは人間が作り出すもので、最も複雑なものに含まれる」ということでした。
複雑度という点では、生物に次ぐのではないかなと思います。
この複雑度を認識すれば、机上でシステムソフトウエアの全体を俯瞰することがどれだけ現実的でないことであるかを認識できれば、開発プロセスのパラダイムシフトが起こるかもしれないと思う今日このごろです。
また、別な日に書きますが「ウオーターフォール型」のプロセスは最早、欠陥プロセスです。
私が納得したことは「ソフトウエアは人間が作り出すもので、最も複雑なものに含まれる」ということでした。
複雑度という点では、生物に次ぐのではないかなと思います。
この複雑度を認識すれば、机上でシステムソフトウエアの全体を俯瞰することがどれだけ現実的でないことであるかを認識できれば、開発プロセスのパラダイムシフトが起こるかもしれないと思う今日このごろです。

また、別な日に書きますが「ウオーターフォール型」のプロセスは最早、欠陥プロセスです。
2007年07月24日
脱・人月商売宣言だそうですが
「脱・人月商売宣言」
http://www.atmarkit.co.jp/news/200707/19/starlogic.html
その昔、「人月の神話―狼人間を撃つ銀の弾はない」(Jr.,フレデリック・P. ブルックス)を読んだことがありました。 数十年前に既に「人月」というのが、どれだけあてにならないものかが述べられていたのにも関わらず、現在でも標準として使用されているのですから困ったものです。
「脱・人月商売宣言」は、未だ「要件定義の神話―要件定義フェーズに要件定義を完了できるユーザはいない」を解決できていないので、すぐにブレイクスルーにはならないでしょう。
それでも、試行錯誤を行うことに意味はあると思いました。
http://www.atmarkit.co.jp/news/200707/19/starlogic.html
その昔、「人月の神話―狼人間を撃つ銀の弾はない」(Jr.,フレデリック・P. ブルックス)を読んだことがありました。 数十年前に既に「人月」というのが、どれだけあてにならないものかが述べられていたのにも関わらず、現在でも標準として使用されているのですから困ったものです。
「脱・人月商売宣言」は、未だ「要件定義の神話―要件定義フェーズに要件定義を完了できるユーザはいない」を解決できていないので、すぐにブレイクスルーにはならないでしょう。
それでも、試行錯誤を行うことに意味はあると思いました。

2007年07月23日
ちいさいことからコツコツと
Windows上で、Nmapをコンパイル&ステップ実行するためのVisualC++をセットアップする手順をまとめてみました。
http://winter-tail.sakura.ne.jp/
(左フレームメニューのNMapから)
しかし、ホームページ作成はなかなか進まない。。。
困ったものです。
http://winter-tail.sakura.ne.jp/
(左フレームメニューのNMapから)
しかし、ホームページ作成はなかなか進まない。。。

困ったものです。
2007年07月22日
鬼無里
この夏、行こうと思っているところです。
紅葉伝説が有名です。紅葉伝説については、↓のウィキペディアに詳しいです。
http://ja.wikipedia.org/wiki/%E7%B4%85%E8%91%89%E4%BC%9D%E8%AA%AC
鬼女紅葉と貴女紅葉。一人の女性について正反対な性格を1000年以上も語りづかれたきたのは何故か。どんな想いがあったのか。そんなことを想像すると、なんか楽しくなります。
紅葉伝説が有名です。紅葉伝説については、↓のウィキペディアに詳しいです。
http://ja.wikipedia.org/wiki/%E7%B4%85%E8%91%89%E4%BC%9D%E8%AA%AC
鬼女紅葉と貴女紅葉。一人の女性について正反対な性格を1000年以上も語りづかれたきたのは何故か。どんな想いがあったのか。そんなことを想像すると、なんか楽しくなります。
2007年07月21日
私はなぜフレームワークが嫌いか
「私はなぜフレームワークが嫌いか」
http://local.joelonsoftware.com/mediawiki/index.php/(Forum)_%E7%A7%81%E3%81%AF%E3%81%AA%E3%81%9C%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF%E3%81%8C%E5%AB%8C%E3%81%84%E3%81%8B
というものを読みました。ちょっと触発されたので、私もフレームワークについて書いてみます。
以前、私もフレームワークのようなものを開発していたことがあります。機能的には今のHibernateのようなデータベースのフレームワークでした。
その時にフレームワーク開発には「バランス感覚」というものが、とても重要になることを知りました。
「どんなものにも使える汎用的なものを作ろうとすると、どんなものに対してもろくに使えないものができあがる」
引用したコラムの中にも同じようなことが書かれていますが、これも実感できます。
「プログラマーは隠蔽するのは好き、隠蔽されるのは微妙」
フレームワークの開発していると色々なものを隠蔽したくなります。そうすれば使う人はきっと便利に違いないと。
しかし、フレームワークを使っていると、「そこは隠さないでよ」というところが多々でてきます。
例えば、Strutsのタグライブラリのアプローチは、はっきり失敗と言えます。
HTMLは比較的シンプルな言語です。それをわざわざ隠蔽することで、脳の負担は
HTML → 画面イメージ
で済むところが、
タグライブラリ → HTML → 画面イメージ
となってしまいます。
また、SQLについても同じことがあります。SQLはRDBを扱うために最適化されている言語です。これを隠蔽して、SQLを生成するための別の設定ファイルを準備させるのは全くナンセンスと言えます。
では、どんなアプローチがベターなのか。それは・・・(続きはWebで
)
http://local.joelonsoftware.com/mediawiki/index.php/(Forum)_%E7%A7%81%E3%81%AF%E3%81%AA%E3%81%9C%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF%E3%81%8C%E5%AB%8C%E3%81%84%E3%81%8B
というものを読みました。ちょっと触発されたので、私もフレームワークについて書いてみます。
以前、私もフレームワークのようなものを開発していたことがあります。機能的には今のHibernateのようなデータベースのフレームワークでした。
その時にフレームワーク開発には「バランス感覚」というものが、とても重要になることを知りました。
「どんなものにも使える汎用的なものを作ろうとすると、どんなものに対してもろくに使えないものができあがる」
引用したコラムの中にも同じようなことが書かれていますが、これも実感できます。
「プログラマーは隠蔽するのは好き、隠蔽されるのは微妙」
フレームワークの開発していると色々なものを隠蔽したくなります。そうすれば使う人はきっと便利に違いないと。
しかし、フレームワークを使っていると、「そこは隠さないでよ」というところが多々でてきます。
例えば、Strutsのタグライブラリのアプローチは、はっきり失敗と言えます。
HTMLは比較的シンプルな言語です。それをわざわざ隠蔽することで、脳の負担は
HTML → 画面イメージ
で済むところが、
タグライブラリ → HTML → 画面イメージ
となってしまいます。
また、SQLについても同じことがあります。SQLはRDBを扱うために最適化されている言語です。これを隠蔽して、SQLを生成するための別の設定ファイルを準備させるのは全くナンセンスと言えます。
では、どんなアプローチがベターなのか。それは・・・(続きはWebで

2007年07月20日
初めにC言語やっといて良かった
と思います。
http://www.linux.or.jp/JF/JFdocs/hacker.html
の「4.1 プログラムの学び方」でもC言語は薦められていますが、
C言語を通して、プログラムのディープなところをやっていたおかげでC言語よりも高級な言語は結構短期間で習得できますし、
また、C言語でプログラミングする時にアセンブラ言語ないしCPUの命令セットを、意識しながら書いていたおかげで高級言語でも、速いプログラムを書くにはどうあるべきかが見えます。
NMAPのソースを読むこともできますしね
・・・といっても難しいですが。
http://www.linux.or.jp/JF/JFdocs/hacker.html
の「4.1 プログラムの学び方」でもC言語は薦められていますが、
C言語を通して、プログラムのディープなところをやっていたおかげでC言語よりも高級な言語は結構短期間で習得できますし、
また、C言語でプログラミングする時にアセンブラ言語ないしCPUの命令セットを、意識しながら書いていたおかげで高級言語でも、速いプログラムを書くにはどうあるべきかが見えます。
NMAPのソースを読むこともできますしね

2007年07月19日
ハック・ザ・NMap パート3
ハッカーへの一歩。
とりあえず、ということでNmapのmain.ccを見てみました。
/* Trap these sigs for cleanup */
#if HAVE_SIGNAL
signal(SIGINT, sigdie);
signal(SIGTERM, sigdie);
#ifndef WIN32
signal(SIGHUP, sigdie);
signal(SIGCHLD, reaper);
#endif
#endif
ああ、懐かしい・・・
C言語のソースを見るの久しぶり・・・
思えば、会社に入って初めて覚えたのはC言語(Unix)だった。で、初めて開発したのは、C言語のUnixデーモンプロセスだったなあ。それから、UnixのInitデーモンもどきを開発したりしていました。
そのおかげで、Unix固有のプロセス通信・シグナル・プロセス管理・メモリ管理などのプログラミングのノウハウを身につけられました。
よく考えると、プロセス管理・シグナル管理手法などの”常識”をまとめた書籍ってみたことないなあ。会社でも口伝的なもので継承している気がします。
SIGCHLDも結構曲者なんですよね。親プロセス側で、非シグナルセーフな関数を使っていると、タイミング次第で子プロセスが終了してSIGCHLDを親プロセスが受信すると停止してしまったり。
色々と悩んだ思い出があります。
とりあえず、ということでNmapのmain.ccを見てみました。
/* Trap these sigs for cleanup */
#if HAVE_SIGNAL
signal(SIGINT, sigdie);
signal(SIGTERM, sigdie);
#ifndef WIN32
signal(SIGHUP, sigdie);
signal(SIGCHLD, reaper);
#endif
#endif
ああ、懐かしい・・・

思えば、会社に入って初めて覚えたのはC言語(Unix)だった。で、初めて開発したのは、C言語のUnixデーモンプロセスだったなあ。それから、UnixのInitデーモンもどきを開発したりしていました。
そのおかげで、Unix固有のプロセス通信・シグナル・プロセス管理・メモリ管理などのプログラミングのノウハウを身につけられました。
よく考えると、プロセス管理・シグナル管理手法などの”常識”をまとめた書籍ってみたことないなあ。会社でも口伝的なもので継承している気がします。
SIGCHLDも結構曲者なんですよね。親プロセス側で、非シグナルセーフな関数を使っていると、タイミング次第で子プロセスが終了してSIGCHLDを親プロセスが受信すると停止してしまったり。
色々と悩んだ思い出があります。
2007年07月18日
ハック・ザ・NMap パート2
ハッカーへの一歩。
WinPcapはパケットキャプチャするためのものなのですね。マニュアルを見ると、1パケット単位での送信関数も用意されてるみたい。
nmapとWinPcapをステップ実行するための環境を構築中。ステップ実行してみた方がわかりいいですものね。
・Visual C++ (Express Edition)
・Windows® Server 2003 SP1 Platform SDK Web Install
この2つでフリーで環境構築可能のようです。
WinPcapはパケットキャプチャするためのものなのですね。マニュアルを見ると、1パケット単位での送信関数も用意されてるみたい。
nmapとWinPcapをステップ実行するための環境を構築中。ステップ実行してみた方がわかりいいですものね。
・Visual C++ (Express Edition)
・Windows® Server 2003 SP1 Platform SDK Web Install
この2つでフリーで環境構築可能のようです。
2007年07月17日
ハック・ザ・NMap
ハッカーへの一歩。
有名なセキュリティツールである「Nmap(Windows版)」をハックしてみようと思って、ソースを見てみました。
ソケットを生モードで開いているかと思っていたのですが、WinPcapライブラリというものを使って通信しているみたい。なんだこれ?
マニュアルは
http://dog.tele.jp/winpcap/html/main.html
にあった。とりあえず、こちらのソースも落としてハックしてみようか。
有名なセキュリティツールである「Nmap(Windows版)」をハックしてみようと思って、ソースを見てみました。
ソケットを生モードで開いているかと思っていたのですが、WinPcapライブラリというものを使って通信しているみたい。なんだこれ?
マニュアルは
http://dog.tele.jp/winpcap/html/main.html
にあった。とりあえず、こちらのソースも落としてハックしてみようか。
2007年07月16日
2007年07月15日
IT業界のメルヘン
風の音がすごい。唸ってる。
昔、システムの受託開発をやっていたころのこと、ご他聞に漏れず毎日深夜残業となっていました。
そんな時、誰からともなくこんな声が、
「後は小人さんにまかせて帰ろうよ」
まあ、実際に小人さんが開発をしといてくれたことは無いのですが、なんか帰る決心をつけるのに使う言葉でした。
また、深夜残業の帰り道の自転車を、小人さんが代わりにこいでくれたことが結構ありました。
ネットで、「小人さん」「妖精さん」を検索すると、結構でてくるので、苦しいときに考えることは皆同じということかな。
昔、システムの受託開発をやっていたころのこと、ご他聞に漏れず毎日深夜残業となっていました。
そんな時、誰からともなくこんな声が、
「後は小人さんにまかせて帰ろうよ」
まあ、実際に小人さんが開発をしといてくれたことは無いのですが、なんか帰る決心をつけるのに使う言葉でした。
また、深夜残業の帰り道の自転車を、小人さんが代わりにこいでくれたことが結構ありました。
ネットで、「小人さん」「妖精さん」を検索すると、結構でてくるので、苦しいときに考えることは皆同じということかな。
2007年07月14日
台風接近中
台風接近中というのに外は凪ぎ。
ダイオウイカが最近良く見つかるようになっているそうです。
http://www.technobahn.com/cgi-bin/news/read2?f=200707131407
うーん。10m級のダイオウイカ。泳いでいるところを見てみたい。素敵だろうなあ。
深海では、実際は最大何メートルのダイオウイカがいるんだろう。
ちょっと前までは、マッコウクジラと戦うぐらい活発と思われていたようですが、最近では結構大人しい性格と言われているそうです。
ダイオウイカが最近良く見つかるようになっているそうです。
http://www.technobahn.com/cgi-bin/news/read2?f=200707131407
うーん。10m級のダイオウイカ。泳いでいるところを見てみたい。素敵だろうなあ。

深海では、実際は最大何メートルのダイオウイカがいるんだろう。
ちょっと前までは、マッコウクジラと戦うぐらい活発と思われていたようですが、最近では結構大人しい性格と言われているそうです。
2007年07月13日
『いいね、そういうの好きよ。』
なんか、やってると見ちゃうんですよね。「魔女の宅急便」。
タイトルのセリフは、劇中の絵描きの女性のものですが、なんかシンプルというか、素直というか、ストレートというか、なぜか心に響く感じがして好きです。
タイトルのセリフは、劇中の絵描きの女性のものですが、なんかシンプルというか、素直というか、ストレートというか、なぜか心に響く感じがして好きです。
2007年07月12日
常冬のフロア
以前に勤めていた会社での話。
フロアの室温調節って、そこにいる人員構成によって変わるんですよね。
真夏でも、女性がいるとちょっと気を使って設定温度を高めにしたりします。
夏のある日、私は別フロアの部長に所用があったので、後輩クンを伴って向かいました。そして、エレベータを降りたのですが、、、寒い!とても寒いのです。尋常ではないのです。
私は、地球の気候が急に変わっちゃったのかなと思いましたので、後輩クンに
「外の様子を見てきて!早く!」と行かせました。そして、戻ってきた後輩クンは、
「地球は無事です!」とのこと。
「とりあえず行こう」と、意を決してフロアの奥にいる部長のところに向かいましたが、フロアを見まわしてみると、なるほど、男性社員しかしない。しかし、それにしてもこれは一体・・・・。体感的には冷蔵庫の中に半袖でいるぐらいでしょうか。だんだん、眠くもなってきました。
しかし疑問は、部長の机の前に立ったとき解けました。そこには、額に汗を浮かべながら仕事をする太り気味の部長がいました。
とりあえず、後輩クンと「どんだけ暑いねん」とつぶやいときました。
※事実にもとづいたフィクションです。
フロアの室温調節って、そこにいる人員構成によって変わるんですよね。
真夏でも、女性がいるとちょっと気を使って設定温度を高めにしたりします。
夏のある日、私は別フロアの部長に所用があったので、後輩クンを伴って向かいました。そして、エレベータを降りたのですが、、、寒い!とても寒いのです。尋常ではないのです。
私は、地球の気候が急に変わっちゃったのかなと思いましたので、後輩クンに
「外の様子を見てきて!早く!」と行かせました。そして、戻ってきた後輩クンは、
「地球は無事です!」とのこと。
「とりあえず行こう」と、意を決してフロアの奥にいる部長のところに向かいましたが、フロアを見まわしてみると、なるほど、男性社員しかしない。しかし、それにしてもこれは一体・・・・。体感的には冷蔵庫の中に半袖でいるぐらいでしょうか。だんだん、眠くもなってきました。
しかし疑問は、部長の机の前に立ったとき解けました。そこには、額に汗を浮かべながら仕事をする太り気味の部長がいました。
とりあえず、後輩クンと「どんだけ暑いねん」とつぶやいときました。
※事実にもとづいたフィクションです。