2003年3月

結城浩の日記

目次

2003年3月31日 (月) - 私信

私信:http://www.hyuki.com/mcsg/のへのリンクが切れていると教えてくださった方、 どこからのリンクか教えていただけますか?

2003年3月31日 (月) - ハムハム劇場 / クリエイティブ・コモンズ関連文書の日本語訳

まだ多忙。

最近、次男とよく見ているページ「ハムハム劇場」。 特に右側の「ハムハムの童歌(わらべうた)」は秀逸。

「コミック版:クリエイティブ・コモンズのライセンス解説」に続き 「コミック版:クリエイティブ・コモンズのライセンス範囲」を翻訳・公開しました。 クリエイティブ・コモンズ関連の翻訳がたまってきたので、別途インデクスページを作りました。

[コミック版(ライセンス範囲)]

[コミック版(ライセンス解説)]

2003年3月28日 (金) - 仕事

多忙のため、 3日ほど大魚のお腹にこもりますので(ヨナ・ジョーク)、 日記はお休みします。

2003年3月27日 (木) - 暖かい日

きょうはとても暖かい一日でした。

[NC] 新連載、だいぶ具体化。 とりあえず第一回目の原稿を送って、 編集者さんに検討してもらう。

2003年3月26日 (水) - お風呂でクイズ

長男とお風呂。

長男「ねえ、クイズだして!」

私「じゃあ、3つの数を順番にいうから、4つめの数をあてるんだよ。」

長男「うん」

私「0, 0, 0, 次は?」

長男「0。簡単」

私「じゃあ、1, -1, 1, 次は?」

長男「-1。簡単」

私「どうして-1なの?」

長男「だって(といって指を出し)1でしょう。そしてぴょんと-1でしょう。でぴょんと1だから、次は-1」

私「ふんふん。じゃあねえ。1000, 100, 10, 次は?」

長男「次は、1。簡単だよ」

私「じゃあ、その次は?」

長男「え? 1000, 100, 10, 1, その次は…0かな。いやいや。10分の1だ」

私「その通り。賢いねえ」

長男「へへ」

私「10分の1の代わりに0.1といってもいいね」

長男「10で割っていくんでしょ」

私「その通り。小数点を1つずつ左に動かしていくといってもいい。1, 2, 6, 24, 次は?」

長男「ええ?…6の次が42だったらわかるんだけど…」

私「ふうん。どうして?いってごらん?」

長男「1でしょ。1の次の数の2をかけると2になる。2の次の数の3をかけると6になる。6の次の数の7をかけると42だから」

私「それは、とてもとっても面白いねえ。なるほど。でも、私の問題の答えではない」

長男「1, 2, 6, 24, …難しいなあ」

私「ところでさっき、どうして「掛け算」が出てきたのかな」

長男「あのね。何だか急に大きくなってたから。足し算だとそんなに大きくするのは難しいでしょ」

私「あなたは賢いねえ。それは大きなヒントだ」

長男「うーん。…わかんない」

私「1に2をかけたら2, 2に3をかけたら6, 6に4をかけたら24, だから、2, 3, 4を順にかけている。だから次は24×5で120」

長男「なるほどー。ねえお父さん。このクイズって、答えは1つしかないの」

私「そんなことはないよ。たとえば1, 2, 6, 24, の次に100万という答えだって作れる。でもそのときの規則はあまり面白いものではない。『うん、確かにそうだね』という規則を見つけることが面白いんだ。じゃあ次ね。1, -2, 6, -24, 次は?」

長男「(笑って)おんなじじゃん」

私「数の列は違うよ」

長男「次は120でしょ」

私「その通り。どうしてそう思ったの?」

長男「さっきと同じだけど、マイナスになって、マイナスじゃなくて、というのが繰り返すから」

私「そうだね。それは「符号が変わる」っていうんだ。プラスとマイナス」

長男「フゴウ? フトウシキっていうのもあるね」

私「うん。でも不等式のフと符号のフとは字が違う。不等式は等式じゃないというフだ。2つの数aとbがあるとしよう。不等式は4通りある」

長男「え?「aはb以上」「aはb以下」…それから?」

私「「aはbより大きい」「aはbより小さい(未満)」」

長男「あ、そうだね。「より大きい」って別の言い方はないの?」

私「ないねえ。でも、英語はもっと大変なんだよ。「以上」「以下」っていう簡潔な言い方はなくて、「greater than or equal to」「less than or equal to」になっちゃう。」

長男「ふうん」

私「じゃあクイズね。ある数は100以上で100以下です。この数は何ですか」

長男「うーんと、100」

私「はい、正解です。じゃあ、ある数は100以上で100未満です。この数は何ですか」

長男「そんな数はないよ」

私「はい、正解です」

長男「(笑う)」

私「マジシャンが言いました。『何か数を思い浮かべてください。その数を当てます。あなたが思った数は【100以上かまたは100未満】ですね!』」

長男「(大笑いする)あったりまえじゃん!」

私「そうだね。ところで、そのマジシャンの話を聞いた間抜けなマジシャンがまねをして言いました。『何か数を思い浮かべてください。その数を当てます。あなたが思った数は【100より大きいかまたは100未満】ですね!』」

長男「あはは」

私「そう。相手が100を考えたので外れてしまいましたとさ。ところで「100以上かまたは100未満」っていう話を聞いたとき、あなたはどんなことを考えた?」

長男「あのね。(湯煙でくもる鏡に指で直線を描く)こうあって、ここが100で、「100以上」っていうと、ここも入れて右でしょ(シュッ)。「100未満」だと、ここを入れないで左(シュッ)」

私「そうだね。その通り。入れるか入れないかをはっきりさせるために、黒丸白丸を使うこともある。100以上なら、100のところを黒丸にして右にシュッ。100未満なら100を白丸にして左にシュッ」

長男「なるほどね。黒丸は「そこ」を入れるんだ」

私「その通り。ところで、またマジシャンだ。ある人がマジシャンを負かそうとやってきた」

長男「ふんふん」

私「マジシャンが言いました。『何か数を思い浮かべてください。その数を当てます。あなたが思った数は【100以上かまたは100未満】ですね!』すると、相手は「いいえ、違います。私が考えた数は『2乗したら-1になる数』ですから」と答えた」

長男「え?2乗したら-1?そんなのあるの?」

私「あります。2回かけたら-1になる数。あります」

長男「存在しないよ」

私「存在します。たとえばあなたは1という数が存在すると思う?」

長男「存在するよ。整数でしょ?」

私「うん。そうだね。あなたが1という数が存在すると思うのと同じ程度に、2回かけたら-1になる数も存在すると言える。普通はその数にi(アイ)と名前をつける。虚数単位とも言う」(※実際には-iも二乗すると-1になります)

長男「-1は二乗すると?」

私「1になる」

長男「1は二乗すると?」

私「1になる」

長男「じゃあ、やっぱりiなんて数は存在しないよ」

私「多くの人がそう考える。そして想像上の数としてiという名前をつけた。でも存在する。見せてあげよう」

長男「うん!」

私「(鏡に指で数直線を描く)ここを0として、ここが1、ここが-1としようね」

長男「うん」

私「(指で指しながら)1に-1をかけると、-1になる。-1に-1をかけると1になる。2に-1をかけると-2になる。-2に-1をかけると2になる」

長男「そうだね」

私「何かに-1をかけると…(指で指しながら)ぴょんと符号が変わる」

長男「うん」

私「ということは、「-1をかける」というのは「180度ぐるっとまわす」ことなんだ」

長男「そうだね!」

私「そこで、iという数は「90度まわす」ことだと考えてみよう。そうすると、iを二回かけると-1をかけたことと同じになる」

