通称「ぱるま」。どこかで見たようなスタイルのどこかで見たようなWeb雑誌。 Rubyネタではないが、大変役に立つ情報満載なので。 「Perlishのための他言語探訪」という記事ではRubyについて紹介されてます。 しかし、
Ruby は 1993 年に Yukihiro Matsumoto (通称 Matz) によって開発されたと言われています。しかし、この 1993 年版の Ruby を見た人はほとんどいませんから、本当にそんなものが存在していたのか怪しいものです。聞けば Matz 自身もこの当時のソースコードを持っていないそうです。実際に Ruby が人目にふれたのは 1995 年 12 月、fj.sources に投稿されたものです。ですから、実際には Ruby はやっと 10 年すぎたところと呼ぶべきではないでしょうか。10 年生き延びてやっと一人前というプログラミング言語の世界では Ruby なぞまだまだ経験の足りないひよっこです。その点、我らが Perl は 1987 年 12 月公開ですから、もうすぐ 20 年選手。経験と資産の蓄積がものを言います。
とは大変失礼なことだ、ぷんぷん。
ゴールデンウィーク進行なのでしめきりが早い。
オープンソースマガジンの方は、最近の若者への提言(風)。
実は先週15歳の子からメールをもらい、 それに対しての返事がベースになっている。 パーソナルコンピュータ黎明期に育った私と、 パワフルなPCに囲まれてインターネットがある環境の少年たちとでは 違うところも多いよね。でも、同じところもあるんじゃないか、とかそんな感じ。
この「アドバイス」が彼にとって役に立つんだかどうなんだか。 役立つといいなあ。
朝から東京へ移動。Rails講習会の詳細を詰めるための打ち合わせ。松江からは、私、前田くん、社長。
カリキュラムがほぼ決定したのと、 例題が確定。その他、事務的なことも含めていろいろと決まった。 また、6月以降の次回、次々回についてもおおむね確定。 近日情報公開。
メイン講師は『4797314087』などの著書で知られる 後藤 裕蔵。ヘルプで『4274066401』監訳の前田修吾、それとTAに私ほか数名、という形になりそう。
RubyのGCについて。普段は知らなくてもいいレベルまで解説。
英語なのが残念な人も多いかも。
以前にも紹介した、JVM上で動作する関数型言語。 2.0系になってより新しくなって新登場。
defというキーワードとかRubyに似たところがあるなあ、 と思ってたんだけど、多重継承を廃止しMix-inを持つなど、新しくなってより似てきた感じ。
もうしばらくウォッチしてよう。
私のマシンではJREがうまく動かないので試せない。
無線LANが使えて、会社から近いという理由で泊まってみることにした。
カプセルがあまり大きくないのはまあ最初からわかっていたが、 内部に電源がないのが痛い。無線LANはありがたいんだがねえ。
結局ロビーでずっとPCを使っていた。 できればここは禁煙にしてほしかった。
まあ、話のタネとしては十分だろう。 やっぱ次回からは普通のホテルに泊まろう。
朝から渋谷に移動して、ゆうぞうさんとG社を訪問。
いろいろめずらしいものを見せてもらった。 めずらしいものにも乗せてもらった。 詳細が書けないのが残念だ。
お昼をご馳走になった上、 おみやげまでいただいてしまった。
その後、赤坂に移動し、 CL社を訪問。
こちらも大変楽しい時間を過ごさせてもらった。
というか、こちらからなにも話してないのに 「東京にいらっしゃるそうですね。ぜひ遊びに来て下さい」というメールが来てしまう CL社情報網は恐るべきものだと思う。
倉田真由美という人が『4594047459』というマンガを描いている。私は読んだことないのだが、以前に彼女がテレビでインタビューを受けていたところを聞くに「だめだめな男(通称だめんず)」にひっかかる女性がいる。端からみるとつりあわないのだが、女性の方が『私が見捨てたらこの人はどうなる』と思ってずるずると...」とかいうような話らしい。
どんなにダメ男でも、 「こんなところがだめ」、「あんなところがだめ」とか言いながら、 それなり満足してしまうものらしい。 で、自分で彼のことを悪く言うのはいいけど、 他人が悪口を言うと、「でもいいところもあるのよ」とかばってみたり。 で、少し優しくしてもらったりすると 「彼ってこんなに優しいの」とか有頂天になっちゃったり。
ダメ男であることそのものがある種の魅力になっちゃっていると。
そういう話なんだよね、違ってたら教えて。
でも、そういう感情って、女性特有のものではないのかもしれない。
たとえば我々プログラマーも、コンピュータに向かって「馬鹿だ、馬鹿だ」と言いながら 嬉しそうにデバッグしてたりするし。
そういえば、ある言語(特に名を秘す)の愛好者は、 「この言語のここがダメ、あそこがダメ」とか言いながら、 第三者がけなすと怒りだしたりするのをよく見かけるような気がする。
ダメ言語であることそのものがある種の魅力になっていると。
なんてことを思ったある日の昼下がり。
ドリコムがRails(を中心としたオープンソースフレームワーク)を対象とした ソフトゑコンテストを開催するという話。 賞金は大賞が100万円。
しまった。これこそうちが率先して行うべきことだったのかもしれない。
ところで、Award on Railsといいながら、Rails限定でないのは、まあいいとしても、 審査員にRuby/Rails関係者が全然いないのも寂しい話だなあ。
プログラミング言語の「良さ」はどのように定義されるのか、とかいうような話。
一貫性とか単純さとかわりと当たり障りのないネタなのだが、 最終ページに大ネタが。
Aside from a formal specification, which I hope to produce in the near future, the language needs a name. Here is where many modern languages have done well. Perl, named after Pearl Biggar (Larry Wall’s fiancee), Ruby (named after Ruby Kusanagi Matsumoto, Yukihiro Matsumoto’s youngest daughter), Ada (named after Charles Babbage’s first programming student, Ada Lovelace), and COBOL (named after Colleen Bolero, the heroine of a Ravel operetta) have set a high standard for naming techniques. With that in mind, I propose to call this world’s most maintainable programming language Avril, named less provocatively after my long-suffering girlfriend, who graciously allowed me many evenings and weekends by myself while I wrestled with these ideas.
なんと。私の末娘の名前は「Ruby Kusanagi Matsumoto」だったのか。 っつうか、Kusanagiってなんだよ。攻殻か。 と思ったら、このページだけ日付が4月1日になってる。やられた。
蛇足ながら、Perl Historyによれば、Larryの奥さんの名前はGloriaで、 当初自分の言語をGloriaと名付けようと思ったものの、 家庭内での混乱をまねくのは明らかなのでやめた、とある。 確かに自分の妻や娘と、自分の言語の名前がおんなじだと 話がややこしくなりそうだ。
私: 今日、Rubyがおかしくなっちゃってさあ。
娘: え?
私の所属する(株)ネットワーク応用通信研究所には、 今年は三名の新卒を受け入れた。で、今週は新人研修期間であったのだが、 今日は「ソフトウェアについて学ぶ日」なんだそうだ。
ところが、受け入れ先であるはずのうちのチームが、 いろいろ忙しいので、時間が取れそうなのが私だけ。
いや、私が暇ってわけでは...。 いえ、まわりの人に比べたらずいぶん余裕があります。 すいません。
というわけで、今日はオープンソースについて学ぶ。
実際に自分で調べてまとめてもらうという、 スパルタというか、講師の手抜きって言うか。
が、じゃあ、机上の知識だけではビジネスはやっていけないわけだが、 まあ、今日のところはこの辺で。
その後、新人歓迎会。
今回は「整数」がテーマ。 が、数学どころか算数から苦手な私にはけっこうつらいテーマを選んでしまった。 まあ、自分で選んだことだからしょうがないんだけど。
コンピュータにおける整数について、 二進数とか整数型のサイズなどから、整数アルゴリズムにいたるまで。 最初の〆切は今日なんだけど、終わりそうにない。もうしわけなし。
私の周囲が忙しい最大の原因がITProで取り上げられた。 限られた期間でCMSから開発し、それなりの成果をあげられたことは嬉しい。
ま、内部的にはまだまだ直すべき点もあるのだが。
このCMSはオープンソース化することが決まっている。
半年に一度の総大会ビデオ鑑賞会。今回はかずひこくんからプロジェクターをお借りした。 ありがたいことだ。
文明の進歩で、総大会から1週間で吹き替え付きDVDが届くようになった。 また、インターネットサイトでは直後からビデオ、音声、テキストが入手可能。
が、みんなで見るのはそれはそれで意味がある、と思う。
個人的には今回一番面白かったのは、 結婚について熱く語るネルソン長老が、実はこの大会の直後に再婚されたということ。 そうか、あれは壮大なノロケだったのか。
いや、それはそれとして、どの話も有意義であった。
関西Rubyで知る人ぞ知るCuzicさんの尊敬するキリスト教徒は、
なんだそうだ。私なんぞが「尊敬するキリスト教徒」に入ってていいのかってことは おいといて、ジム・スキナーと私は20年ほど前に同じ教会に集っていた。 まだ私が大学生のころだ。 当時はただの「日本語のメチャメチャうまい外人」だったのだが、 「7つの習慣」の裏表紙かなんかに写真が載っててびっくりしたのを覚えている。
出世したもんだなあ。
書き終わった、やっと。
アルゴリズムの紹介の部分で、 公開鍵暗号についてちょっとだけ触れた。 原理からの解説が暗号化コード込みで半ページというのは驚異的だと思うが、 簡潔すぎて読者がついてこれないかも。
次女の入学式。大きくなったものだ。
が、末娘がぐずるので、途中で退席して講堂のまわりをうろうろした。 まあ、昨年の長女の入学式でも似たようなものだったが。
今年は学生三人ともクラス替えだったが、 それぞれに不満が残ったようだ。たった2クラスずつしかないとはいえ、 思うようにはならないということか。
YAPCで近藤さんに久しぶりに会ったかと思えば こんなインタビューをしてたのか。
個人的に一番面白かったのはホンダアコードについて。
Wall: 日本のPerlファンからは、いつも「まだあのホンダアコードに乗っているのか」と聞かれます。オライリー・ジャパンが出版したPerl本の日本語版巻頭で、私がホンダのアコードに乗っていると書いたからです。それでその答えなんですが(ニヤっと笑って)、実はそうなんですよ。今でも乗っています。
あとは、ここ。
Wall: ええ、「ドロボー」ですね。もっとも、我々言語デザイナーは皆そうですが(笑)。
私も一杯Perlから「いただいた」。まさか将来Perl6がRubyから「とりかえす」ようなことが起きるとは予想もしなかったけど。
第4回北東アジアオープンソース推進フォーラムだかなんだか*1に 出席するため、中国に移動。
まずはホテルから成田へ移動。朝8時半集合ということを考えると 成田泊は正解であった。その後、NH905で北京へ。
飛行時間が3時間半しかないということで、 あんまり余裕はない。結局ほとんど映画を観てた。 見たのは『ナルニア』。なかなか原作を忠実に映像化しているように 思えた。が、実際に読んだのはずいぶん前なので、 また読み返してみないとな。
北京首都国際空港はたいそう立派なものであった。 ところどころ中国っぽいディスプレイがある以外は 西洋の空港と違わない。 ケンタッキーフライドチキンやらスターバックスもあるし。
それからバスで天津へ移動。3時間くらいあるらしい。 バスの中ではかなりうとうとしていた。 が、延々と続くポプラ並木が印象的であった。 下草とかほとんどないんでほうっておいても植物の生えない地域なのかなあ。 ずいぶん乾燥してるみたいだし。
で、会場は天津の中でもFree Trade Zoneと呼ばれる地域らしくて、 中心街からは車で30分以上かかるところらしい。 大変りっぱなホテルではあるが、 とりあえず周囲には倉庫とかしかない。 おみやげ買う場所も時間もなさそうだ。
夕食は中華料理(やっぱり)。 周囲の人は「ビールが冷えてない」と言っていた。 酒を飲まない私は「水を」とお願いしたら、 グラスにお湯をなみなみと注がれた。
フルーツポンチがらしき食べ物が温かかったりと、 温度に関する感覚が我々とは少し違うらしい。
部屋はツイン。雰囲気はアメリカのホテルに似てるね。 プラグはA, C, O, O2あたりが差せるマルチタイプ。 実際、部屋のテレビはA、ランプはAのものとO2のものの両方が置いてある。
とりあえず天津のホテルでは変換コネクタは不要、と。
*1 「だかなんだか」というのは資料ごとにミーティングの名前が微妙に違うから
夕べのDebian upgradeでカーネルが更新されていたので リブート。すると、Xが起動しない。
どうも、fixedフォントがない、ということらしい。 あちこち見るが、どうも/usr/X11R6/lib/X11/fonts/misc/に6x13B-ISO8859-1.pcf.gzがないということらしい。なんでないのかな。/usr/share/fonts/X11/misc/をfontpathに追加して起動する。
すると、今度はxdmがおかしい。 /etc/X11/xdm/xdm-configに/etc/X11/xdm/Xsetup_0を起動する設定が入っているが、 そんなファイルはないかららしい。このファイルを修正して対応。
で、ようやっとXが起動したが、今度はフォントサイズが妙に小さくなっている。 が、これはちょっと見にくいだけで実害はないので放置。
さらにMagicPointがsegmentaion faultするようになる。 プレゼン前には呪われるのか。
これは1.11bをコンパイルして対応。 昨日、X.org関係がそろって更新されたから野良ビルドのmgpが対応できなかったんだろう、 たぶん。最新を(configureオプションを変えて)コンパイルしたら SEGVは止まった。
しかし、以下の点がまだおかしいけど。
後者は仕様変更だと思うけど、結構不自由。 前者はとりあえずスライドを書き換えて対応した。
ホテルの朝食。まあ、おいしいが、驚くほどではない。 中華が多いが、日本でも親しんだ味なので悪くない。 ただ、魚系はあまり好きでない香りがする。 処理の問題なのかな。 洋食っぽい料理も多い。
おハシの国なので、ハシが出されていて、 これが結構心地よく食べられた。 スパゲティもハシでずるずる。
これはいい。
こんどアメリカ行く時には「マイ箸」を持参するかなあ。
で、「北東アジアOSS推進フォーラム(だかなんだか)」のWG2というところで、 オープンソース貢献者賞受賞者(高林くんが欠席なので3人)は プレゼンすることになる。
まあ、たったの5分ということなので、なんとか片づける(英語だけど)。 スライドの修正も間に合ったので無問題。 今回は「呪い」に勝ったぞ。
しかし、中国、韓国、日本で受賞者のタイプが全然違うのが印象的。
日本は「貢献者賞」というだけあって、 それなりに実績がある人(自分で言うのは恥ずかしいけど)が選ばれているのに対し、 中韓はソフトウェアコンテストが開かれたようだ。 それでも中国の人は実際のオープンソース開発者って感じだったけど、 韓国に受賞者はまるっきり学生のプロコン参加者って感じ。
良い悪いはないんだけど、各国揃ってなさが印象的だった。
その後、WG2の議論を少し聞いてたんだけど、 印象としては「CJKの壁は厚い」って感じ。 まず、共通言語がないので通訳が入るのだが、 今回日韓通訳のパスがないので、 日本語→中国語→韓国語、 という変換が行われることになる。 そのうち、ちゃんと伝わっているのか、 いないのかよく分かんなくなったりして。
みんなが英語をしゃべれればいいんだけど、 みんなあんまり上手じゃないんで、 それでもなかなか難しいみたい。
お互い、近くて遠い国って感じなんだろうか。
そういえば夕べのチェックインのときも フロントが英語がわからなくて大変だったし。 ここは一応「天津天保国際酒店(Tianjin Tianbao International Hotel)」って 名前なんだけどなあ。
みなが席についてから、各国の偉い人が次々と挨拶する。 なかなか誰が挨拶するかとか、どの順番で話すのかとかが 非常に重要らしい。で、みんな延々と話し、 それに逐語通訳がつくのでめちゃめちゃ時間がかかる。
やっと乾杯の発声がかかったのは、開始後なんと40分後でしたとさ。
で、中華料理。おいしいんだけど、 どう考えても食べ過ぎです。本当にありがとうございます。
ディナーの席で「コードも書かない人に言われたくない」の三浦さんに会う。 「あれって端で見てる人は、私と小飼さんと三浦さんの全員が「コードを書く人」とは絶対思ってないですよね」とかいうような話をする。
夜の10時から、明日の授賞式のリハーサルをする、という。 マジですか?
で、あっちに立て、こっちに移動しろ、とバミってある舞台の上をいろいろ指示される。 そんなんどうでもいいじゃん、とか思うけど、 真剣な中国人スタッフを見てるととても言えない。 言葉も通じそうにないしな。
IPAの中の人によると、その前にも「トロフィーはこれでいいか」とか、 「盾の文言はこれでいいか」など延々と議論が行われてたらしい。
それが中国クオリティー?
で、腹が立ったので(何に?)、mgpをハックすることにする。
最初の行の属性の問題はparse.cのthirdpass()関数の中で、 属性を設定している部分らしい。「#if 0」でエスケープされている方の処理を 生かすと問題は消えた。もちろん別の問題があるんだろうけど。
あと、clear_esc()関数をいじって、 「知らないエスケープシーケンスはバックスラッシュごと残す」という仕様にした。 とりあえず私の問題は回避できる。
こんなことができるのもソースが入手できるからだ。
オープンソース万歳。
寝坊した。夕べ遅くまでハックしてたせいだ。 朝ご飯は食べ損ねる。まあ、たぶん似たようなメニューなので別に惜しくはないけど。 こういうビュッフェスタイルってのは同じホテルに連泊すると飽きるよね。 それにどうせ、おなか空いてないし。連日の食べ過ぎで。
で、今日はセレモニー。とても重要な式らしい。 我々の授賞式もこの中に含まれる。
んで、呼ばれたので、その通りに動いて、 トロフィーと盾を受け取る。重いんですけど。これ日本まで持って帰るの? 宅急便とかないのかなあ。
それはそれとして、夕べあれだけリハーサルしたのに、 実際の式は全然段取りが違うってのはどういうことよ。 これが中国式段取り?
よくわかんないけど。
なんか文化的違いがいろいろあって面白い。
が、分煙がさっぱりなのはいただけないなあ。
同時通訳が結構苦労しているらしい。 全体が揃っても日韓の通訳パスはないみたいで、 この会場の同時通訳の設備が2パスを想定してないとかで。 やたら通訳に時間がかかったかと思ったら、 昼食前に突然「午後の発表者は英語で」とかアナウンスがある。
なんだよ、それ。
昼食時に水を頼んだら、「アイス?」と聞かれて冷たい水が出てきた。 ちゃんとやってくれることもあるようだ。 コーラを普通のドリンクサーバに入れるのはいかがなものかと思うけど。 気が抜けちゃうんじゃないかなあ。
昼食後に自分のPCをつないでテストしようとしたら 中国人スタッフにえらい嫌がられる。 どうも不慮の事故を心配してるみたいなんだけど、 ビデオ出力のケーブル差し替えただけでトラブルは起きんだろう、普通。 が、彼女と意思の疎通ができないので偉い困る。 英語でいろいろと説明したが、どうもよくわからないみたいで、 いくら説明してもまだ不満げだった。
で、自分の発表の番には急遽英語で話した。 んが、準備もしてないのでへろへろだった。責任者出てこい。
さらにSRA OSSの石井さんとか、平気で日本語でプレゼンしてるんだもの。 私も変なことしないで日本語で押し切ればよかったかなあ。
あーあ。
いただいたトロフィーには2006年4月とだけ書いてある。 なんでも、14日は中国語でえらい縁起が悪いそうで、 中国側の配慮(?)で日付は入れないことにしたらしい。
後で中国語のわかる人に聞いたら14は「すぐ死ぬ」と同じ発音なのだそうだ。
えーと、今日14日は私の誕生日なんですけど。 生まれた時から「すぐ死ぬ」で決定ですか、そうですか。
まあ、元から4とかに縁が多い人ではあるけど。 生年月日も車のナンバーもパスポート番号も銀行口座番号もみんな4ばっかり。
だから、4ってきらいじゃないよ。
オレンジ色のLEDが点滅して充電しなくなった。 もうバッテリーがダメになったかと思ってあせったが、 いちどバッテリーを外して、電源を入れ直したら充電するようになった。
「呪い」の残りか。
なぜRailsがメインストリームにならないか、について。
あげられた理由は以下の通り。
でもね。
新しい技術なりなんなりが登場した時には、 キャズムを越えることは非常に困難であることから、 メインストリームにならない(キャズムを越えない)理由は 上にあげたものだけじゃない、それこそ星の数ほど見つけられると思うんだけど。
論理的に考えれば、 短期的に予想を当てたければ否定側に、 長期的に予想を当てたければ肯定側に賭ければよいのだから、 確率から言えばRailsはメインストリームにならないと言っておいた方が 少なくとも短期的には当たる確率は高い。
それはそうと、なんでメインストリームにならなきゃいけないのか。 Railsは便利で、Rubyは素敵。 それでいいじゃん。
マイナー街道まっしぐらの私は心からそう思う。
まずホテルをチェックアウト。 依頼すると一生懸命仕事してくれるが、 なにかわからないことやトラブルがあると周囲の人間が 次々と口を出すので、待っている客がいても放っておかれることがある。 自分がしてほしいことは察してもらうのを待つのではなく、 きちんと主張する。これが中国向けのやり方なのかもしれない。
バスで天津市内を通り抜け、北京まで。
天津の市街地は意外と近かった。車で10分くらい。 これくらいならタクシーを出してもよかったかなあ。 まあ、市街に出た後で言葉で苦労するのは目に見えているので ガイドが必要なんだけど(そして今回ガイドできそうな(暇そうな)人は見当たらなかった)。
バスでうとうとしているうちに北京に。 買い物する暇もないので、チェックインしてから、おみやげを。 聞くところによると空港内では市内の10倍高い、ということらしいのだが、 今回は選択の余地はない。 そういえばあまり安い気はしなかった。
おみやげは食べ物が良かろうと、「天津あまぐりチョコレート」なるものを購入。 天津ではあまぐりは見かけなかったが(ディナーにあまい栗は出たけど)、 それは市内に出なかったからだ、と自分に言い聞かせる。 日本語で「天津あまぐりチョコレート」と書いてあるあたりが、 露骨に日本向けを意識させて、かなり気になるが、 見なかったことにする。
飛行機。機内では『博士の愛した数学数式』という映画を観る。
うーん、授業のシーンが少しあざとい(し、現実味がない)が、面白かった。
数学者ってあんなにロマンチストなの?
数学者つながりで『プルーフ・オブ・ライフ』も見たくなったなあ。
帰国。えらい混んでるのはなんでなんだろう。
電車で千葉の妹のうちに。甥、姪に久しぶりに会う。
で、一宿一飯の恩義で妹のうちのコンピュータの手入れをする。
ウィルスソフトを更新したり、スパイウェア除去ソフトを入れたり。 ドライバを更新したり。
が、時間が足りずに、除去しきれないアドウェアがあった。 再起動後最初にIEを起動すると、勝手に広告ページのIEがポップアップするのだ。 スパイウェア除去ソフトでは検出できなかったし、なんなんだろ。
Windowsは難しい。
妹家族と野田支部へ。
野田支部は弟が伝道中にオープンした小さな支部だ。 話に聞いていたが訪問するのは初めて。 よその教会に出席するのはなかなか刺激的で嫌いではない。
が、聖餐会でステーク会長が野田支部をクローズし、 会員は松戸と春日部に振り分けるとの発表が。
いろんな事情があるらしい。
人数が少なくて大変だったところもあるので、 よかった面も多いのだろう。教会が移るのは大変なこともあるんだろうけど。
弟がオープンし、兄がクローズに立ち会うというのも 奇妙なものだ。浜松といい、野田といい、妙なところで縁があるものだ。
集会終了後、食事会。 男性陣が各自カレーを作り、「合成」するというなかなかな荒技。 しかもおいしかった。いろんな具に遭遇できるというのも醍醐味かも。
集会後、流山おおたかの森駅からつくばエクスプレス。 秋葉原・浜松町経由で羽田へ。
やっと帰宅。
今日は息子の誕生日でもあるので、 夕食はお祝いとする。うれしそうな息子の顔がかわいらしい。
夕食後、妻が見せたいビデオがあるといって、 DVを再生する。卒業式かなにかで撮ったものかと思ったら、 知人や家族たちから私の誕生日へのメッセージであった。 なんと1ヶ月以上前から機会を捕えてメッセージを撮りためていたらしい。
その心に感動した。
みんなに「おめでとう」と連呼されて、 めちゃめちゃ照れ臭かった。直視できないじゃん、こんなことされたら。
本当は今日も東京でRails講習会のための打ち合わせのはずだったのだが、 昨日ようやっと帰宅して、今日また東京出張では体が保たないので、 Skypeで会議に参加することにした。
講習内容もかなり具体化してきている。 まあ、参加者が後悔しない内容になっている(と、いいなあ)。
私も参加する。どうやら私もビジネスマンのコスプレをする必要があるようだ。 うーむ。
それはそうと、Skype会議には課題も多い。
今後、Skypeで会議するためには以下のような点に気をつける必要があるだろう。
電話会議は空間の障害を克服できる有効な方法だと思うので、 今後も工夫していきたい。
今回の中国出張の間、Jones & Linsを持参して GCについていろいろ考えていた。
結局、スクリプト言語は性能を最重視していないので、 対応すべきは停止時間の短さであろうという結論に至った。 ユーザインタフェース系などでのポーズは結構問題になることも多いようだから。
となると、今後RubyのGCについて検討すべきはインクリメンタル化なのであろう。 IoもLuaもインクリメンタルGCを実装しているのだし。 とはいえ、トータルのスループットを考えると効率を無視するわけにもいかず、 効率の良いインクリメンタルGCの実装はどうしたものかと考えたりするわけである。
結論はまだない。
著者校正。今回は分量はちょうどいい。珍しいことだ。 私は分量の見積もりが不正確なので、 8ページもあるとたいてい10行や20行、足りなかったり、多かったりするのだが。
RSA暗号はやっぱり半ページほど。 この原稿を書いたおかげで、RSAアルゴリズムがはじめて理解できたよ。 今まで公開鍵暗号とはどんなものかとか、 素因数分解を使っているとかしか、概要しか知らなかったもの。
まして、RSA暗号プログラムがRubyでわずか5行で書けるなんて知らなかったし。
著者校正。今回は手紙文ということで、編集がほとんど手を入れなかったのと 引用部の文字幅がやや狭いのでなんと27行オーバー。記録だ。
あちこちをごそごそと削る。 本当は「4大マイコン誌」の話とか、 昔話を一杯書きたかったんだけどなあ。
「An On-the-fly Reference Counting Garbage Collector for Java」 などというタイムリーな論文が掲載されている。
ので、読む。が、読んでいるうちに寝てしまった。 難しいぞ。
結局は、直接Reference Countを更新する代わりにスレッドごとのキューに記録しておいて、 後でまとめて更新するということらしい。 それはあんまりReference Countの良さを活かせないんではないだろうか。 ハンドシェークも多いし(4回)。
論文を読むかぎりは通常のマーク・スイープに対して性能が向上しているとあるけれど。 実際のところはどうなのかなあ。
ところで、どうもこの論文、読んだことがあるような気がしてきたんだけど。 前に(それもだいぶ前に)OOPSLAあたりに概要が載ってたんじゃないかなあ。
で、このアルゴリズムのRubyへの適用を考えると、 スレッドの扱いなどで複雑すぎるような気がする。 それとSlidingViewバッファなどで使われるメモリ消費も気になるし。
むしろ、IoやLuaのコードを読むべきかなあ。
B00008B240
中国でバッテリーの保ちに悩まされたのと、 大阪のラディカル・ベースで 妙に安かったので、衝動買い。
さすがにバッテリーが長持ちする。体感だと倍くらい?
気がついたこと
長らくFeedBringerを愛用してきたわけだが、 ちょっと他のWeb系RSSリーダーも試してみることにする。
Googleのサービス。GoogleらしくAjaxばりばりだったりする。
気に入らなかったのは、FeedBringerのからイクスポートしたOPMLファイルが読めないこと。 どちらが悪いのかはわからなかったけど、FeedBringerから別のRSSリーダーへ 移行したことはあるから全然読めないってことはないと思うんだけど。
あと、二点ほど不満があるので、たぶん使い続けることはないんじゃないかな。
Livedoor渾身の新サービス。すべてキーボードから操作できるのがよい。
が、これにも不満がないでもない。
なんて書いていると直ったりするのかしらん。
ワードの活動で宍道森林公園でバーベキューを。 ブラジル出身の宣教師が手配してくれた ブラジルから輸入したという肉7Kgや、野菜などを 炭火で焼く。40人強の出席者があったが、 大変好評であった。
子供から大人まで大喜び。しかし、7kgあってもあっという間になくなったな。 普段は肉はあまり食べないうちの妻や息子も喜んで食べていた。 やはり野外活動での食事は格別なものらしい。
天気予報では午後から雨の確率80%ということで、 天気を心配していたのだが、みなの祈りが通じたのか 最後まで曇り空のまま、雨に降られずにすんだ。
これも日ごろの行いが良い人がいたからか。 いや、私じゃないけど、さ。
なんだそうだ。上記エントリから引用。
「日本発のイノベーションに関して、近いうちに発表がある予定だ。我々の顧客も、Rubyには大きな関心を持っている。日本を、市場としてだけでなく、イノベーションが起こる場所としても大きな注目を持って見ている」。
BEAからRubyに関する言及を聞くとは思っていませんでした。本日最大のサプライズです。
私もびっくりだ。念のため明らかにしておくが、現時点でBEAとRubyについて話をしたことはない。
が、この文章をよく読むと「日本発のイノベーションについて発表がある予定」と書いてあるだけで、それが直接Rubyであるとは断言してないんだよなあ。実は全然違う「イノベーション」のことで、Rubyは単なる「弾よけ」として言及されたのだったりして。
懐疑主義すぎ?
追記 (2006-04-26)
プレス向け発表会というものの常識で考えると、ここまで言及しておきながらRuby以外の「日本発のイノベーション」に関して発表しても、BEAにとって何のメリットもないと思います。
私は、この発言は「BEAもRubyに関心があり、何か発表する可能性があるので、そのときにはちゃんと記事に書いてくださいね」というサインを記者団に送ったのだと解釈しました。
ということなので、意外と(私が思ったよりも)本気なのかもしれない。 それならそれで喜ばしいことだと思う。
BEAについてあまり詳しくないが、Java寄りの会社だと認識しているので、 だとすると、星さんも推測されたようなJRubyへの対応というのがありそうなのかもしれない。 JRubyには私は直接タッチしていないので、私へのコンタクトがないというのも うなずける。
今日の聖餐会のお話しのテーマは「十戒」。
旧約聖書の基本的な戒律だから、 基礎中の基礎という感じだが、改めて学んでみると奥が深い。 うちの妻を含めて3人の人がお話をした。 あ、私もちょっとだけ話したから4人か。
十戒はネガティブな表現(〜してはならない)ばかりだが、 実際にはもっとポジティブな適用が可能だとか、いろいろ。
その中で一番印象深かったのは、 大学で音楽を専攻していた宣教師の言葉。
音楽というものにはただひとつの正解はない。
正解はないけど間違った答えはある。和音など音楽理論のルールに従わない音楽は不快なものとなる。 そのルールに従った範囲内で無限の創造性が発揮できる。
戒めも制約のようにみえるかもしれないが、 それに従いつつ「自由」と「幸福」を得ることができる。
細かい表現は忘れちゃったけど(特に最後の方)、内容はこんな感じ。
制約の中での自由にこそ意味があるってのは言語デザインも同じだなあ。
夕方、末娘を連れて散歩をしていたら、 裏の家のご主人に会う。
もう引退されたこのご主人とは散歩のときにしょっちゅう会うのだが、 先日は米子出身でソフトウェア関係の仕事をしているなんて話をした。
そしたら、今日
米子で松本さんと言えば、Ruby言語を作っておられる方が松本さんとおっしゃるが。
ですって。ビンゴ。
はあ、それは私です
なんとご近所の人からそんなことを言われるようになる日が来るとは 夢にも思わなかったよ。それも「米子の松本さん」の代表格になるとは*1
なんでもBASICなどではプログラミング経験があり、 以前Rubyの本(『オブジェクト指向スクリプト言語Ruby』かな?)を買ったが、 まだ積ん読状態なのだとか。
うーむ。
*1 米子近辺は特に松本姓が多い土地なのだ
朝から東京へ移動。
今年もU-20プロコンが開催されるので、本年度第一回の実行委員会が開催されるのだ。 今年も審査委員を依頼された。
U-20プロコンは例年非常に楽しませてもらっているのだが、 主催者側としては応募点数の少なさを気にしているようだ。 実際、総応募数は年ごとに少なくなっているそうだ*1。
ということは、競争が少ないってこと?
最優秀賞になれば、経済産業大臣表彰がもらえるし、 副賞として15万円相当の物品ももらえる。 また、このコンテストに入賞した事実を引っさげて 大学にAO入試で入学した人が何人もいるそうだ。
応募要綱は昨年とほぼ同じ。 〆切は7月末あたりになるだろう。 審査員としての私は規模や完成度よりも着想を重視したいと思っている。
若人は挑戦してみてもらいたいなあ。 今からでもなにか考えてみてはどうだろう。
*1 実は未踏やLinux Conferenceの論文応募を含めて、近年応募系は低調なのだそうだ
U-20ではまだ中学生以下の参加はないという話を聞いて、 お風呂に入りながら、息子とプログラミングについて話してみた。
最初、プログラミングとは「お父さんのやってるワケのわからないこと」という イメージを持っている彼は「(なんだかわからないけど)絶対にイヤ」とか話していた。 が、彼の好きなゲームデザインを例に出して、そうやってどういう時にはどうなるかを 事細かに決めて、コンピュータに教えてやることがプログラミングなんだよ、 と話したらすこしわかってきたようだった。
そうなんだよ、プログラミングはデザインすることなんだよ。 誰かの決めた訳のわからない仕様をプログラミング言語に書き直すことではないんだよ、 断じて。
以前、話題にしたIT拠点の話の打ち合わせ。
島根県庁、松江市役所、島根大学、NaClなどの人が顔合わせ。 みなさん、やる気満々である。
なんかおおげさな話になってきたなあ。 それだけ注目されているということなんだろうけど。
「Rubyはすでにエンタープライズテクノロジーである」というお話。
つまり、
という論理。わかるようなわからないような。
マークに用いるカラーをローテートすることで、 マークフェーズとスイープフェーズを並行に行うことができるので、 これで効率化だ、と思ったのだが、 考えてみれば、カラーを変えようがなにしようが、 これではマークフェーズとミューテーターが同時に動けない。 やはりライトバリアは必要なのであった。
スイープが並行にできるのは嬉しいことも多いだろうけどね。
自分の間抜けさ加減が悔しいので(だから研究者にはなれないんだ)、 もうちょっと考察してみることにする。
あるプロセスで割り当てられるオブジェクト数をn、 参照されなくなるオブジェクト数をmとする時(だから当然n>m)、
となる。実際問題としてRubyが救済しなければならないケースはどれなのだろう。
スイープのインクリメンタル化は簡単な割に効果がありそう。 コストもあまりかからないしね。
マークのインクリメンタル化にしても、 世代別GCにしても、いずれもライトバリアが必要なので、 実行効率に影響を与える可能性がある。
インクリメンタルGCのアルゴリズムの紹介。 ちゃんとスレッドを意識している。
愛用のThinkpadのポインティングデバイスは トラックポイントと呼ばれ、これが機種選定の大きな理由になっているわけだが、 黒い筐体の真ん中に赤いゴムキャップが大変印象的である。
いや、印象的だから選んだんじゃなくて、 最近のノートパソコンに使われているあのパッドがダメだからなんだけど(ほんとはトラックボールのほうが好き)。
で、このゴムキャップ(うちでは「赤いポッチ」と呼ばれている)が末娘の攻撃対象になるのだ。
しばしば、トコトコとこちらの方に歩いてきて、 「はいっ」という感じでなにかを手渡してくれる。 赤いゴムキャップだ。
あるいはテーブルの上においてあるThinkpadを操作しようと ふと見るとキーボードに赤い「例のモノ」が付いてない。
末娘に「赤いポッチ、どこにやったの?」と尋ねると わかっているらしく、どこからか持ってくる。
幸いなことにまだなくしたことはない。
もうひとつ親馬鹿エントリ。
14日には、末娘がSkypeで私のことを「おとーたー」と呼んでくれて 嬉しかった覚えがあるのだが、最近はすっかりそんな風には呼んでくれなくなった。
いつもいつも「おかーたー」である。
おかしいのは、妻だけでなく、 私や姉たちに対しても「おかーたー」と呼んでいる。
どうやら、「お願い」というような意味で使っているらしい。
最初は「30分ほどRubyの紹介とイントロを」という依頼だったのだが、 「Railsの概要も含めて1時間」という依頼になり、 ついに「午前中2時間」という話になった。
だんだん分量が増えていくのであった。ぐすん。
スライドを準備しないといけないし、 なんでも講師はスーツ装備だそうで、 セミナー参加者は 世にも珍しいまつもとのサラリーマン・コスプレが目撃できることになりそう。
実はまだ若干の空きがあるみたい。 とはいえ、本番まで時間はないし、GWになっちゃうし、 金額は高いし、駆け込み参加者はいないだろうな。
Don Box氏による『「Javaの生みの親」に聞く「AJAX、LAMP、Ruby on Rails」』への反応。 ちなみに私の反応はこちら。
From where I sit, Ruby has the language thought leadership position and is the competitor I hope AndersH is losing the most sleep over nowadays.
The fact that the "father of Java" is so unconcerned makes me wonder if Schwartz's first act as the grand poobah at Sun should be to hire Matz?
(超訳)
私から見れば、Rubyは言語アイディアの先端を行ってて、AndersHが(心配で)夜も寝られないくらいだといいなと思っている。
「Javaの父」がそんなに関心がないってことは、SchwartzがCEOになって最初になすべき仕事はMatzを雇うことなんじゃないかって思っちゃうよ
ありがたいことだ。 もっとも、Sunに雇われてる間に勢いを失った言語(SelfとかTclとか)のことを 考えると、たとえオファーがあっても素直に「うん」とは言えないかもしれない。 海外(欧米)に住むのが長年の夢である妻は大喜びするかもしれないけどね。
ところで、Wikipediaに「Yukihiro Matsumoto」なんてエントリがあるなんて知らなかったよ。 うわっ、NaClのエントリもある。
ちょうど我々が島根県や松江市とやろうとしていることと 方向性が同じで驚愕してしまう。偶然の一致か。
地方自治体はスクリプト言語を使った産業を速やかに支援すべきではないかと思います。もし、需要から考えて供給が極端に不足している、XML、 Javaスクリプト、PHPやPhythonをまともに扱える技術者が100人、いや、10人いるような地場企業なら、それがどの県の企業であっても、確実に世界中が注目します。Ajaxやオープンソース版.NETであるMonoの技術者が何人かいただけで、MicrosoftやGoogleですら目を向けるでしょう。優秀な技術者を世界中から求めている企業にとって、その場所が青森県であるか鹿児島県であるかなどはさして問題ではないのです。宮城県に PHPの優秀な技術者を多数抱える地場企業があれば、楽天が野球以外で目を向けますよ(笑)。
スクリプト言語が今後向かう道、それをWeb 2.0のような切り口で語るのではなく、オープンソースまたはオープンソースアーキテクチャーといった切り口で考えると、オープンソースの輝ける未来は地方自治体がスクリプト言語を担ぐことです、と言いたいですよ。
この記事を見るかぎりでは島根県とかRubyとかは一言も出てこないから、 むしろPHPやPythonを念頭に置いていて、方向性が重なったということなんだろうなあ。
まあ、第三者が独立に同じことを思いつくのは 良いアイディアである証拠である...といいなあ。
先週も行った宍道森林公園へ。 この公園では毎年4月29日には「森の誕生日」というイベントが行われており、 妻がそこで開かれるフリーマーケットに参加したい、ということから。
まあ、規模は小さいが、フリーマーケットは開催されるのが日曜日が多く なかなか参加できないので、けっこう貴重な機会であった。 まあ、あまり洗練されていないせいか値付けが微妙であったり、 極端な値下げが行われたりしているのもご愛敬。
息子は木切れでストラップを作ったり、竹で笛を作ったりする活動で ご満悦であった。そういえば、息子にはナイフで鉛筆を削ることなんか 教えてないなあ。私が小学生のときには「肥後の守」をもらって (必要以上に)鉛筆削っていたような気がする。
しかし、フリーマーケットで子犬をもらってくるとは予想外であった。 この犬については後でひと悶着あるのだが...(後で書く)。
午後は原稿書き。急遽2時間になったスライドは 分量の感覚がつかめない。あんまりセミナー形式ではしゃべらないかならあ。 まあ、適当に質問を受ければいいか、なんて安易に考えている。 この根拠のない楽観主義でいつもハマっているような気がする。
るびまの「他言語探訪」、今回はIcon。 やっぱり変な言語だった。
子犬は夜泣き。どうももらわれてきた夜はそういうものらしい。 ただでさえ寝不足だが、6時前にはとうとう目がすっかりさめてしまって、 朝から世話させられることになる。
今日は司会の予定だったが、監督が「代わりにやります」とのこと。 申し訳ない。
ステークからの訪問者が二人も来ていた。豪華メンバーだ。
あとはずっと監督面接の秘書役。 なかなか充実した仕事ではある。 副監督よりも幹部書紀のほうが向いているんじゃないだろうかと思ったりもする。
少々遅くなって帰ると、子犬はだいぶ騒いでいたらしい。 すっかり疲れた様子。
子供たちは犬を散歩に連れていっていた。
夜は昨日から作っておいたカレー。 妻は「料理の手間も減らすと安息日って感じよね」と言っていた。 監督さんのうちではお母さんの安息のため日曜は子供たちが料理するらしい。 うちの子たちがそれができるようになる日が来るのか。
来るといいな。