長男「…!」

私「すると、さっき描いた数直線に直角に交わる縦の数直線を考えることができる。交点は0。横が「実数」の数直線。縦が「虚数」の数直線だ。虚数は実数の数直線上にないから、実数と比べることができない」

長男「ふうん…」

私「だからiは、100以上でもなく、100未満でもない」

*

2003年3月26日 (水) - クリエイティブ・コモンズで短歌を公開している方からメール

先日公開した、 「コミック版:クリエイティブ・コモンズのライセンス解説」 に関連して、 CCライセンスのAttribution(クレジットを明記すれば利用可能)で短歌を公開している方からメールをいただきました。 許可を得て、以下に公開します。 こういうフィードバックがあると、翻訳・公開してよかったなあ、とつくづく思います。

結城浩さま

はじめまして。 わたくし、平山雅浩(ひらやま・まさひろ)と申します。

まず初めに、結城さんによるクリエイティブコモンズ情報の翻訳や ライセンス解説等の活動に対し、心からの感謝と敬意を表します。

結城さんのサイトには今年一月からクリエイティブコモンズ関連の 日本語情報を Google で探しているうちに出会いまして、それから 時々アクセスしておりました。

さきほど、コミック版ライセンス解説の翻訳ページを拝見しまして いたく感激しております。ほとんど勢いでメールしておりますが お目汚しはどうか御容赦ください。

実はわたくし、先日じぶんの作品群をCCライセンスのもとで公開 したばかりなのですが、話を遡れば 'Get Creative' Flash Movieに感激して、CCライセンスの採用を決めたフシが大きいというか 要するに、あのマンガのファンだったのですね。 CCが設立された背景やミッションが直感的に理解できましたし 英語はさほど聞き取れなくても、充分楽しめるコミックでしたしね。

CC本家サイトもここのところ動きが盛んですね。 新作コミックの公開もそうですが、新しいオプションの議論など 追いかけていくだけでもタイヘンというか、やはりコトバの壁は 大きいなあと思っていましたので、結城さんの CC Weblog 翻訳 に続くコミック翻訳には、本当に勇気づけられました。

わたくし、3月17日、自作短歌の作品群、全十五首を、 クリエイティブコモンズライセンスのもとで正式公開しました。

●平山雅浩・自撰歌集『春宣りゆかむ』公開ページ

HTML入門書を片手にテキストエディタで手打ちしたもので いたって地味なページですが、御高覧いただければ幸いです。

なお、ライセンスには Attribution を採用しておりますので、 例えば OpenPhoto.Netの写真を 利用して自由にコラージュ(派生作品)を作ることも可能です。

CCが描いた〈使用例〉あるいは〈コラボレーション〉の可能性は 昨年12月のライセンス・リリースから数ヶ月後、既に現実として 体験できるまでに成長しています。それを思うと感慨深いですね。 結城さんや、Matさんの貢献はとても大きいと思います。

Masahiro HIRAYAMA

2003年3月26日 (水) - 計算違い

先日の時計クイズで、読者から指摘を受けた。

> 私「さっきの計算でいえば、
>    あなたの心臓は一日に1440回どきどきすることになる。
>    …意外と少ないな」

一分あたり60回 * 60分 * 24時間 = 86400
86400 ではないでしょうか?

その通りでございます…。親子して計算ミス。

2003年3月25日 (火) - キッズgoo危機一髪

できるかな?の平林さんから「キッズgoo危機一髪」というサイトを教えてもらった。 なるほど、単語単位でチェックできるわけですね。

2003年3月25日 (火) - 仕事 / 本を書くということ

[CR](ss) 淡々と仕事。 原稿書き書き。 うう、どんどん原稿が長くなっていく。

以下、書きなぐりの文章で失礼。

私は話しかけるように文章を書いていくみたい。 話しかけるように文章を書く。 頭から順番に読み、読みながらそれを誰かに話しかけている。 読んでいるうちに「ここ、わかりにくそうだな」と感じる部分がある。 そこに加筆する。 そしてまた頭から順番に読んでいく。 また加筆する。 そういうことを繰り返していると、どんどん長くなっていく。 当然のことだ。 文章の量を減らすプロセスがないんだもの。 書き上げる最後のところで、枝葉を切り捨てるように文章を減らすことがある。 プラモデルでいうところの「バリ」を取るみたいだ。 校正の段階で少し減らすこともある。 論理がもつれている部分とか、自分の知識を誇るためだけに書いている部分などを減らす。 そういう作業をしていると、どんどん時間は過ぎていく。 文章を書くのは地味な仕事だ。でもとても面白く、チャレンジングだ。

毎月の連載記事を書くのと、本を書くのは似ているけれど違う。 連載記事は息を止めて書いているみたい。短距離走だ。 分量的には本の一章って、連載記事の一回分くらいだと思うけれど、 長距離走の一部として書いている。少なくとも書き下ろしはそうだ。 連載記事はけっこう冒険や実験もする。本はちょっぴりコンサバに。 …もちろん場合によるけれど。

本を出版するのは、一冊目が一番たいへんだ。 ほんとうに、ほんとうに一冊目はたいへん。 二冊目以降は(一冊目に比べれば)夢のように楽だ。 何が楽になるかというと、自分の中に生じる不安を吹き飛ばすのが楽になる。 「こんなに大変で、自分はやりとげられるだろうか」という不安に対しては、 「うん、大丈夫。こういう大変さはいつもと同じだ」 と答えられるようになる。 「こんなに一冊の本に時間をかけても大丈夫なのだろうか」という不安に対しては 「気持ちが前向きになっているから大丈夫。この時間は品質向上に必要な時間なのだ」 と自分に対して答えられるようになる。 いつも、祈りは必要だ。いつも、呼吸が必要なように。 それはそれとして、 二冊目以降、 自分の不安な気持ちをなだめるためのエネルギーを、 具体的な仕事に向けることができるのはとても楽なことだ。

一冊の本の7分目ほどで、何か大切なものがキラキラッと見えることがある。 本を書き始める前には知らなかった何か、 ささやかではあるけれど本質的な何かを見つかる瞬間だ。 それは著者にとって大きな報酬の1つだ。 物語をつかむ瞬間。 大きな喜びの瞬。

でも、一番大きな喜びは、出版後にやってくる。 読者から送られてくる「なるほど!」というフィードバックである。

2003年3月25日 (火) - キッズgooのフィルタリング

hirax.netの平林さん(できるかな?の平林さん)が 「(自分のページは)キッズgooにもフィルタリングされているし…」と書いていらした。 「できるかな?」は、 日常の素朴な疑問を理論的に解き明かそうとする有名な科学読み物サイトなのだが、 お子様向けでない内容を含む場合があるため(かどうかは不明だが)、 フィルタリングされている模様。

「ふうむ。結城のところも、もしかしたらフィルタリングされているかも」と思い、 何ページか試してみた。 不思議な結果になった。

最初は、キリスト教関係がフィルタされているのかと思った。 でも「聖書の言葉」は表示される。 「結城浩の日記」は表示されるのに「日記ダイジェスト」は表示されない。 「聖書を読みたい・教会へ行きたい」は表示されるが「四つの法則」は表示されない。 「さまざまな方のための祈り」は表示されるのに「あなたのために祈ります」は表示されない。

いったい、このフィルタリングソフトの「表示しない」基準は何なんでしょうか。

さらに調べて、謎が深まった。 i-mode版の「四つの法則」(キリスト教の教義をわかりやすく示したページ)は、 全部で9ページからなっているが、そのうち一ページだけが表示されないのだ。

当然、この「4」に何が書いてあるのか気になるところですが…。 他のページと何が違うというのだろう…うーむ。

なお、念のために書いておきますが、 私は「キッズgoo」のフィルタリングに反対しているわけでも賛成しているわけでもありません。 いったいどういうルールでフィルタリングしているのだろう、 という技術的な部分に関心を持っているだけです。

いろんなURLを試すフォームを作ってみました。 あなたのページはフィルタリングされているでしょうか?

キッズgoo経由で表示するURL:

2003年3月24日 (月) - 時計クイズ

私と長男(8歳)と次男(3歳)の三人が、電車に乗っている。

    *   *   *

長男「ねえ、何か問題出して!」
 私「じゃあ、時計クイズをしよう。
   いま、午後3時だとする。長針と短針の角度は?」
長男「うーんと…。90度、だね」
 私「ピンポン、正解。それは小さいほうの角度だけど、大きいほうの角度は?」
長男「外角、ってことかな。ええとね。360度から引けばいいんだ。280度!」
 私「がっくし。ブブー」
長男「あ、違った。270度」
 私「はい、正解です。360度から90度を引いてもいいけれど、90度が3つ、と考えてもいいんだよ」
長男「あ、そうか。なるほどね」

    *   *   *

 私「じゃあ、次の問題。いま午前10時だとする。長針と短針の角度は?」
次男「私は、バズ・ライトイヤー」
長男「ええ? …わかった、5分が何度かを計算すればいいんだ。
   360度を12で割って…。ええと、うーんと。
   90度を3で割ってもいいや。30度だ。だから、
   わかった。60…度!」
 私「はい、正解です」
次男「無限のかなたへ、さあいくぞ」

    *   *   *

 私「では、次の問題。一日に短針は何回転する?」
長男「一日って何時から始まるの?」
 私「何時からでもいいよ」
長男「違うの。あのね。夜中の0時にはじまって、夜中の11時までいくでしょう?
   そのときの夜中の0時になった…そのとき!っていうのは今日なの?明日なの?」
 私「それは一日の始まりの0時を今日に含めたかどうかによるね」
次男「来たな、ザーク」
長男「どういうこと?」
 私「もしも一日を0時からにしたなら、一日たった後の0時の直前までが『今日』だよ」
長男「あ、柱状グラフって知ってる?」
 私「ヒストグラムのことかな?」
長男「そのグラフを作るときには、『以上未満』の表を作るんだよ。
   たとえばクラスのメンバーのボール投げの距離をはかるときなんかに」
 私「なるほど。一日もそうだね。
   夜中の0時「以上」、一日がすぎた後の0時「未満」だから。
   その指摘はすばらしい」
長男「へへ」
次男「応答せよ。バズ・ライトイヤー」
 私「ところで、一日に短針は何回転する?」
長男「一回!」
 私「がっっっっくし」
長男「あ、違った二回だ。ぐるぐるって回っているからね」

    *   *   *

 私「『以上・未満』の代わりに『より大きい・以下』を使ってもいいよ」
長男「えーと…あ、わかった。なるほどね」

    *   *   *

 私「じゃあ、一日に長針は何回転する?」
長男「一日は24時間だから…」
 私「ふんふん」
次男「(まどの外を指差して)おとーさん、電車だ電車!見て見て!」
 私「うん、電車だねえ」
長男「24×60を計算すればいいね」
 私「(こける)ちがーう。それじゃ秒針の回転数を求めている」
長男「何で?…あ、あああ、あ。そうだ。24回。へへー」

    *   *   *

 私「じゃあ、一日に秒針は何回転する?」
長男「今度は24×60だ。ええと」
 私「暗算でやるのはちょっとつらいね。大体でもいいよ」
長男「じゃあ、まず20×60をやればいい。これは120になるから。
   あとは4×60だ」
 私「ちょっとまった。20×60って120?」
長男「うん」
 私「2×60も120なんですけど」
長男「あ、違った。1200だ。4×60は…240だから両方足して、1460だね」
 私「1440」
長男「へへ。そうだね」

    *   *   *

 私「ところで。あなたの心臓は一分に何回どきどきするだろう」
長男「知らない」
次男「おとーさん、電車乗り換え、するの?」
 私「もう乗り換えはすんだの。あと二つで降りるよ。
   だいたい72回くらいかな。まあ一分に60回どきどきするとしよう」
長男「ふんふん」
 私「さっきの計算でいえば、
   あなたの心臓は一日に1440回どきどきすることになる。
   …意外と少ないな」
長男「ええ! 1440回! 多いじゃん!」
 私「そう? まあ多いか。
   あなたが眠っているときも心臓は動いている?」
長男「もちろん。とまってたら死んでるって」
 私「そだね。
   眠っている間もちゃんと心臓が動いているようにあなたは作られているんだよ」
次男「おとーさん、降りなきゃ!しまっちゃう」
 私「降りるのはこの次の駅だよ」

後日談あり。

2003年3月23日 (日) - センス

yomoyomoさんのWikiWayサイン会で、tDiaryのたださんにお会いした。 といってもはす向かいに座ったたださんのお話をちらちらとお伺いした程度だけれど。 それ以来、たださんの日記をよく読むようになった。 今日の日記「TrackBackの名称」のあたりも、 首肯できる部分がいくつかあって「この人、センスよいなあ」と感じてしまう。

普段わたしはプログラミングに関して「センスが必要」とは書かないのだけれど、 「よいセンス」(あるいは、よいテイスト)というのを否定するつもりもない (もしかしたら過去のどこかで否定しているかもしれないけれど…まあいいや)。

「センスのよさ」というのは「バランスのよさ」に現れるかな? もしかしたら「絶妙なアンバランス」に現れるかもしれない。 全体にまんべんなくできるのではなく、 「このプログラムは、ここがポイント」 という主張がぴりっと出ている。 そんなところが「センス」に関係しているかも。

2003年3月22日 (土) - バズ

3歳の次男が難しい顔つきをして腰に両手をあて、すっくと立つ。 「わたしはバズ・ライトイヤー。無限のかなたへ、さあいくぞ」

かわいらしいスペースレンジャー。

2003年3月22日 (土) - キリストにならいて

空き時間を使って、久しぶりに「キリストにならいて」の作業。 ずいぶん以前にはちこさんからいただいて公開していた部分を読み直して、 少し手直し。

「キリストにならいて」の文章はかなり痛いけれど、恵まれます。

翻訳してくださる協力者は継続して募集しております。

2003年3月22日 (土) - コミック版:クリエイティブ・コモンズのライセンス解説

「コミック版:クリエイティブ・コモンズのライセンス解説」を翻訳開始。 とりあえず、4分の1ほど終わった。 テキストで翻訳がすんだら、コミック(画像)に埋め込んでいきたいな。

ごはん食べてからパタパタやって、テキストの翻訳は全部完成した。 そのうち画像にも反映させることにしよう。

翻訳ができたので、 「creative commons 日本語情報」のMatさんのところの掲示板に告知。 それからCreative Commonsの関係者などにURLをメール。

おふろに入ってからパタパタやって、画像に反映完了。

2003年3月21日 (金) - 世の中にはいろんな人がいる

ねえ。

と、わたしは、思いつくまま長男に話しかける。 世の中にはいろんな人がいるよ。 本当にいろんな人がいる。 世の中には、うまく人とやりとりすることができなかったり、 自分の気持ちを素直に表現したりすることが苦手な人もいる。

うれしいときにうれしいという。 かなしいときにかなしいという。 よいことをしてもらったり、ほめられたりしたときに、ありがとうという。 ひどいことをされたら、やめてくれ、という。 そういうシンプルでストレートな表現がどうしてもできないひとは世の中にたくさんいる。

さらに、 自分の気持ちを他の人に伝えることがうまくできずに乱暴な言葉を使ったり、 はては乱暴な行為をする人もいるかもしれない。 何もできずに他の人とのかかわりが切れてしまうくらいなら、 乱暴な行為によって他の人と切り結んだほうがよい、と感じているのかもしれない。 乱暴なことをしたら、嫌われたり、文句を言われたりするだろう。 けれども、そういういやなやりとりであっても、 人とのかかわりがなくなってしまうよりはましだ、 と感じているのかもしれない。

つまり、うれしい・かなしい・ありがとう・やめてくれ…という言葉が言葉にならず、 おもわず握りこぶしになってしまう人がいるのだ。 でも、そういう人はおうおうにして嫌われる。 そして悪循環におちいる。

だから、もしもそういう人を見かけたら、 その人のために祈らなければならない。 直接やりとりできればよいのかもしれないが、 なかなかそうはできないことも多いだろう。 直接やりとりしない方がよい場合もある。 けれでも、祈ることはできる。 それは、相手を見下す気持ちからであってはいけない。 自分は安全な場所にいて相手を救ってあげるという気持ちとも違う。 その人の姿は、ほんのちょっとしたことで、自分の姿ともなりうるのだ。 自分がその人のために祈るのは、自分のためでもあるのだ。

そしてまた。 その人は、乱暴しながら苦しんでいるかもしれない。 他人を傷つけながら自分も傷つけているのかもしれない。 他人や自分を傷つけることでしか「生」を感じ取れなくなっているのかもしれない。 だから、その人のために祈らなければならない。 傷があるなら、癒されるように。 孤独を感じているなら、必要な慰めが与えられるように。 失望しているなら、希望が与えられるようにと、 神さまに向かって祈らなければならないのだ。

2003年3月20日 (木) - Thread::Queueを使ったProducer-Consumer

実は、自分でwait&notifyをしなくても、 Thread::Queueというモジュールを使うのがよろしいということを今日学ぶ。 そうすると、sharedなどを気にしなくてもよい。

use strict;
use threads; 
use Thread::Queue;

$| = 1;

my $queue = new Thread::Queue;

my $producer = threads->new(\&producer_main);
my $consumer = threads->new(\&consumer_main);

$producer->join; 
$consumer->join; 

print "\n";
print "done.\n";

sub producer_main {
    my $count = 100;
    while ($count >= 0) {
        $queue->enqueue($count);
        # print "producer enqueues $count.\n";
        print "P";
        $count--;
    }
    # print "producer_main ends.\n";
}

sub consumer_main {
    my $count;
    do {
        $count = $queue->dequeue;
        # print "consumer dequeues $count.\n";
        print "C";
    } while $count > 0;
    # print "consumer_main ends.\n";
}

実行例は以下。

PPPPPPPPPPPPPPPPCCCCCCCCCCCCCCCCCPCPCPCPPPPPPPPPPPPPPPCCCCCCCCCCCCCCCPCPPPPPPPPP
PPPPPPPPCCCCCCCCCCCCCCCCPPPPPPPPPPPPPPPPPPCCCCCCCCCCCCCCCCCCPPPPPPPPPPPPPPPPPPCC
CCCCCCCCCCCCCCCCPPPPPPPPPPPPPCCCCCCCCCCCCC
done.

2003年3月20日 (木) - 戦争

早期解決を祈る。

2003年3月20日 (木) - 暗号クイズ

[CR] 結城が現在執筆中の「暗号本」に書こうとしている 暗号クイズです。$X^{Y}$はXのY乗をあらわします。

ブルート・フォース・アタックを現実的に不可能にするために必要な、
対称暗号の鍵のビット長を計算してください。

利用できるコンピュータパワーを次のように仮定します。

・コンピュータ1台は1秒間に$10^{20}$個の鍵を試せるとする。
・コンピュータの台数は$10^{100}$台存在するとする。
・全コンピュータを$10^{20}$年動かすとする。

これだけのコンピュータパワーを使っても、
鍵空間全部を調べることを不可能にするには、
鍵のビット長は何ビットあればよいでしょう。
以下の選択肢の中から、正しいものを選んでください。

(A) 512ビット以上あれば十分である
(B) 少なくとも1024ビットは必要である
(C) 少なくとも4096ビットは必要である
(D) 少なくとも1万ビットは必要である
(E) 100万ビットでも足りない

参考:
このコンピュータパワーはナンセンスなまでに過大に見積もっています。
現在のコンピュータのクロック速度は1秒間に$10^9$ほど、
宇宙全体の素粒子の数は$10^{87}$個ほど、
宇宙の年齢は$10^{11}$年だからです。

2003年3月20日 (木) - 仕事

[CR](ss) 図を描き始め。

[NC] 編集者さんからお返事が返ってきて、 連載の方向性がだいぶ定まってきました。 月刊雑誌への新連載です。 ページ数はそんなに多くないけれど、 これで3つの雑誌に並行して連載ということになります。 状況が進みましたら、新連載の情報をまた公開していこうと思います。 よい仕事ができますようにと、お祈りいただければ感謝です。 ちなみに、今回のキーワード[NC]はネットワーク・コミュニティです。

[CR]コメント反映の残りは644KB。 うう、増えている。(^_^;

2003年3月19日 (水) - 仕事

[CR](ss) 図はまだできない。 頭が少々くたびれたので、頭を休めて、手に仕事をさせることにする。 原稿ファイルをエディタで開き、 自分のお手手に「はい、じゃ、好きなことを書いて」と命じる。 するとおてては何だか勝手にぱたぱたとキーをたたいていく。 ときどき見てやると、ところどころ変な文章なのだが、まあくたびれていることもあってまかせたままにしておく。 しばらく書いた後、おててが「そろそろくたびれた」と主張し始めたので、 「じゃあ次は日記でも書いて」と命じる。 するとおてては特に文句もいわず、ファイルを開いてぱたぱたとキーをたたいていく(それがこの文章だ)。 数行書いたくらいのところでストップして、エディタを閉じてお昼ごはん。

2003年3月19日 (水) - ソフトバンクパブリッシング訪問

[REF] 昨日は、ソフトバンクパブリッシング(JAVA Developer誌)編集部へお邪魔しました。 リファクタリングの連載がそろそろ一年になるので、 今後の進め方についての打ち合わせです。 打ち合わせにはお祈りしてから臨みます。 私がプレゼンテーションを行った後、 編集部のかたがたとディスカッションし、 とてもよい方向に進むことになりました。 感謝します。

その後、いつもお世話になっている書籍の編集長さんと共に、 ソフトバンクパブリッシングの販売局のほうにご挨拶しました。 結城の本をいつも精力的に販売してくださっている方々にお会いできて、 とてもうれしかったです。 いつもありがとうございます。

お仕事中にお邪魔したのですが、 みなさんあたたかく迎えてくださって恐縮でした。 ご挨拶すると「暗号の本はそろそろですか」などとお声をかけていただいたので、 とてもうれしくなりました。 よい本になるように努力しますね。

2003年3月18日 (火) - 寝ます

おやすみなさい。

2003年3月18日 (火) - 補足

先日、 まつもとゆきひろさんがキリスト教の宣教師であったと書きました。 インタビューでまつもとさんはそう答えていらっしゃるのですが、 正確にはモルモン教のようです (ご本人がメーリングリスト[ruby-list:14008]でそのように答えていらっしゃるので)。

念のため補足: 上記のようなことを書くと、 本当にいろんな方がいろんなことを私あてにメールしてくるのですが、 一応ここで私は、事実だけを書いていることに 着目していただければ感謝です。

2003年3月18日 (火) - 仕事をするときの基本原則

今日はいつものように説教くさい話である。 説教くさいが、抹香くさくはない、はず。

あなたは「仕事をするときの基本原則」を持っているだろうか。

本屋さんに行くと、仕事の進め方、デキる奴がどうするだのこうするだの、 ノウハウ本がたくさん並んでいる。 でも、実は大切な原則はたった1つだ。 たった一つの原則からほとんどすべての方法論が生まれてくる。 しかも、その原則は一言で表現することができる。

そう、「愛」である。

とはいっても、「愛」ではあまりにも抽象的過ぎるから、 もう少し具体的な表現として展開してやる必要があるだろう。 たとえばこうだ。

「相手のことを考える」

私はこの話を何度も何度も書いてきている。 でも、毎日の仕事の中で私は、 この「相手のことを考える」という原則が非常に有効であることを体験している。 だからいま、もう一度、私の日記の読者とシェアしようと思うのだ。

仕事をしている人はみな、このような問題に悩む。 それらすべてに対して、基本原則「相手のことを考える」をベースにして手がかりをつかむことができる。

多くの場合「相手のことを考える」ためには、普段から相手のことを考えていなくてはならない。よく周りを観察していなければならない。 また「相手のことを考える」ためには、想像力と客観性が必要だ。それは人によって得意不得意があるだろう。 でも「相手のことを考える」というのはとてもよい出発点のはずだ。

相手のことをかんがえて行動しようとすると、何かにぶつかることがある。たいていは「自分」にぶつかる。 自分の思惑、自分の利益、自分が守りたい自分の心、自分の怠惰…そういう自分にぶつかって、大きな障害となるのだ。 私たちは完全な人間ではないから、完全に相手のことだけを考えて行動することはできない。 でも、自分をごまかしてはいけない。理由をでっちあげるのではなく、 「本来はこうすべきだが、今回はこうしよう。 これは自分の弱さかもしれないが、このラインが自分の現在の力量だ」 といった判断を下すことは大事だ、と思う。 そういう「見極め」をやっていると、不思議なことに、他の人の動向や気持ちがよりよくわかってくる。

…そういう流れが見やすくなるように感じられる。

「相手のことを考える」という出発点、 基本原則に立つのは決して能力の問題ではない。 習慣の問題だ。要するに「慣れ」である。 いつも、まず「相手のことを考える」という出発点に立つ習慣をつけていると、 たとえ、自分の行動になかなか反映されないとしても、 不思議な面白さが、日々の仕事の中に現れてくるに違いない。

「相手のことを考える」という原則――つまりは「愛」の原則――を、 私は聖書から学んだ。 教会で学んだ。 聖霊さまから学んだ。 これは仕事に限らず、人間が登場するありとあらゆる場面に適用できるすばらしい原則である。 しかもそれは「愛」の序の口に過ぎないのだ。 「相手のことを考える」の先には、 「なかなかそのようにできない愛なき自分の発見」があり、 「自分の弱さにこそ働いていてくださるイエスさまの発見」があるのだ。 そこまでいくと、 「自分の弱さを喜び、弱い自分を「土の器」として神さまに用いてもらうことの喜び」までは、ほんの一歩だ。

今日、「相手のことを考える」という基本原則に立ってみよう。

仕事をしているあなたに、イエスさまの恵みと祝福がいつもありますように。

2003年3月18日 (火) - 仕事

[NC] 早朝、連載初回のプロトタイプ版を書いて、編集者へ送付。 さて、どうなりますか。

2003年3月17日 (月) - Perl ithreadsを使ったProducer-Consumer

Perl ithreadsの勉強のため、 自分で課題を出して、自分で解く。 Producer-Consumerのプログラム練習。 あっ、しまった。 「レクチャPerl」は作ってなかったんだっけ。

use strict;
use threads; 
use threads::shared; 

my @queue : shared = ();
my $queue_max : shared = 3;

my $producer = threads->new(\&producer_main);
my $consumer = threads->new(\&consumer_main);

$producer->join; 
$consumer->join; 
print "done.\n";

sub producer_main {
    my $count = 10;
    while ($count >= 0) {
        lock(@queue);
        while (@queue >= $queue_max) {
            print "producer waits.\n";
            cond_wait(@queue);
        }
        print "producer enqueues $count.\n";
        push(@queue, $count);
        cond_broadcast(@queue);
        $count--;
    }
    print "producer_main ends.\n";
}

sub consumer_main {
    my $count;
    do {
        lock(@queue);
        while (@queue == 0) {
            print "consumer waits.\n";
            cond_wait(@queue);
        }
        $count = shift(@queue);
        print "consumer dequeues $count.\n";
        cond_broadcast(@queue);
    } while $count > 0;
    print "consumer_main ends.\n";
}

実行例は以下。

producer enqueues 10.
producer enqueues 9.
producer enqueues 8.
producer waits.
consumer dequeues 10.
producer enqueues 7.
producer waits.
consumer dequeues 9.
producer enqueues 6.
producer waits.
consumer dequeues 8.
consumer dequeues 7.
consumer dequeues 6.
consumer waits.
producer enqueues 5.
consumer dequeues 5.
consumer waits.
producer enqueues 4.
producer enqueues 3.
producer enqueues 2.
producer waits.
consumer dequeues 4.
producer enqueues 1.
producer waits.
consumer dequeues 3.
producer enqueues 0.
producer_main ends.
consumer dequeues 2.
consumer dequeues 1.
consumer dequeues 0.
consumer_main ends.
done.

2003年3月17日 (月) - 仕事

[CR](ss) ええと、図を描かなくちゃね。 残っている章は(ss)と(re)の二つ。 予定していた(ma)の章は省略しようかな。

[REF] そうだ、準備しなくちゃね。

[DP/1] 『Java言語で学ぶデザインパターン入門』の韓国語版が編集部から届きました。 ありがとうございます。ハングル、読めないですけれど、なかなか楽しいです。 「このあたりにきっとあなたへの謝辞があるはず」と家内に見せるけれど、 家内も読めるわけではない。二人で苦笑する。

2003年3月16日 (日) - 「マッチ売りの少女」が漫画に

創作系の同人誌漫画を描いていらっしゃる、 繁泉光太郎(しげいずみ こうたろう)さんという方からメールが来ました。 結城が翻訳した「マッチ売りの少女」をベースに漫画を描かれたようです。 以下、許可を得て引用します(一部編集)。

結城浩様

はじめてメール致します。繁泉光太郎(しげいずみ こうたろう)と申します。 ホームページは時間のある週末に訪れて、日記を軸に拝見しています。

自分は仕事をしながら、創作系の同人誌漫画を描いて、 個人で大きい即売会イベントで発表及び販売をしています。 2001年から創作系漫画を描き始めたのですが、 同年に「マッチ売りの少女」を自分流にドラマタイズして描きました。 その際に結城さんの原作翻訳を参考にさせて頂いたので、 大変遅ればせながら、そのご報告でメール致しました。 もちろん本には結城浩さんのお名前は表記しています。

ネット上には、いくつかマッチ売りの原作翻訳が掲載されていましたが、 その中でも結城さんの翻訳文は簡潔でいながら、 印象深い言い回しが多く、大変参考になりました。 そのおかげもあって、今現在で600部ほど売れました。

そしてこの度、自分が今までイベントで発表してきた 漫画作品のカタログのような本を作るのですが、その本に、 結城さんのマッチ売りの少女の翻訳文を全文掲載する 予定でいるので、重ねてご報告したいと思います。 もちろん結城さんの書かれた翻訳文として掲載したいと思っています。

アンデルセンの童話は主人公が死ぬラストが多いですが、 それを通じての確かなメッセージ性が非常に自分の心を捕らえます。

それでは用件のみではありますが、失礼致します。 今後もお仕事とサイト更新、頑張って下さい。

繁泉光太郎 http://www.chirashiya.com/~shigezmi/

どんな漫画なのか興味があったので、 お願いして数ページもらってきました。以下にリンクします。 ストーリーはマッチ売りの少女そのままではなく翻案したもののようです。 少女がピストル持ってるし(^_^)。

こういう風にフリーテキストが活用されると、 翻訳したかいがありますねえ。 ちなみに「マッチ売りの少女」は繁泉さんのラインナップで売れ筋とのこと。 「コミティア」という創作系のイベントで発表・販売しているそうです。

アンデルセンについて言及していらしたので、 katoktさんのページも紹介しておきました。

そうだ、結城の翻訳にもリンクしておこう。

2003年3月16日 (日) - 備忘録

備忘録。

Creative Commonsの[Some Rights Reserved]アイコンって、全部同じ姿をしているけれど、 あそこに[Attribution]だの[Noncommercial]だのという属性も含めればいいのに。 もちろんリンクをみればわかるんだけど…。 デザイン上無理があるのだろうか。

備忘録その2。

私の日記を読んでいる方の中に 「Flash職人」さんっていらっしゃるだろうか。 私の書籍(あるいは私のサイトの)のFlash広告を ボランティアで作ってくださる人はいるだろうか、 とふと思いついたもので。

2003年3月15日 (土) - 休日 / Perl ithreads

お昼はピザを食べる。 その後ぐっすりとお昼寝。

休日なので、 Perl 5.8.0のマルチスレッドプログラミングで遊ぶ。

use v5.8.0;
use strict;
use threads; 

my $thread1 = threads->new(\&main, "One");
my $thread2 = threads->new(\&main, "Two");

$thread1->join; 
$thread2->join; 

print "done.\n";

sub main {
    my ($name) = @_;
    for (1..10) {
        print "I am $name ($_)\n";
        threads->yield();
    }
}

以下が実行例。

I am One (1)
I am One (2)
I am Two (1)
I am One (3)
I am Two (2)
I am One (4)
I am Two (3)
I am One (5)
I am Two (4)
I am One (6)
I am Two (5)
I am One (7)
I am Two (6)
I am One (8)
I am Two (7)
I am One (9)
I am Two (8)
I am One (10)
I am Two (9)
I am Two (10)
done.

プログラミングRubyの開発者、まつもとゆきひろさんが スラッシュドットジャパン(に集う人々)によるインタビューに答えています。 まつもとさんが以前キリスト教の宣教師をしていた、 という話はどこかで聞いたことがあったけれど、本当のようですね。 以下、引用です。

大学在学中に2年間休学してキリスト教の宣教師として奉仕しました。一緒に働く同僚や上司の多くがアメリカ人だったので、この頃英語を覚えました。英語は今でも役に立っています。また、異文化や人によって異なる考えについての理解が深まったのもこの頃だと思います。また、自分自身を含めて人間を見つめる機会でもありました。

私がクリスチャンであることはオープンソースの動機にも関係していると思います。私のオープンソースへの動機と情熱の源は愛です。愛と言っても、恋愛の愛じゃなくて、もっと一般的なものです。それは自分自身を楽しませたいという自己愛と、人類にすばらしいものを提供したいという人類愛の両方が入り交じっています。でも、利己的な愛の方がちょっと割合が高いかな。

高校生に対するアドバイスや、開発プロセスに対する考え方、オープンソースに関する意見、 Rubyの普及に関する考えなども書かれていて、 とても楽しめるインタビューです。

2003年3月14日 (金) - 仕事

[CR](ss) 新しい章。とりあえずアウトラインを書く。

[CR](re) まとめの章。以前描いた図を描きなおす。 おお、美しい。 まるで、暗号技術のパターンランゲージみたい。

とあるカンファレンスから講演の依頼のメールが来る。 申し訳ありませんが多忙のためお断りいたしますという返事を書く。

知らない学生さんから「○○○をするプログラムをあさってまで作ってください。 月末までできないと単位が云々」というメールが来る。 申し訳ありませんが多忙のためお断りいたしますという返事を書く。

あなたのページにリンクしたいです。 許可をください、というメールが(たくさん)来る。 お願いだから私に許可を求めないで、と思いつつも、 はいどうぞリンクしてください、という返事を書く。

「Perlクイズ」と「Java言語Q&A」が「まぐまぐ」の『殿堂入りメールマガジン』に選ばれた模様。 条件は、創刊2年以上かつ最新号発行部数3,000部以上、とのこと。

2003年3月13日 (木) - 仕事

[CR](pg) この章、完成。 レビューアさんには今晩送付する予定。

以下は、レビューアさん恐るべし、という話題。 いつもありがとうございます。

[PI] C MAGAZINEの原稿を書いて編集者さんへメール。 今回はProducer-Consumerというマルチスレッドのパターン。 スレッド本でも解説したパターンだけれど、 今度は java.util.LinkedList(Java版)と System.Collections.Queue(C#版)を使って、 別の実装にしてみました。 小さなプログラム書きは楽しい。

2003年3月12日 (水) - 「一億」のゼロの個数

長男「何か問題だして!」

私「うーん、じゃあ、一億にはゼロがいくつある?」

長男「え? 8個!」

私「正解。それじゃ、一万を何倍したら一億になる?」

長男「ええと…百倍?」

私「違う」

長男「じゃあ千倍?」

私「一度まちがった後は、もっとよく考えてから答えるんだよ」

長男「よく考えたよ。千倍」

私「いや、違う。一万はゼロが4つ。千はゼロが3つ。一万に千をかけるとゼロは7つ。一億はゼロが8つだから不正解」

長男「そうか。じゃあ一万を一万倍したら一億」

私「はい、正解。あのね、ちゃんと最初の問題と二番目の問題が関連するように出してるんだよ」

長男「ふうん」

私「次ね。一億を百万にするには何で割ればよい?」

長男「ええと、百で割ればいい」

私「はい、正解です」

長男「一億を百で割ると二個消費するからね」

私「そうだね。百で割るとゼロを二個消費するからね。こんなふうに、掛け算はゼロの個数の足し算になるし、割り算はゼロの個数の引き算になるんだ」

長男「ふうん」

私「これであなたは、名前を知らない数の掛け算・割り算もできるようになったんだよ」

長男「?」

私「たとえば、1の後にゼロが20個並んだ数と、1の後にゼロが15個並んだ数を掛けたら、何になる?」

長男「ええと…1の後にゼロが35個並んだ数になる…?」

私「はい、正解です。あなたはその数の名前を知らない。でもちゃんと掛け算はできる」

(補足解説)

「数そのもの」から、「その数のゼロの個数」に着目点を移す。 そうすると、とてつもなく大きな数でも取り扱うことができる。 そしてこれが「対数(たいすう)」という考え方なんだ。

数の掛け算は対数で考えると足し算になり、 割り算は対数で考えると引き算になる。

2003年3月12日 (水) - 読者とのやりとり(文面は修正しています)

読者からの応援メール

初めまして。こんにちは。 プログラマの心の健康メールを書く心がけ仕事のこころがけなど、参考にさせていただいてます。 私はプログラミングなどの経験は殆ど無く、 結城さんのお仕事の大変さは実感できず、 きっと大変なんだろうな…くらいしか分かりません。 また、結城さんの本も正直に言って手に取ったことがありません。 こんな私ですが、応援しています。 これからもお仕事頑張って下さい。 (大学4年生)

結城のお返事

結城です。 応援をありがとうございます。 (にっこり)

読者からの質問メール

こんにちは。 私は小さいころから教会に通っていて、 教会大好きっ子に育ちました。 (中略) 私はまだ洗礼を受けてないんです。 (中略) 実際、洗礼を受ける心構えとはどんなもんなんでしょうか。 (高校生)

結城からのお返事

主の御名を賛美します。メールありがとうございます。 「洗礼を受ける心構え」ですか…。

あなたは、自分を、自己中心的に生きてきた罪びととして認めますか。 そして、そのような自分の生き方を悔い改め、 イエス・キリストを自分の救い主として認めますか。

もしも「はい」と答えられるなら、 洗礼を受ける準備は整っていると私は思います。 牧師さんや、 あるいは教会の中で親しくしているかたに相談してみてはどうでしょう。

2003年3月11日 (火) - 仕事 / マルコフ結城

[CR](pg) 図ができたので、図にしたがって文章をとっとと書いていく。 まずは半分ほどあらあら書いた。 何とか今週中にこの章を完成させたいが、どうだろう。

[PI] 準備中。

[NC] 新しいお仕事が入りそうな予定。プランを立てて、今週中に基本方針を編集者さんに送る予定。

[REF] 連載がそろそろ12回なので、次の題材を準備して編集者さんと打ち合わせをする予定。おそらく来週。

なんだかばたばた忙しい。春かな。 でも、現在のような時代にあって、 仕事が与えられていることはとても感謝だと思う。

それはさておき、 日本語形態素解析システム「茶筌(ChaSen)」を使って日記ダイジェストの統計情報を取り、 それを元にして自動文章作成スクリプトを作ろうと実験中。 現在の成果(?)は次の通り。スクリプトの出力はまったく編集していません。

(使徒4:12)。そう思っていたあの方がいらっしゃいますが、それによって生きなければ ならない。私たちの尊い。自分の意志を持つことが前向きな考えなんか出来れば苦労はた くさん殺されているのだろう、というのも同じです。大判の本でpublishしていて、実績 も大事です。間違いを見つけたなら、どこかの段階で〆切の日を懸命に誠実に書いてくれ る人が自分のことを怖がって、西部劇という舞台の幕がいつ、すこし寝坊したので修正す るのにはあまりうまくないし、神さまに」的に自分をよく生じることだな。ひゃー。記憶 ・テーマと目次全体に目を覚ましたいとか、再配布、とても近い現実的な意見としては、 相手を「お休みのあたりでざわざわと広がる。その中で、もしあなたの中で興味深いのは 、主に告白していた。その供え物をささげもの。感謝します。信仰はどこに連れて行き、 いや、自分の罪を知ります。途中で、それでも、それじゃさあ、あまりこれで11月に脱稿 するまでの行程についてのご参加している、これでよし、というと、お絵描きプログラム を書いてご笑覧ください。そうだね」、神が語ってもらい、神さまが私をうつすときのこ とを聞いてみると、自分って結構いいページが複数人からすごいなあといってくれたのを やめよう。実際に書いていると思っているとき。ぽん、と私はたくさんの方が書き順につ いてうるさいのだろうか。おささげいたします。また別の話に戻ろう。それはやめよう。 でも」や「どちらでもかまわない。混ぜ合わせるとドカンと音がすること。主がお守りく ださり、大したもんだよな。」ばっかりしています。そうすると、また感謝なことである 。よく理解して! ベイブレードって何だろう。私たちの「約束ではない」と同じフレー ズをタイプすることになります。まあ筆なられなかった」。人間は神の声、食事を感謝し ます。御名を賛美しよう。次男は、和風の定食だったと思う通りに従おう。このようなメ ッセージを送ってくださる。No.0022。CGIがうまくいかない、と言ってもきかない。早い な。チョコレートにクッキーにリンゴとココア。ところで例題の不備を見つけて語ること なのだ」とか言えるという意味だ)その開いたとき、こんにちは。また感謝なことである。

…まるで、錯乱した結城のような文章だな。(^_^; ちなみに私はこのスクリプトを「マルコフ結城」と呼んでいます。

2003年3月10日 (月) - 仕事 / 図を描く

[CR](pg) 新しい章。 本書を書き始めのころにすでにこの章の図は描いていたので、 それを見直して描きなおし。 図を描くのは大変だけれど、美しい図としてまとまったときにはとてもうれしい。 技術的な図には正確さは欠かせないけれど、美しさだって重要だ。 美しくなければうまく伝わらないからだ。 ここでいう「美しさ」は、 首尾一貫していること、 表現したいものに対称性があるなら図にも対称性があること、 それから、適切な取捨選択によってシンプルになっていること、 などを意味している。 特に最後の「シンプルさ」は重要だ。 複雑なものを複雑なままに提示したのでは理解してもらえない。 適切な取捨選択によって「その図を通して何を読み取ってもらいたいか」を表現しなければならない。 でも絞り込みすぎると、薄っぺらな図になってしまう。バランスは難しい。 適切な図を描こう、美しい図を描こうとしてきちんと考えていくと、 自分の説明文の中に矛盾を発見することもある。 図が持っている内在律によって、自動チェックが働いたわけだ。 この点で、図を描くことはプログラミングに似ている。

2003年3月9日 (日) - いろいろ

礼拝から帰ってお昼寝。 そのあと原稿書きをして、やっと[CR](ra)を送付。 感謝、感謝。 明日からは新しい章[CR](pg)である。

[CR]コメント反映の残りは597KB。増えている…。

[CR/Review] レビューアとのやりとりは2761通。

おお、すでに[CR](ra)に対するレビューがぞくぞくと届いている…。 は、早い…。

以下は、今日礼拝に行く途中の親子4人の会話。

家内「(前略)…その人は、囲碁何段なの?」

長男「んー、たぶん4段」

家内「4段ってすごいんじゃないの?」

長男「うん、すごいよ。じゃあクイズね。4段と5段ではどっちが強いでしょうか」

家内「5段」

長男「ピンポン、正解」

私「ジョウダン(冗談)が強い?」

一同「(笑)」

次男「バクダン(爆弾)?」

私「ナイス突っ込み!」

長男「じゃあ次のクイズ。2級と3級ではどっちが強いでしょうか」

家内「2級」

長男「正解です」

私「うん、それはとてもいい問題だ」

長男「何で?」

私「段のほうは数が多いほうが強いけれど、級のほうは数が小さいほうが強いことを問う問題だから」

家内「そろばん何級、っていうのもそうだわね」

私「それから、星の明るさ(等級)もそうだね」

2003年3月8日 (土) - imaginationatwork.comでお絵かき

hirax.netの平林さん経由で知ったimaginationatwork.com。 とても楽しい「お絵かき」ができる。

2003年3月7日 (金) - 再発見の再発見

[CR]コメント反映の残りは594KB。

[CR](ra) 淡々と仕事。 章のまとめのあたりを書き進めた。 今日はちょっとした発見があって、とてもうれしい。 こういう瞬間って甘美だ。

1つの章をいくつかの節に分ける。 導入の節から書き始め、 読者にこの章で学ぶ概要をつかんでもらい、 具体例を通してより深く理解してもらう。 そしてまとめの節でざっと後ろを振り返る。 その中のどこかで、何かに「気づいて」もらう。

…読者にそのような気づきや発見をしてもらえれば、 書き手としてとてもうれしい。 「知識を得た」にとどまらず、 「感動の体験をした」に近づいてもらえれば、 と願うのだ。

もっと書いてみよう。 私が「よい文章」だと思うのはこういうものだ。 普段、自分の目の前にあって当たり前だと考えているもの、 さらには当たり前すぎてすでに見えなくなっているもの、 そのようなものに光を当て、新しい意味を汲み出し、 読者に「再発見」してもらうような文章。 そのような文章を、私は「よい文章」だと思う。 そしてそのような文章を書いていきたい、と思っている。

けれど…、この話は文章に限った話ではない、とも思う。 「受け取り手に再発見をうながす」というのは、 「表現する」という行為の本質ではないのか。

新しすぎると理解されない。 新しくなければ価値がない。

古さがなければ意味をなさない。 新しさがなければ意義がない。 ――これが表現の本質ではないか。

ところで、生き生きした人間関係にも、 「昔ながらの慕わしさ」と「新鮮な驚き」の両方が必要だ。 それは螺旋階段のようなものだ。 ぐるっと回って、なつかしの同じ場所にきたと思ったけれど、 実は一段高くなっているという驚き。

創造の本質にもつながっている。 神様は、日々のめぐりと季節のめぐりをお造りになった。 毎日の当たり前の繰り返しをすごしているうちに、 新しい季節がめぐっていく。 さらに、今年の春は昨年の春と似ているようだけれど、 みんなが少しずつ変化している。

教会の礼拝だって同じだ。 いつもの牧師のいつもの説教、 いつもの聖書、いつもの賛美歌、いつもの頌栄(しょうえい)。 昔ながらの慕わしさの中にありながら、 現在の私にとって必要な、 新しいメッセージが開かれるという驚き。

今日もまた、いつもの毎日の中に新しい何かを発見していこう。

2003年3月6日 (木) - 仕事の続き

[CR](ra) 淡々と仕事。 章の後半部分の半分のざらざらをとった。 図も描きなおした。 疲れた。

[CR]コメント反映の残りは602KB。

2003年3月6日 (木) - 仕事

[CR](ra) 淡々と仕事。ざっと書いたのを読み返し、ざらざらを取り除いている段階。 章の前半部分のざらざらを大まかにとった。後半部分は今晩か、明日。 今週中にはレビューアさんに送れるかもしれないだろうと思わないでもないといえなくはないだろうな。

以前の章に対してレビューアさんからのコメント (これまでメールでいただいたものからピックアップしたコメント) を少しずつ反映させていく作業もぼちぼち開始。 進行状況がわかりやすいように、Perlスクリプトを作って「反映の残りバイト数」をカウントするようにした。 どれ、動かしてみよう…。

反映の残りは629KB。

…。629KBですか…そうですか…。たくさんありますねえ…。

ちなみに、原稿全体のバイト数は大体500KBくらいである。 デザパタ本が600KB, スレッド本が800KBくらいだから、 一冊の分量にはすでにほぼ達していることになるねえ。

ところで、半年間がんばって書いても、 量的にはフロッピーディスクの半分にも満たないものなのですね。

2003年3月5日 (水) - ルビ

shinoさんの日記を読んで、MakeWebでルビの練習。 htmllintからの警告によれば、これはXHTML 1.1なのですね。

-rx=<ruby><rb>
-ry=</rb><rp>(</rp><rt>
-rz=</rt><rp>)</rp></ruby>

-(
たとえば、
<-rx>結城浩<-ry>ゆうきひろし<-rz>のように、
-rx
名前
-ry
なまえ
-rz
の読みかたを示すためにルビをふることがある。
-)

たとえば、 結城浩(ゆうきひろし)のように、 名前 ( なまえ ) の読みかたを示すためにルビをふることがある。

2003年3月4日 (火) - 仕事 / YukiWikiMini/Servlet

[CR](ra) 淡々と仕事。ごちゃごちゃしてくるといやになるが、 そういうときは10秒くらい別のことをやってから戻ってくる。 すると、ちょっと突破口が開けたりする。 書き続けていると、またごちゃごちゃしてくる。 そしたら最終章のまとめ部分を20秒くらい考える。 それから、また戻ってくる。 そんなこんなで時間をすごしつつ、それなりに進んでいく。 本を書くって、地味な作業の連続だなあ。

日記ダイジェストを更新。

気分転換にYukiWikiMiniのServlet版を作ろうと思い立つ。

2003年3月3日 (月) - 仕事 / 複数人の作業

[CR](ra) 淡々と仕事。 現状を編集長に連絡。要するに遅れてごめんなさいメールである。 編集長から暖かい返事が来て、とても励まされ元気が出る。

[PI] C MAGAZINEの連載記事「C#とJavaによるデザインパターンへのお誘い」の著者校正。 今回はThread-Specific Storageパターン。

「キリストにならいて」の翻訳は静かに、でも着実に進んでいます。 …といっても、 結城はあまり仕事していなくて、他の人たちが翻訳を進めてくださっています。 今年のはじめに呼びかけて、訳出作業はだいぶ進みました。 複数人で作業することの喜びのようなものをしみじみと感じています。

2003年3月2日 (日) - ブッシュ大統領の姿は私たちの姿だ

世界平和のために祈る。

ところで、世界平和のためや戦争回避のために祈るとき、私はいつも「世界から個人へ」と気持ちが移っていく。

どういうことかというと…。 戦争を起こそうとしている施政者を多くの人は非難し、批判する。 それはそれでいいんだけれど、私たち(すみません。書きやすいので「私たち」という表現を使います)は、 しばしばそのような施政者と同じことを小規模にやっているのだ。

ある国の施政者が、別の国に対して戦争をしかける。 あるいは戦争をちらつかせて自分の国の思い通りに他の国をコントロールしようとする。 直接武力で、あるいは経済制裁で、方法は違えども、要するにやりたいことは、 自国の思い通りに他の国をコントロールしたいということだ。

で、それと同じことを私たちは毎日の生活でまさに行っている。 ある人が、別の人に対して攻撃をしかける。 あるいは攻撃をちらつかせて自分の思い通りに他の人をコントロールしようとする。 暴力で、言葉で、陰口で、…。要するにやりたいことは、 自分の思い通りに他の人をコントロールしたいということだ。 ゆるしてやったら、自分が損した気持ちになるし、と。

戦争がなくならないのは当然だ、と思う。 私たちは日々小規模な戦争を人に対して(時には自分に対して)しかけているのだもの。

テロを仕掛けられても、攻撃を仕返さないようにしよう、という呼びかけは大事なことだと思うし、 戦争反対を呼びかけることや祈ることはとても大切なことだと思う。 しかし、それと同時に、 私たちの当たり前の日常の中に登場する「テロ」や「戦争」について考えることも重要だと思う。 たとえば、ある人があなたに「いわれのない暴言」を吐きつけたとする(正確には、あなたにはいわれがないと思われる暴言)。 これはいわば「テロ」のようなものだ。 それに対して暴言を返したり、陰口をたたいたりすることは正しいことだろうか、どうだろう。 もちろん、きちんと反論することは(あるいはさらりと無視することは)大事なことだ。 しかし、悲しいことに私たちはしばしば、テロに対してテロ(もしくは戦争)で応じようとする。 自分の気がおさまらないので、自分の手で復讐をしてしまう。報復をしてしまう。

とても悲しいことに、ブッシュ大統領は、私たちの毎日の姿なのだ。

報復を(特に自分に理があると思えるときの報復を)抑えるのは非常に困難だ。 人間には不可能かもしれない。

自分の力で抑えることができないからこそ、私たちは祈るべきなのだ。

2003年3月1日 (土) - 仕事

まじめに仕事。

[REF] JAVA Developerへ連載記事送付。

ぜひ、感想をお送りください

あなたのご意見・感想をお送りください。 あなたの一言が大きなはげみとなりますので、どんなことでもどうぞ。

あなたの名前: メール:
学年・職業など: 年齢: 男性女性
(上の情報は、いずれも未記入でかまいません)


何かの理由でうまく送れない場合にはメール hyuki@hyuki.com でお願いします。

豊かな人生のための四つの法則