トップ 最新 追記

日々の破片

Subscribe with livedoor Reader
著作一覧

2009-01-01

_ オペラを考える

オペラってイタリアが有名? と、理由はわからないが子供に訊かれた。

うーん、とちょっと考えてから、そうでもないんじゃないかなぁ。ドイツ(オーストリーを含む)だって、ベートーヴェンのフィデリオというよりもモーツァルトがばかすか書いているし、なんといってもワーグナーとダランベール(と言ってからちょっと怪しいことに気づく。荒地とか:追記:調べても誰のことだかわからないが、誰のことを考えたのかな?)もいるし。いっぽうのイタリアって、ロッシーニのチレンデッラじゃなくてサンドリヨンはフランス語だし、なんだっけな、とにかくシンデレラとかかささぎとか、確かモーツァルトとほぼ同時代人だから、同じころの発生なんじゃないかなぁ。と、考えると、ドイツとイタリアが双璧でほぼ同時期に発生したんじゃなかろうか。と答える。

が、少しして、カストラータとかを思い出して修正を入れる。

でも、待てよ。ペルゴレージとかオペラを書いているな。それに考えてみたらモーツァルトがドイツ人のドイツ人によりドイツ語のオペラを書いたのは魔笛のはずだから、フィガロとかはイタリア語っぽいな、ということはイタリアが本家なのかも、と言い直す。

というか、とさらに考察を続ける。オペラってのは、一生をかけるに値するものらしいから、本気でそれに取り組む人間がいなければならなくて、それがドイツならウェーバーとワグナーで、イタリアだとロッシーニ、ヴェルディ、プッチーニだ。フランスだとビゼーとかマスネーとか小物しかいないなぁ。魅力はあるけど。でも、それより前、クラシック前からあるのは間違いなさそうだ。ペルゴレージよりも前あたり。

どうも、オペラって名前から言ってもイタリアが発祥ぽいな。と、今、答えを変えた。

もし、それが正しければ、それはなぜだろうか? と続ける。

バッハは教会に雇われていて宗教音楽を作りまくる。モーツァルトは王侯貴族に雇われて夕飯用の音楽を作りまくる。魔笛は、劇場用だけど、これは最後だ。ということは、誰が金を払うかが問題みたいだ。

イタリアは当時、どういう時代だったのだろうか? まず、なんちゃら公爵みたいなのはいたかも知れないが、それ以上に、市民が金を握っていたということはないだろうか? ヴェネツィアとか想像するに。

とすれば、市民は、夕飯の音楽はいらないし、宗教の音楽もいらない。いるのは、劇場で楽しめる音楽だ。ということは、オペラだ。

かくして、市民文化が最初に生まれたのがイタリアだから、オペラはイタリアが発祥なのではなかろうか。

と、とりあえずの解を出してみた。

ところでどうして、そういう疑問が出たの? と訊くと、なんか答えてくれたが忘れた。

少なくとも、日本がオペラを輸入したのは明治になってからだ。すると、山の中で猟師が悪魔と取引してどうしたとか、日本の王子がエジプトあたりで大蛇に襲われたら鳥のかっこうした男が出てきてどうしたなんていうわけのわからない世界観の話よりも、近松門左衛門の話なんかと通じるところがある、評判の舞台女優と恋仲に落ちてどうしたみたいな話のほうが受け入れやすいのは当然だから、イタリアから持ってきたのが最初なんじゃないかなぁ。そのあたりも、イタリアが本場という感じを生んでいるのかも。ちなみに、ヴェルディは1900年に死んだと、ベルトリッチの映画で言っていたから、明治32年のことだ。

1900 [DVD] [Import]

と、別の仮説を立ててみる。

でもまあ、と、今になって書いてみながら考えるに、モンテベルディとか忘れてたな。思い出していたら、最初からイタリアが本場とすんなり出てきたのに。

それからしばらくして、小澤征爾が指揮したらしき賢い女狐がテレビでやっていたので(たまたまピーターラビットを見ようとしてつけたら、ちょっと早くて罠を狐たちが囲んでばかにしているところだった)眺めたり。カエルがリアルな着ぐるみというか、それ以上に狐がえらくセクシーな着ぐるみでちょっとどきどきしたりした。

_ オウムはなぜポリーでビスケットちょーだいなのか?

子供に訊かれて、多分ポリネシアから来たからじゃないか? と適当なことを言ってから調べたらPollyとPolynesiaでlの数が違う。ってことは、それは怪しすぎる。

そこで調べ始めたら、同じように疑問に感じている人々を見つける。

スティーブンスンの宝島説はもっともらしく思えたが(ビスケットについてはこれが正しそうに思える)、どうも15世紀の演劇にさかのぼるらしい(が、他にも蒸気船の事故とかいろいろな説がある)。

本日のツッコミ(全5件) [ツッコミを入れる]

Before...

_ arton [ああ、ちょっと待てよ。市民=近代ブルジョワジーを僕は指しているわけではないです。ローマ市民の市民の意味です。]

_ きむら(K) [あ、「市民」についてはそのどちらとも考えていませんでした。 #というか気にしていなかった? ちょうど今「海の都の物語..]

_ arton [おお、面白そうな本を読んでますね。]


2009-01-02

_ パッケージの公開

おお、なんとなくマジックコメントやデフォルト(外部)エンコーディングの話がruby-listにログされたので、得した気分。


2009-01-03

_ 正月3日め

忙中寒あり、という日。


2009-01-04

_ IRB

Ruby-1.9.1-RC1でIRBのプロンプトが表示されない件をためしていたら、input-method.rbの@stdoutの作成ミスみたいだった(確認したのでruby-devへ投げた)。

他のプラットフォームでもひっかかりそうに思うんだけど、これはMSWin32固有なのかな。

追記:OS Xでは問題ないってことは、ttyのIOって黙っていても読み書き両用なのかな。で、確かにBackspaceの動作は下の修正ではおかしかった。


2009-01-05

_ なっちゃったの歌

なっちゃった、なっちゃった、ついに5日になっちゃった。

あーああやんなっちゃった、あーあーあーおどろいた。

ウクレレ人生(牧伸二/保富康午/伊藤あきら/永井ひろし/下條ひでと/クロードダン/藤間哲郎/トニー大谷/関沢新一/三笑亭笑三/富永一朗)


2009-01-06

_ ウィニー・ザ・プー

訳しようがないらしくて石井桃子がすっとばしているところを子供が見つけた。

というか、冒頭なのだが、興味あるところだけ拾い読みしていたので、気づかなかった。

Winnie-the-Pooh (Pooh Original Edition)(A. A. Milne/Ernest H. Shepard)

たぶん、こんな感じ。というか、ウィニーって、ウィニーのイメージが強いから、まったく予想もしなかったが、女の子の名前なのだ。

(手元に本がないので、いい加減)

「この熊の名前は?」と、訊くとロビンは答えた。

「ウィニー・ザァ・プーだよ」

「あれ? この子は男の子じゃないの?」

「もちろん、男の子だよ」と、ロビンは、ばかじゃないのかとでも言うようにこちらの顔を見る。

「でも、ウィニーって……」

「ウィニー・ザァ・プーだよ。ザァっ(ther)てどういう意味だと思ってんの?」と、ロビンは勝ち誇って言い放った。

なんというか、翻訳するとこんな感じかな。相手は幼児だから。

「この熊の名前は?」と訊くと、太郎は答えた。

「山田花子くんだよ」(苦しいなぁ。theがつく女性がいても良いからこれはわかりやす過ぎか)

「山田の花子だよ」(物語の世界には、森の石松とか、八丁堀の甚五郎とか、暗闇の丑松とか、松の市とか野郎しか出てこないから、「の」は男につくと考えている)

みたいな感じか。

で、子供は、therという言葉に男の名前という意味があるのか、と考えてわけがわからなくなったのであった。おれは、theの幼児語だと思って、上のような解釈をしたのだが、実際のところ、therという言葉があったりして(いや、無いから、タイトルはtheになっているのだと思う)。


2009-01-07

_ VirtualBoxメモ

VirtualBoxに、Solarisを入れて試していたのだが、どうやってもネットワークにつながらない。調べると、つながらないのではなく、DNSが引けないのだということがわかった。IPアドレスを指定すると繋がるからだ。というか、hostやnslookupがエラーになるし。

しかし、ホストOS側は、別に問題なく動いている。

はて。

NATが悪いのかと思ったが、悪いとも思えない。

resolv.confには、10.0.2.3と、VirtualBoxが用意したNATサーバが正しく設定されているし。

で、結局、ホスト側(Windows Server 2008)に、ネームサーバを正副登録していたのだが、そのうち正のほうが死んでいるのが原因だった。

ホストは副のほうを使って動いているのだが、VirtualBoxのNAT接続では、正側のネームサーバにしか訊きに行かない(という動作)。

ホスト側の副を正に変えて、無事、動作。

_ もさもさ

kitajさんのところを読んでいたら、PILが聴きたくなった。

理由はわからない。

That What Is Not(Public Image Ltd.)

しかし、この末期のPILは、あまりおもしろくはない(おれが一番好きなのは、でも、Happy! だったりするのだが)。

Happy(Public Image Ltd)

(このあたりが、すでに廃盤になっていて、しかし、初期PILが現役だったりするところが、なんとなく嫌な感じ。そんなに昔は良かったのか?)

_ ブロックが無い静的言語

VBをいじっていたら、次のように書けることがわかって、ちょっと気持ちが悪い。
Sub x(arg)
    If arg = 0 Then
        Dim b As Integer
        b = 3
    Else
        arg += 1
    End If     ' 修正
    arg = b
End Sub
argに1を与えると、当然、Else節に制御が移る。たとえばRubyなら変数bは宣言されていないため、最後の文でエラーになる。(追記:嘘でした。ご教示感謝。)
あるいは、Javaなら、最後の文のbはスコープ外なのでコンパイルできない。
しかし、VBのスコープはグローバルと関数の2つしかないため、一見、If節の中で宣言しているようでも、x関数のローカル変数となり、問題なく動作する。この場合であれば、argには0が代入される。
本日のツッコミ(全6件) [ツッコミを入れる]

Before...

_ arton [なるほど。どうもありがとうございます。]

_ masa [EndはEnd Ifでは?]

_ arton [お、そうでした。どうもありがとうございます。]


2009-01-08

_ Libarchive

お、これは何気にすごいかも。

Libarchive


2009-01-09

_ JavaプログラマのためのRuby入門

近刊のお知らせです。

最後までなかなかバグが取れなくて編集の嘉平さんや川崎さんには、いろいろご迷惑をおかけしましたが、やっと入稿が終わりました(と書いてはみたものの、良くわからないや)。

JavaプログラマのためのRuby入門(arton/高井 直人)

高井さんとの共著で、JavaプログラマのためのRuby入門と銘打って、Rubyの文法を中心にJavaとの違いや、JRuby固有の書き方/使い方について手堅く説明した本です。

題名の通り、想定している読者は、現役のJavaプログラマで、かつ、ビジネスとしてRubyのプログラミングを始める方です。といっても、文法書などの面も大きいので、普通のRubyのプログラミングのお供にも役に立つと、書いた本人は思っています。というか、索引がどう出るかとかはあるけれど、自分のためにも役立つはず。

当然、Rubyの固いイディオムとか、世の中では大体こういう書き方している人が多いみたいだよという情報とか、おまけにコーディング規約関係のことも少しばかり入れています。

個人的には、Rubyのオブジェクトの特徴をどう生かすのが良いかについて書いた章が、相当、気に入っています。というか、書いた本人が書くことではないような気もするけど、読み返しておもしろいんだな、これが。

なお、JavaとRubyの2題噺といっても、まるごとのような方向(Javaならこう書く)ではありません。まじめに、Rubyの文法解説書を作ったつもりです。

Rubyプログラミングのお供に、ぜひお手元に一冊、どうぞ。

まるごと Ruby! Vol.1(るびきち/arton/大場 光一郎/高井 直人/後藤 謙太郎/新井 俊一/瀧内 元気/cuzic/倉貫 義人/大場 寧子/久保 優子/十河 学/舞波)


2009-01-10

_ 眠りの森の美女

東京バレエ団の公演を観に上野。

マラーホフの振り付けで、しかもカラボスをマラーホフが演じるというので、妙に楽しみなのは、思い起こせば、マラーホフがベルリンを率いてベジャールのリングをやったのがやたらと印象的で、おもしろく、不思議で、バレエの魅力を理解したような気になったからだ。

で、昨日と明日は、デジレ(かな、ディジエじゃサイボーズだし)王子をマラーホフなのだが、今日は、マラーホフはカラボスで、デジレ王子は後藤(この人、前にドンキホーテのバジルを観たな。なんとも明るい印象で、楽しい踊りを踊る人なので僕は好きだ)、オーロラ姫が代役ででてきた妙にかわいい感じの人。かわいいのだが、脚もきれいに伸びるのだが、どうにも非現実的な印象を受けて、あまり好みではなかった。多分、オーロラ姫の踊りって、拷問のような片足立ちが多いので、観ていて痛々しい感じになるからかも。

マラーホフの振り付けって、おそらく手の動きに特徴があるように思える。手元にはルグリのDVDがあるが(ヌレエフ版)、それとの比較なので、実際にそうなのだろう。そのせいで、踊りに不思議な色彩感のようなものが表れるように感じる。プロローグの妖精の踊りのいくつかや、2幕の王子のところとか。2幕はヌレエフ版とまったく異なり、王子が一人でリラの精に導かれるままにオーロラ姫の幻を追っかける。で、カラボスとの戦いでは、もっぱらリラの精の後ろに隠れて逃げ回るという妙な演出。これは、妙だなぁ。本人が王子を踊ると、そこに何かのマジックが観られるのかも知れないので、次があるのなら、そちらも観てみたい。

で、カラボスが出てくるたびに、おもしろい。こういうのは不思議なもので、マラーホフが演じているから異様におもしろいのか、それとも異様におもしろいものを優れた演者がやっていてそれがマラーホフなのか、どちらが先に来るのだろうか(と、今読んでいるブランドとデザインの本のようなことを考える)。で、やはり手の動きが不思議だ。

白猫、クロネコの演出はおもしろい。ツンデレものかと思わせて、後半、オスネコがポコポコ頭を叩くように変わる。なんのことだろう?

青い鳥と、頭に鳥を乗せた王女は、良く飛んだと思う。

音楽では、シンデレラのパートがすごく印象的で(踊りも良かったし)、どこかで聴いたことがあるのだが思い出せない。思い出せないままに、今となってはどのような曲だったか忘れてしまった。でも聴けば思い出せる。

音楽といえば、序曲は楽しいし、1幕の最初の有名な曲はやはり名曲だし、リラの精のあたりではライトモティーフみたいな感じだったり、チャイコフスキーの才能はやはり特別だ。

赤頭巾は、入場と退場(あと1箇所だけ、真ん中あたり)だけで、単に、入場時の狼のストールを見せるためだけの存在だったのだろうか。

「眠れる森の美女」プロローグ付3幕 [DVD]

(もちろん悪くはまったくなく、むしろデュポンはうまいのだが、シンデレラのパートが無い)

あ、カラボスの雰囲気作りが何かで観たような、と思ったのは、ガルチさんか(多分、まったく関係なく、おれが勝手に連想しただけだろうけど)。

オズの魔法使い (字幕版) [DVD] FRT-067


2009-01-11

_ バイオP

結構、そこら中で、バイオPが欲しいとか、バイオPなら欲しいとか耳にするので、一体どんなマシンなのか興味を持って調べてみた。

バイオP

……

どこがアピールしてるんだろうか。画面がでかいところかなぁ。

_ この本がすごかった2008年(多少、タイトルを変えている)で出た本

ソニーヘイターな冗談はさておき、高橋さんが出版社の方とともに大いに語りまくる2008年のコンピュータ関連書籍トークに行ってきた。

しかし、取り上げる本の数(月あたり大体3冊+関連する本が5冊くらいが12ヵ月分)から言って、なかなか無理があり、もう少し粗くして冊数を減らすか、頻度を上げるしかないような気もしたけど、考えてみたら、本の表紙を使った高橋メソッドと考えれば、むしろゆっくりめのテンポだったと言えなくもない。

で、持っていなくて興味をひかれた本は以下のとおり。

jQueryで作る Ajaxアプリケーション(沖林 正紀)

でも、Railsはprototypeだよねぇとかmoroさんと話していたら、shachiさんからもこれは必携との強い言葉。jQueryもDHHほどじゃないけど作っている人の顔がわかりやすいところもあるし、買うことにしよう。

エージェントアプローチ人工知能 第2版(S.J.Russell/P.Norvig/古川康一)

10年ほど前の本の翻訳が今年でるということは、結局、日本はあっちより10年遅れという言葉も出てきたけれど、実際には2003年の第2版の翻訳なので5年遅れ(書いてから、10年遅れというのは聞き間違えかもという気がしてきた)。いずれにしても、これ1冊あればAIの5年前の現状はほぼすべてわかるはずという一生枯れない本の一種なのかも知れない。

何に興味を持ったかというと、その分厚さで、1000ページある。

ということで、それに比べれば

アルゴリズムデザイン(Jon Kleinberg/Eva Tardos/浅野孝夫/浅野泰仁/小野孝男/平田富夫)

こっちは相対的に分量も価格も大したこと無いので、勢いでやはり買うことにしようと決めた。

が、それはそれとして、始まる前の時間を人文書のあたりでうろうろしてたら、ニザンの書評集を再発見したのでつい購入してしまった。

新しい文化のために (叢書・ウニベルシタス)(ポール・ニザン/S.スレイマン/木内 孝)

それにしてもアマゾンで 1,168,658位 っていったいジュンク堂にはどれだけ本があるのだというか。

_ 立ち読みで済ませた一冊

済ませる気はなかったのだが、始まる前になんとなくキャッチーな題なので手に取ったら、17世紀ころには、潜水艦でヨーロッパの海岸にやってきて、白人を連れてアラブへ売り込む商売が成立していて(潜水艦は日本海との連想で多分、嘘)100万人近いヨーロッパ人が奴隷として労働していたというようなことが帯に書いてあって、へーそりゃ知らなんだと読み始めたら、波乱万丈、あまりにおもしろいもんでほぼ読んでしまった。

奴隷になったイギリス人の物語(ジャイルズ・ミルトン/仙名 紀)

世の中には、ときたま、すさまじく明晰でしかも記録的な脳みそを持った人が数奇な運命にまきこまれて、おかげでいろいろおもしろい歴史がわかることがあるが、これもまさにそのタイプの本だ。

ペロー君も、そういった奴隷のひとりで、モロッコあたりのサルタンのところで働かされることになる。

ある晩、見張りを門の内側(あたりまえだが)でしていたら、おいらはサルタン様だ、ここを開けろと声がする。

たしかにサルタンの声だけど、仕事は仕事。

この時間にサルタンが来るはずはない、すぐ立ち退くか、さもなきゃ持ってる槍でぐさりだぞ、と答える。

と、また、ばかものおれだ、開けなきゃ死刑だ、これは特例だ、とサルタンの声。

うーん、と考えるが、ここでこの角度で槍をくりだしたら、絶対に当たらないはずだと見当をつけて槍を門越しに繰り出す。

このばかめが、明日になったら覚えとけよ、とサルタンの声が遠くへ去りながら聞こえてくる。

ガクブルしながら次の朝。

サルタンは、門番全員を集めて、特例措置を講じた連中を皆殺しにしてから、ペロー君を褒め称えた。

まるで、韓非子のお話に出てくる名君か、さもなきゃ曹操が警視総監だったころのエピソードだ。

で、突然、嫁をやるとか言われる。最初は5人の黒人。ペロー君は人種差別主義者だから、同じ色じゃなきゃいやだ、と断る。ガクブルしていると、次に(忘れた)、最後に手以外を布で覆った娘が連れてこられる。手を取れとサルタンに言われて取ると黒い。

いやだね、と断ると、これでもかい、と覆った布が取られる。するとそこには(サルタンの混血政策の結実の)美しい白人っぽい娘がいるではないか。バッチグーですよ。と目の色が変わったのをにやにやしながら眺めてサルタン、おまえさんをからかおうと思って、手を黒く塗らせただけだよ。

というわけで、結婚すると、その娘の家がなかなかの有力者で、おかげでさらに待遇が良くなる。

そのいっぽうで、これでおれは永遠に英国には帰れないなぁと悲しくもなる。

という調子で、物語(ノンフィクションらしいが)は進む。

そのほか、赤ん坊が生まれたときの夫婦のやりとりとか、なるほどアラブは先進国だったのだな、とかいろいろおもしろおかしいが、その一方で、誰もやりたがらない土木作業を奴隷にやらせるという制度はどうなのよ、というところとか、いろいろトピックも豊富で、読んでいると発見はあるし、単純におもしろくもあり、歴史的には興味深かったり、いろいろだ。(フランス人奴隷やスペイン人奴隷がむちゃくちゃにひどい待遇なのに対して(特に、ドブさらいをさせられているフランス人奴隷のありさまとか無駄にいじめているだけなようで、奴隷には賃金を払う必要がないから労働コストを無視できるのかなぁとか考えてみたが、食わせたり服を与えたりするわけでどう考えてもコスト的に無駄に思うが、そういう問題ではないらしい、というかろくに食わせていないようなことが書いてあるが、奴隷は金を払って買うのだからやっぱり無駄なコストだよなぁ)、イギリス人奴隷がそれなりに優遇されているのが、カソリックと国教会の違いだったりとか)

最後は、モロッコとヨーロッパ間で奴隷開放の合意が取れるわけだが、えらくおもしろかった一冊。

本日のツッコミ(全7件) [ツッコミを入れる]

Before...

_ きむら(K) [イギリス人奴隷と〜の部分はレコンキスタの因縁かなあと思ったのですが、 それだとフランス人奴隷の説明がつかないですね。]

_ 高橋征義 [すみません! 10年かかったのはOOSCでした。あとジェネレーティブプログラミングも約10年(正確には8年)。 やっ..]

_ arton [あ、わざわざすみません。5年でも10年でも趣旨には影響しないと思うけど、本当にこの本だったかな? と貼り付ける時に自..]


2009-01-12

_ Ruby-1.9.1.msi再パッケージ

中村さんのパッチなどを当ててIRBのプロンプトやエコーバックを修正して、さらに1.9.0のリファレンスのchm(というか、1.9.1がリリースされたら1.9.1 リファレンスという名称に変わるのかな?)を最新にして再パッケージしました。ありがとうございます。

Rubyパッケージ置き場

ついさっき、1.8.7用のコードを書いていて、"string"[0].upcase、がエラーになるので不思議に思ったりするくらいに、1.9に親しむようになっていたり。

_ CD(物理的音楽媒体)を買うたった1つの理由

子供がカルメンが聴きたいとか言い出す。

マゼールが振ったLDがあるじゃんと言ったら、LDじゃ聴きたいときに聴けないじゃんと正論を吐く。正しい。DVDなら良かったのに。

今更銀盤なんか欲しくないからiTunesストアをあさっていたら、歌詞対訳はついているか? と訊かれた。うむ、そんなものはないよな。でも、言いたいことはわかる。というか、DVDもそういう意味じゃだめだな(字幕は意味は取れても歌詞はわからん。かといっていちいちスコアを買ってたらというか、スコアには逆に対訳がないか)。

しょうがないので、アマゾンを探す。しかし、アマゾン(というよりレコード会社)ってバカだな。そういった唯一のメリットがアマゾンのカタログには出てないじゃん。

かといって、これまでの経験から、レコード屋に行って現物を見ても必ずしも帯に書いているとは限らないことは知っている。

えいや、とあたりをつけて、というかカラヤンは嫌いだけど、好き嫌いとは関係なくすごい指揮者だということは知っているし、ウィーンの音は素晴らしいし(実際、聴いたら金管がきれいなこと、こういうのはどうにもしょうがないな)、少なくともフレーニの声は好きだし、廉価版になっているから、レオンタン・プライスがタイトルロールのダイジェストを買った。

ビゼー:歌劇「カルメン」(名場面集)(カラヤン(ヘルベルト・フォン)/ビゼー/フロシャウアー(ヘルムート)/ピッツ(ヴィルヘルム)/ウィーン・フィルハーモニー管弦楽団/プライス(レオンタイン)/コレルリ(フランコ)/メリル(ロバート)/ウィーン少年合唱団/ウィーン国立歌劇場合唱団)

やったね。ちゃんと昔ながらのクラシックで、歌詞対訳がついていた。

というか、コレルリってテノールは、とてもいい。フレーニは予想通りに(ミカエラの唄はおれには退屈なんで本来は好きじゃない)良かったし、管弦楽がとても良い。

で、oiはワだよとか、ウーはアクセンテギュが付くとこう発音するとかaiはエだけどトレマが付くとアイだよとか教えてやったり。

_ クラシックはまだインターネットに対応していないジャンルかも

クラシックを買う層ってのは、基本的には(ってのはおれは外れるからだが)富裕層で、しかもわりと年齢も高いはずだ。

で、思うに、ネットワーク配信をうまく使うと、音楽を流すのと、たとえば門馬直美とか宇野こーほーのテキストを流すのと、歌詞対訳を流すのをうまくシンクロさせて、(そのあたりのテキストの付加価値で、あと考えてみたら、アーティストのスティールとかも良さそうだ)、セットアップがiTunesよりさらに簡単で人にやさしい仕組みを作って、呼び屋を巻き込んでチラシをコンサート会場で配ったり、ロビーでデモしたりすると、結構高く課金する仕組みを作れるんじゃないだろうか。コンテンツをどうするかだが、レコード会社はそれまでのテキストを保有しているだろうから、それをうまく使えば良い気がする。

あと、テキストといえば、老眼だから、1600×1280に対して、まるで800×600みたいに文字を出さなきゃだめだぜ。いや、本当。

(あと、ぶつとしてのネットワークアプライアンスがうまく当てはまる市場ではなかろうか)

まず、iTunesは(と書いていたがiTSの話だった。でも同じだけどな。作曲者の扱い)、ことクラシックに関してはクソだから、敵にはならない。

ちょっとやってみればわかるが、「カルメン」で検索すると、他のジャンルのほうが売れているからバカみたいに意味のないコンテンツが出てくる。

クラシックから見ていくと、ジャンルが腐っている。

オペラで見ていくとアルファベット順にしか出てこない。

レコード屋と同じで、「作曲者順」にすりゃいいだけなのに、アーティスト順に並べようとしてるわけだな。

で、アーティスト情報ってクラシックの場合には、ほとんど役に立たない。

おれが聴きたいのは、たとえば、ブーレーズじゃなくてもいいけど、現代音楽に造詣の深い指揮者が、オーケストラはどこでもよいが、ボストンとかパリ管あたりならベターで、できればフランス人の歌手が唄ったペレアスとメリザンドだ、というような場合に、アーティスト順に出てきても何の意味があるのか? 何もない。で、アルバム順に並べても情報が中途半端でほとんど役に立たない。で、ペレアスでひくと、「ペレアスとメリザンド交響曲」という妙なタイトルが出てきて、しかし振っているのがボドーで(表記はボド)、これは誰が作曲したのか? と思うとわからない。すげぇ興味をひかれても、これでは1200円を払う気にはなれないね。

作曲家だろ、まずは。それに、たとえばドビュッシーで検索すると前奏曲の24曲がばらばらに出てきて、やたらと行数だけ取られて、これでは買う気にはならない。もっとも、亜麻色の髪の乙女だけを買いたければ便利ではあろうけど(つまり、両方があればいいわけだ)。

あと、クラシックは表記のぶれが激しいので、それを全部拾わなきゃだめじゃん。ベートーベン、ベートーヴェン、ドビュッシー、ドビュシ、ドゥビュッシー、ドゥビュシ、ゲーテ、ギョエテ、シェーンベルク、シェンベルク、シェーンベルヒ、シェーンベルッヒ、ションバーグ、シェーンベルグ、シェンベルグ、シェンベルヒ、いろいろだ。

本日のツッコミ(全4件) [ツッコミを入れる]

Before...

_ arton [お、pdfのブックレット添付ってのはいいですね。それが標準的になってしかも検索がしやすくなると、結局iTunesが勝..]

_ ishisaka [http://www.berliner-philharmoniker.de/en/ こんなのもそれなりに売れているよ..]

_ arton [デジタルコンサートホールってやつですね? サイモンラトルの顔が見えたのでちょっと興味を失ったけど(というほど知らない..]


2009-01-13

_ 正直親父の息子

セーガン博士がいる。

人はなぜエセ科学に騙されるのか〈上〉 (新潮文庫)(カール セーガン/Carl Sagan/青木 薫)

宇宙が、ほかのなによりも想像力を刺激し、謎と神秘に満ち溢れた世界だと人々に語り続けた男だ。想像力というのは科学的真理の探究にあるという逆説的命題をきちんと語った数少ない人間でもある。

そして、今日、あまりにogijunが手放しで絶賛するので、つい買っちまった本の著者がこの系列に加わった。

アップルを創った怪物―もうひとりの創業者、ウォズニアック自伝(スティーブ・ウォズニアック/井口 耕二)

彼らの共通点ってなんだろうか? それは父親の存在の確かさってやつだ。なんかしら、父親から学んだことが生きている。そのため、父親の思い出について語ると長い。

セーガン博士は、確か記憶によれば、仕立て屋の息子として生まれたのだが、ちょっと両親からみると変わっているところがあったようだ。

いずれにしろ、上掲書に書かれたエピソード(うろ覚えだが)で、ある日子供のセーガンは、数をずっと数えるとどこまで到達できるのだろうかと考えたか、あるいは5000だか50000だかまで数えると、本当に、そこに数が埋まっているのだろうかと疑問に思ったかして、数を一心不乱に数え始める。それに仕事から帰ってきた父親がつきあう。母親が風呂へ入れと言い出したため、数を数えるのをやめなきゃならなくなる。子供のセーガンは悲しくなってしまう。せっかくの努力が台無しだ。「いや、おれが代わりに数えてやるよ」で、父親は風呂の中で洗ったり何やら忙しい(日本の風呂とは違うから、頭を洗ったり体を洗ったり忙しいわけだろう)セーガンに聞こえるように続きを数えてくれて、ついに5000まで到達して無事、風呂から帰還した息子に引き継いだ(あとは忘れた)。

ウォズの本を読み始めると、いきなり父親についての要領を得ない思い出話から始まる。上のセーガン博士のエピソードのように妙な印象を受ける話は特に出てこない。しかし、読むと、ああ、この父親は息子に良い影響を与えたのだな、と感じることはできる。

世の中には、親がいてさえ子は育つとか放言してふらふらしている無頼もいるし、そういう気持ちもわからなくもないが、結構な違いだ。

堕落論 (新潮文庫)(坂口 安吾)

_ 映像はやはり重要らしい

食わず嫌いせずに観れば良かったと思った時は、後でアーカイブでもいいから自分で観てから考えりゃいいので諦めるとして、soutaroさんが書いている視聴記がやたらと説得力がある。

で、思い出したこともあって、映像はあったほうがいいに決まっていた。たまたまそうでもない音楽が頭にあって、おかしな方向に向いてたみたいだ。

_ なんで映像があったほうが良いのか

それは、一度でもバレエ音楽をCDで聴けばわかる。


2009-01-14

_ アップルアップル

おととい、ジャスコに行って、電器売り場をながめていたわけだ。

で、iPodの新しいの欲しいなぁとか見ていて。

今持っている2代目シャッフルのオレンジもいいけど、ひさびさに(最初に買ったのは15G iPodだったわけで)全音楽が入るのがいいなぁと、

Apple iPod nano 16GB パープル

これかなとか。

でも、値段が互角なのか。じゃ、こっちもいいなとか。

Apple iPod classic 120GB シルバー

でも、あの気持ち悪いピンクや青とかも捨てがたい(もちろん、一番気持ち悪い紫最高)とか。

特にあの黄緑の気持ち悪さったらないね。欲しい。

Apple iPod nano 16GB グリーン

で、iPod mini(だっけな)で、この気持ち悪い色がiPodだと刷り込まれたおれは、気持ち悪いのに欲しいなぁとか思いながら見ていて、そして裏へ回ったらソニーが置いてあるのがPOPでわかって、そこで、ソニーならまともな色のを売ってるよな、と思いながら見たら、違った。

SONY ウォークマン Eシリーズ 2GB オーシャンブルー&フォレストグリーン NW-E025F LG

もっと気持ち悪かった。

そして、ソニーは嫌いだったのだが、嫌いというのは、それを認めているからこその感情であって、今では単に無視すれば良いだけのものになり下がったのだな、と思った。なんで、iPodみたいなメタリックで気持ち悪い腰が落ち着かない色にするんだ? つまり、「iPodみたい」な色の製品を作っている会社という眼鏡がかかったということだ。

というところで、通勤時間に読んでいた『アップルはいかにして顧客の心をつかんだか』をちょうど今日(というか昨日)読了した。

嘉平さんにもらったんだけどね。

企業戦略としてのデザイン アップルはいかにして顧客の心をつかんだか(Robert Brunner/Stewart Emery/Russ Hall/長尾 高弘)

トラウトの本とかがそうだけど、おれは、マーケティングの本は割と好きだ。現実にマーケティングカンパニーは存在し、それが成果をあげていたりするのだから、無視するわけにはいかないし、おれにはさっぱり理解できない理由で人が大枚払うのは不思議だからその理由を知りたいというのがあるからだ。なんでソニーの製品を買うやつがいるんだ? (AIBOは買ったけどな)とかだ。

しかし、それがデザインであれば、おれも理由はわかる。

この本の提言はひとつ。

CEOは企業の方針をデザインスクールを卒業した人間に委ねよ。

例)アップル、サムスン、BMW

さらに、エクスペリエンスのサプライチェーンを作れ

良いデザイン→所有欲の満足→(ここでトラブルが起きる)→デザインによって導かれる企業精神によるサービス→さらなる満足

そりゃ、トラブルは起きる(起きなければそれはさらにOK)。そこで、アップルショップのジーニャス(の例は出てこないが、おれは行ったから言いたいことはわかる)に文句をたれる。待ち時間にもそれほど退屈しないし、並行に並ばされて横入りおばさんとかねえさんとか出てこないし、まあフレンドリーではあるし、店はクールだ。

逆の例が具体名でがんがん出てくる。

たとえば、レクサスとかいう名前の自動車販売会社らしきもの。

あなたが認定証付きの環境保護論者で、エコの流れに乗ってハイブリッド車を買うことにしたとする。(略)この車は、技術的には夢の車のように見える。だから、最初はいい買い物をしたという感じがする。しかし納車されてからすぐに(略)このように車のユーザー・インターフェイスのエクスペリエンスは最低で、燃費も宣伝より悪いので、機械工学的にはすばらしく、加速も目が覚めるほどだが、(略)この車の満足度は低くなってしまった。(略)ここでエクスペリエンスはただ悪いだけでなく、醜悪なものに変わる。(略)あなたはレクサスの自動車を二度と買わないと誓うだろう。(略)自動車株式会社は、もうマイナスの形でしかあなたの関心を引かない。

このように、すばらしく醜悪なエクスペリエンスを提供して、死んでも買わないと誓わされる例がたくさん(つまり、おれにとってのソニーだ。最初に買ったウォークマンのエクスペリエンスが負のサプライチェーンを作ってくれたということだな)。

もちろん、逆もある。サムスンだ。

おれは、不思議だったのだよ。三星電機だよな。いつの間にか、サムスンはブランドになっていたってことにだ。でも、それはこの本に書いてある。デザイン主導企業に本気で変身したからだ。

別の例。ポラロイド。エクスペリエンスは撮った写真がその場で見られて(相手にあげられて)ちょーうれしー。でも、この本の執筆時点では、本来、そのエクスペリエンスを維持するのに必要なシフト、つまりデジタル化をしなかったツケについて書かれていて、そしてこないだ、ポラロイドは消えていった。

というように、エクスペリエンスからデザイン、デザインからエクスペリエンスについて、やまほど事例を挙げて、最初に書いたメッセージ、つまりデザインスクール出身のデザイナーの地位の向上を訴える。敵は、Excel脳のMBA達だ。コストと物のサプライチェーンの管理、それじゃだめだね。Excelで求められるものはライバルも実行できる。つまりラットレースになるだけだ。デルの現状を見てみろよ。実際、今じゃマイケルは反省してデザイン路線へシフトチェンジしてるんだぜ。書いた人はデザイナー(元アップルの工業デザイン担当取締役。もちろん今はデルも顧客だ)、裏打ちはアップル、BMW、サムスンその他のデザインカンパニー、反例としてデルのような高度な生産管理企業や、サポート部門に対するリストラをしたためエクスペリエンスの質低下を招いた、したがって顧客離れを起こし、株価が低迷したスターバックス、ホームデポ(CEOを挿げ替えて立ち直りつつある)などなどということだ。

繰り返しは多く、エクスペリエンスのサプライチェーンは呪文のように3ページおきに繰り返される。

しかし、おもしろい。具体的で、エクスペリエンスがあるからだ。

なぜ、アップルが成功しているのか、あの気持ちが悪いiPodの色でOKなのか、なぜ人はBMWに金を払ってしまうのか(おれは、ホンダが好きだけどな)、iPhone(この本には書いていないが、iTouchでエクスペリエンスのテストをしたわけだな、とつくづく気づく)とか、そういったマーケティングマジックに見えることについての、デザイン側からの手前みそなしかし多分に正しい点がありそうな視点で書かれた、おもしろい本だった。

ところで、だれか、同じ方法論を使って、提言

・CEOは企業の方針をプログラマーに委ねよ。

でビジネス書を書いてくれないかな?

ほかの成功要因はいっさい無視したほうが、ターゲットを絞れてビジネス書としてはむしろ良いわけだから。


2009-01-15

_ うぱっ

ウーパールーパー

ツボカビ病というおそろしい病気がはやっているので、こののんきな顔(でも見ていると凶暴な感じもするのだが、おそらく目が悪い=動きだけで判断だからかも)の生き物もそうは長くないのかも。

それは悲しい。

メキシコ火喰龍(見てみる)

(縦横間違えたうえ、編集方法がわからないので首を曲げて見てください)

冬休み限定で家に遊びに来たのだが(というか、なぜまだ家にいるのか不思議ではある)、人間の目にはむやみとかわいい生き物だ。

なんか浮いているなぁと思うと、ゆっくり手足をばたばたして、突然、止まる。そのままのポーズで数分間とかじっとしている(ちょうど、だるまさんが転んだやっていて、変な動きで止められた状態みたいだ)。で、気づくと沈んで立った状態になっていたり。わけわかんねぇ。浮くも沈むも自由自在なようだが、浮き袋の調整ってわけじゃないよな? そうなのかな。

で、手足が短い。赤ん坊がおつむてんてんしたくても手が届かないのに似ている。で、すぐ突っ張らせて、ひとかきしかけて、またそのまま止まってしまったり。

小さくて黒い目にまっすぐであいまいな口。河童のお化け(でもくちばしではないよ)のような(オオサンショウウオから河童が生まれたのかね?)。

これで肉食なのだ。

なお、こんなものを食べる。

B000V2FB10


2009-01-16

_ 怪物君は王子だぞ

ウォズの自伝(ただし聞き書き)を電車の中で読み続けていて、なんともいたたまれない気持になってくるのは、おれだけだろうか?

アップルを創った怪物―もうひとりの創業者、ウォズニアック自伝(スティーブ・ウォズニアック/井口 耕二)

表紙じゃにこにこしているが、なんというか、この本は違うな。ビジネス書(ダイヤモンド社)のコンテキストじゃないというのは確かだ。でも、アマゾンでは売れているようだから、おれの読み方が違うだけなのかも知れない。

僕は毎日、長い時間歩いて高校に通学していたんだけど、その時間を考えることに使うようになった。(略)ずーっと歩きながら考え、僕は論理のほうが大事だという結論に達した。

とか、いやそれよりも小学校6年のときとか。

そんなこと、僕にはとてもできない。

明らかな知性と、自分と世界との距離に対する戸惑いや疑問というのが、おれにはどうも、以前読んだこの本と重なるのだ。

ぼくには数字が風景に見える(D. タメット/古屋 美登里)

数字ではなく、ORとANDとNOTだという違いはあるが。


2009-01-17

_ JavaScriptでMap

えらく遅いWebアプリケーションがあり、遅いのはRDBとのインターフェイスが重いのだろうと思っていた。

仕事で、それのUIをちょっと変えた場合の紙芝居を作ることになり、ライブ状態でソースを取り出して元ネタ作って、それを組み合わせて、結構JavaScript使っているなぁと思いながら、面倒なので静的HTMLにせずにそのままJavaScript使うようにして作り終えて動かしてびっくり。

遅い。そのページのレンダリングに数秒かかる。紙芝居なのに。

なんでこんなに遅いんだろうと、しょうがないのでまじめにソースを読んで、とりあえずループの中で文字列を結合しまくっているのを見つける。

for (i = 0; i < x.length; i++) {
    str = str + x[i];
}
もしかしたら、こいつを配列にしたらどうか? と
for (i = 0; i < x.length; i++) {
    a.puth(x[i]);
}
...
a.join('');
にしたら、気持ち速くなったようだが、決定打ではない。

で、ふと気づくと、new Map()というのがやたらとある。はて? JavaScriptにMapなんて無いはずだが。

で、その実態が、Scripting.Dictionaryで、それをActiveXObject.newしているのに気づく。どう見積もってもこれを4桁個は生成している。

良く見ると単なるペアが多数あることに気づいて、それは単なるObjectに毛をはやしたやつに変えてみる。function Mapとなっていて生成処理がカプセル化されていたので、newするところを別のfunctionに変えてやれば良いので、遅くはあるが、元の設計そのものは悪くないな、と気づく。

数秒から一呼吸程度に速くなったので、効果があることがわかる。

残ったやつをどうするか、考える。Objectは連想配列なんだからそのまま使えば、ActieXObjectのCoCreateInstanceによるオーバーヘッドをゼロにできる。

しかし、keysに相当する処理を使いたいのだということがわかる。というか、そのためにVBArrayまで利用している(ToArrayの結果を取るためだ)。

キーだけ別途にObject内にArrayを用意しておけば良さそうだなと気づいた。が、ちょっと時間切れなので後でまたみることにする。


2009-01-18

_ 悲しいとき

MacBook Airでソフトウェアアップデートができなくなる。はじめてしばらく青い棒がうにょうにょしてそこからぴくりとも進まなくなる。VistaのExplorerの緑の棒より始末が悪い。

アクセス権の修復とかしてもだめで、これを機会に再インストールするかと考える(以前のを引き継いだのでHDの中にはPowerPCバイナリーとかもいっぱい入っている)。

そこで、なんとなくWindowsマシンをリモートCDにしてインストールを始める。で、Airが再起動して(2時間くらいかかったような)、そこでいきなりWindows上のAppleのソフトウェアがクラッシュしたとき……

再実行してもだめみたいだな。


2009-01-19

_ SWin

SWinをRuby-1.9.1-RC1で動かそうとしていろいろやっていたが、すぐさまSEGVする。で、パッチを作ったりしたのだが、良く良く雪見酒さんの日記を読んだら、7月の時点でわかっていた問題だったようだ。

dlの方法は、次々defineしていくという方法でびっくりするような、あともう少しでCで書くDSLという雰囲気。

で、別の方法について考えてみると、これの応用かなぁとか。つまり、引数としてではなく、自動変数に設定した値を引数として与えるという方法。

#include 
int x(int r, int p, int q, int a, int b, int c, int d)
{
    printf("%d, %d, %d, %d\n", a, b, c, d);
    return 0;
}
int main(int argc, char* argv[])
{
    int i;
    int a[] = { 0, 1, 2, 3, 4 };
    int (*fnc)(int[]);
    fnc = (int (*)(int[]))x;
    fnc(a);
    for (i = 0; i < sizeof(a)/sizeof(a[0]); i++)
    {
        a[i] += 10;
    }
    fnc(a);
    return 0;
}
実行すると
c:\test\farproc>acall
0, 1, 2, 3
10, 11, 12, 13

一回スタック調整用の関数を呼び出し、そこでスタックから戻りアドレスを取り出して、次に引数に与えた本来呼び出すべき関数のアドレスを取り出して、そこへ戻りアドレスを設定して、本来呼び出すべき関数のアドレスへジャンプとか。

試してみる。

#include 
#include 
int __stdcall y(int a, int b, int c, int d)
{
    printf("%d, %d, %d, %d\n", a, b, c, d);
    fflush(stdout);
    return 0;
}
__declspec(naked) int x(void* v)
{
    _asm {
        pop ebx // return
        pop eax // fn*
        push ebx
        jmp eax
    }
}
int ccaller(void* fnc, int cnt, void* args)
{
    void* p = _alloca(cnt * sizeof(int));
    memcpy(p, args, sizeof(int) * cnt);
    return x(fnc);
}
int main(int argc, char* argv[])
{
    int i;
    int a[] = { 0, 1, 2, 3, 4, 5 };
    ccaller(y, 4, a);
    for (i = 0; i < sizeof(a)/sizeof(a[0]); i++)
    {
        a[i] += 10;
    }
    ccaller(y, 4, a);
    return 0;
}

さて、うまく動いているようだが。

c:\test>cl bcall.c
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for 80x86
Copyright (C) Microsoft Corp 1984-1998. All rights reserved.
 
bcall.c
Microsoft (R) Incremental Linker Version 6.00.8447
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.
 
/out:bcall.exe
bcall.obj
 
c:\test>bcall
0, 1, 2, 3
10, 11, 12, 13

問題は__declspec(naked)でフレームを作らないようにしているわけだが、他の処理系で使えるのかなぁ。逆に作らせるようにして、espで調整するというのもありだろうが、最適化フラグいじったとたんになくなったりするかも知れないのが問題。


2009-01-20

_ ジュンク堂トークセッションのお知らせ

来る2月5日に、池袋ジュンク堂で『Javaの掟?Rubyの掟 〜寝ても起きてもプログラミング〜』というタイトルでトークセッションを行います。以下抜粋と情報。

arton?宇野るいも著『プログラミング学習シリーズRuby①?②』(翔泳社)

arton?高井直人著『JavaプログラマのためのRuby入門』(アスキー?メディアワークス』

刊行記念トークセッション

『Javaの掟?Rubyの掟 〜寝ても起きてもプログラミング〜』

arton(著者)×宇野るいも(著者)×高井直人(著者)×高橋征義(日本Rubyの会会長)

■2009年2月5日(木)19時〜

……

■入場料 1000円(ドリンク付)

■会場 ジュンク堂書店池袋本店 4階カフェにて

■定員 40名(お電話又はご来店にてお申し込み先着順)  

■受付 お電話又はご来店(1Fサービスカウンター)にて先着順に受付。

※トークは特には整理券、ご予約のお控え等をお渡ししておりません。

※ご予約をキャンセルされる場合、ご連絡をお願いいたします。

お問い合わせ 池袋本店 TEL03-5956-6111

(その頃、大阪では別のトークセッションが進行しているわけだったりしますが、池袋ではもう少しどろくさい感じでしょう。そういえば、まずいコーヒーを色とか濁りとかから「泥水」ということがあるけど、そんな感じなのかも)

セッションのタイトルは、このあたりから来ていたりします。

コーディングの掟(最強作法) 現場でよく見る不可解なJavaコードを一掃せよ! (開発の現場セレクション)(arton/宇野 るいも)

おかげさまで、「このコンピュータ書がすごい!2009年版紹介書籍リスト」にも顔をのぞかせていたりします。ありがとうございます。

が、あんまり良いことでもないわけで、たとえば外科医が「手術の掟——患者の腹はこうさばけ——」なんていう本を書いたら(題はふざけていても、内容はまともな手術のベストプラクティスですよ)それが医者の間で受け入れられてしまう(ジョーク本としてならともかく)というのは、患者にとっては悪夢ですね。

というわけで、プログラミング入門執筆の機会をいただけたので、次のように考えた(以降、常体で書く)。

まず、おれは現場育ちの技術者であって、系統立ってコンピュータサイエンスを学んできたわけではない。そのおれが書くのだから、それは走れる高速道路だ。(ただし、おれは専門の学問というのは本来の意味での高速道路だと考えているので、それを否定したいわけではない。たぶん、より帰納的であろうということのようだ、と自己分析してみる。)

ターゲットとして考えたのは、小学、中学、高校くらいの自分と、会社入って教育を受けていたころの自分あたりだ。それほど考え込まずに手を動かせること、ただしより深く追求するなり調べるなり考えたりしたければ、そのための検索のキーワードとなる用語についてはきちんと与えること。

あと、さすがにこれはわかっていなければ、話にならないだろうといった教養に類すること(の一部で例を示しやすいもの)、考えの導き方のヒント、そういったことを、テーマを絞ってプログラムとコードの説明と地で説明する。

したがって、1巻は、ハードウェアの最低限の説明から入り、プログラムの仕組みについて説明してから、変数、式、演算、逐次実行、分岐、関数をやる。手続きは、誰でも理解できることは歴史が証明している。

そこまでできれば、抽象化への道筋はできたことになる。

2巻は、ライブラリとは何かと、機能を調べるということから始める。抽象化として、データとデータの表現について、符号化のさわり、有限状態機械(ネットワークプログラマとしてのおれにとって、一番書きやすい抽象化の例)、そしてアルゴリズムと時間計算量まで、駆け足で終わらせる。応用するための基盤を提供する。その基盤のほうが、対症療法な掟より良いはずだ。

というプログラミング入門書にしよう。

というのを宇野るいもさんと一緒に作った。

Ruby 1 はじめてのプログラミング (CD-ROM付) (プログラミング学習シリーズ)(arton/宇野 るいも)

Ruby 2 さまざまなデータとアルゴリズム (CD-ROM付) (プログラミング学習シリーズ)(arton/宇野 るいも)

(題がトークセッションの説明文の中の題と微妙に違うけど、書籍の題のほうが正しく内容を反映している)

で、なぜかそれと時期をずらしているはずなのに、同時期発売になってしまったJavaからRubyへの虹の架け橋、天橋立がある。

JavaプログラマのためのRuby入門(arton/高井 直人)

これは、また全然違う本で、すでにJavaでプログラムを書ける人に、Rubyをはどういうプログラミング言語で、どういう特徴があり、どう書くか。書き方はやまほどあり、%記法なんていうのもあり、ミキシンでダックタイピングでオープンクラスで、さてどうオブジェクトインタラクションを構成するのが良いのだろうか、ということをJavaでお仕事なプログラマでもあるおれが、JRubyエバンジェリストの高井さんと一緒に書いた。

というわけで、合わせて3冊を3人、さらに高橋さんという強力無比な進行役を得て、ライブします(と、敬体に戻る)。

ぜひとも、2月5日は池袋ジュンク堂においでください。

本日のツッコミ(全8件) [ツッコミを入れる]

Before...

_ arton [や、それは、嬉しい。お待ちしてます!]

_ shachi [では、おいらも行こうw]

_ arton [ぜひ!]


2009-01-21

_ ウォズの本

やっとApple IIができた。無茶苦茶おもしろいじゃないか。

それにしても、ジョークダイアルって、りかちゃん電話とかGIジョー電話みたいなやつなんだろうけど、今思えば不思議なシステムだな。


2009-01-22

_ 復刊ドットコム

以前、佐野美津男のぴかぴかのぎろちょんの復刊リクエストをしたからか、ちょこちょこ復刊のお知らせが来る。

で、ちょっとみてみたり(なんとなく興味を惹かれたからだけど)。

量子の道草―方程式のある風景(保江 邦夫)

復刊したので新品2520円。

いっぽう、

量子の道草―方程式のある風景(保江 邦夫)

中古で10500円、コレクター商品としてはなんと31500円。

こういうので、下のほうを購入してしまうというのも情報格差ということになるのかなぁ。

というか、復刊リクエストになったということは、買えるときに買っておくべき本ということなのか。


2009-01-23

_ ハードウェアゴルファー

ウォズの本でおもしろいのは、とにかく部品数を減らすことが楽しくてしょうがないらしいことだ。

シュガートのFDDをハックして2週間でアップルIIとインターフェイスできるようにするところ。

まずドライブ自体とそのコントローラーボードをチェックし、どのように動作するものなのかを理解した。

マニュアルを読んだ。そして回路図を検討し、(略)そして、22個ほどあったチップのうち、20個ほどは不要だと判断した。

まったくわからないが、そんなことあるんだろうか? (別のチップに置き換えるとかかなぁ)

DRAMのリフレッシュのところもえらくおもしろい。

テレビを上から下へと、1ラインずつスキャンしていく。アメリカのテレビの場合、ライン1本をスキャンするのに、だいたい65マイクロ秒の時間がかかる(略)このうち、40マイクロ秒くらいは見えるんだけど、残りの25マイクロ秒くらいは見えないことがわかった。

この25マイクロ秒の間、いわゆるリフレッシュ時間といわれる部分に、僕はDRAMのアドレス、16ヶ所を挿入してみた(略)

なんと、選択用チップ2個か、もうあと1〜2個論理チップがあれば、必要なことがすべて実現可能だった。

つまり、マイクロプロセッサーから何サイクルかをくすね、それでDRAMのリフレッシュをすることに成功したわけだ。

で、

シンプルな設計とは、単にチップ数が少ないだけでなく、接続箇所も少ないということなんだ。こうして僕の目標は、少ないチップで設計することから、なるべくボードを小さくすること、ボードの面積を小さくすることに変わった。

この、回路の何かを別のことに使うというのは、大学生の頃のエピソードにもある。

部品の入力に信号を送ると、出力と呼ばれることろから何か結果となる信号が出てくるものだ。でも、チップの内部構造まで熟知していた僕は、入力からも弱い信号が出ていることを知っていた。そこで、ダイヤル信号生成回路の反対側で、この信号をトランジスタアンプに入れ、チップをオンにする電源として供給したんだ。どうだい、驚くだろう? (少なくともエンジニアならわかってくれるはず)。

驚くだろ? と書かれても困ってしまわなくもないが(本人なのか、聞き書きした人が付け加えたのかわからないが、誰も驚かないということがわかっているっぽい()内の但し書きが、うーん、この本全体を支配する微妙な陰翳でもある)、わかった。

あと、ところどころ、細部について異常に明晰に記憶しているところが気に入った。

アップルを創った怪物―もうひとりの創業者、ウォズニアック自伝(スティーブ・ウォズニアック/井口 耕二)

これは本当におもしろい本だ。この人がどう考えたかが明らかにされているからだ。あと、やはり、とんでもなく訓練を積んでいるところとか。コンピュータは手に入らない時代に、DECのミニコンの資料を読んで自分で紙に設計しまくるところとか。そうやって、回路を見直して部品数を減らす方法を考えたようだな。


2009-01-24

_ ポインターとスタック

なんとなく思ったのだが、ポインターっていうのはURLで、スタックっていうのはDOMのインスタンスなんじゃないかなぁ。

ポインターの使い方を知らなければマッシュアップみたいなこた発想しなさそうだし、DOMをいじれなければ元の枠組みを操作したりドメインというスコープを正しく扱ったりできない、って感じ。

マシンアーキテクチャを知らなければ正しい作法もわからないっていうのは、つまりRESTのことだし。

つまり、パラなんとかのシフトとか。

このへんの基礎ができていないと200で404を代替するってことみたいなSEGVを起こしたりとかさ。


2009-01-25

_ Ruby-1.9.1-RC2 install package

各位に感謝します。

Ruby Packages

今回、swin/vrubyのCVS最新+おれパッチを同梱してあります。あの手のライブラリだと1.9対応はどう見積もっても簡単ではないけれど、ほとんど動く(Cygwinだとそのまま動くのだと思う)状態まで進めていたにゃすさんと雪見酒さんに感謝します。

_ 洋書の価格差

カワイに行って、楽譜を眺めていたら、クルミ割り人形のスコアが目について眺めていたら、子供が欲しがる。おれも欲しい。

でも値段をみたら7000円を超えている。さすがに、ちょっと買えねえよとその場は終わったが、ふとアマゾンで検索してみたら、まあ買えない値段ではない。

Tchaikovsky: The Nutcracker: Complete Ballet In Full Score(Peter Ilyitch Tchaikovsky)

(粉雪のシーンが表紙というのは胡桃割り人形としてはいかがなものかわ)

楽譜屋だと35ドルが7000円超えで、アマゾンだと3000円弱だが、在庫がいつはけるかわからない楽譜屋さんは辛いなぁと思いながら、結局アマゾンで買ってしまった。

_ 眠れる森の美女のシンデレラはドロッセルマイヤーと踊る

さて、マラーホフ版の眠りの森の美女で、どうにも印象的な音楽なのに、ルグリのやつ(ヌレエフ版)では削除されていたシンデレラだが、あいかわらず思い出せず、子供と不思議がる。

確かにどこかで聴いたのだが、しかも印象的なのだが、しかしメロディーもどこで観たのかも思い出せない。

で、調べるためにカワイに行ったのだが、無いんだなこれが。組曲版(66a)には青い鳥以外は存在しないし。いかに、眠れる森の美女がマイナーか、というよりも長すぎるのが問題なのかも。

で、ついに、思い切ってiTunes Storeで全曲盤を買ってしまう。で、聴いた瞬間に子供が思い出した。

熊川哲也 くるみ割り人形 [DVD](熊川哲也)

熊川版のクルミ割り人形で、ドロッセルマイヤーとクララの踊りに利用しているという。

言われてみれば、確かにそうかも。

で、あらためて観ると確かにその通り。曲が印象的なのに覚えられなかった理由もわかった。極度に早いパッセージのかけあいなのでメロディーとして記憶できないからだ(さすがにもう覚えたが)。

というか、バレエというのは不思議な音楽だ。

たとえば、交響曲が長すぎるからといって第2楽章の中間部を間引くとかできるか? やったら何を言われることやら。ハースに対するノヴァークとか。あるいはオペラでレシタティーボをすっとばすとか。

でも、バレエじゃ平気でちょんぎる、変える、再構成する、別の曲を引っ張って来る、すべて振付師の思うがままで、それに文句が言われているのは、目につかない(もちろん、深い世界ではいろいろあるのかも知れないが、ただの観客の立場では目にしない)。

こういう演出家の権力がむやみに高い表現芸術というと、映画だな。

たしかに、似てなくもない。

とっかかりとしては、俳優(映画)と舞踏家(バレエ)が、耳目を集める。しかし、実際に設計し、構築し、実装を指示する、つまりアーキテクチャを決めるのは監督(というかミゾンセーヌ、場面設定家)(映画)と振付師(バレエ)だ。いずれにしても、脚本家(映画)と作曲家(バレエ)は単なる切り貼り用の題材を提供しているに過ぎない。

それに比べるとオペラは作曲家の権限が異様に高いようだ。というか、そのあたりが、バレエの作曲家が2、3流ばかりの原因なのかも。

で、眠れる森の美女のフィナーレを聴いていると、どうにもリズムの刻みがドリーブっぽい。

そこで、プティパとチャイコフスキーの会話を想像してみたり。

「おい、チャイコ、お前の曲は暗いんだよ」

「や、そうは言っても、もごもご」

「バレエのこたぁ、振付師に任せときゃいいんだ。ずばり、おふらんす風にやってくれ」

「や、そうは言っても、もごもご」

「ほら、あれだよ、あれ。コッペだ、コッペ。あれを使え」

「や、そうは言っても、もごもご」

「とにかく、チャイコ、いいかい、チャイコ、おまえさんの長くてうっとしい曲でうんざりした人々を楽しませるんだ、チャイコ、わかったか、チャイコ、フィナーレはだな、チャイコ、コッペだコッペ、コッペでゴー」

「や、そうは言っても、もごもご」

「おれさまが、振付師だ!」

「わかりました」

とか。

(で、思い出したが、今はともかく、かっては指揮者の権限も異様に高かったようだ。楽想記号は無視するのは今でもありだが、ここでマエストロは死んだとか言って途中で曲を打ち切る、なんてのもあるわけだし)


2009-01-26

_ ジャリンコリブレ

28歳で、親父の最期を看取ったチエは、小鉄とふたり、居心地いい大阪の地を離れ、新天地目指して進撃を開始するのであった。

という映画かと思ってた。


2009-01-27

_ Osloおもしろい

後で書くかも。


2009-01-28

_ Fiddler

デバッグ用プロクシ

LOEのセッションで使っていて、やたらと使いやすそうだったのでメモ。

_ DevDays感想

いやー、実に5年ぶりくらいにおもしろかった。

Osloの妙に白くてのっぺりしたツール類のUIもおもしろいし(なんか、Tech系じゃないUIで見たような気もするんだけど、iLifeとかでもないし、なんだろうか)、Azureの宣伝ビデオ(トラックが箱を積んでどんどん繋げていくやつ)もおもしろかったし。Windows7のUIは、下の列は不細工だけど使いやすそうに見えるし、ウィンドウを上にぶつけると最大化とか、シェイクすると他のウィンドウを跳ね飛ばすとか、Exposeより便利そうな気もするし。

ただ、AppEngine(シェルからPython、最後はappcfg.py)と、Azure(Visutal Studioで配置)を比べてみると、前者のほうが広がりを感じさせる気はするんだよなぁ。と同時にそこにVisutal Studioが出てくるのは当然のようにわかるわけだが。


2009-01-29

_ JavaとRubyでプログラミング

宇野るいもさん、高井直人さんとのジュンク堂でのトークセションまでちょうど1週間と1日となりました。

arton・宇野るいも著『プログラミング学習シリーズRuby①・②』(翔泳社)

arton・高井直人著『JavaプログラマのためのRuby入門』(アスキー・メディアワークス』

刊行記念トークセッション

『Javaの掟・Rubyの掟 〜寝ても起きてもプログラミング〜』

arton(著者)×宇野るいも(著者)×高井直人(著者)×高橋征義(日本Rubyの会会長)

■2009年2月5日(木)19時〜

というわけで、意外と知られていないようなので、ちょっと宇野さんのことについて書いてみたり。といっても、10年ほど前に昼の仕事関係の協議団体で見知っていたくらいな感じだったんだけど。さっきエゴサーチしたら、宇野さんの昼の仕事ぶりがうかがえるブログが引っかかって、なんとなく納得したが、確かに凄腕の助っ人っぽいかも知れない。

とにかく、いつもばかでかいThinkpadを詰めたキャリーケースをゴロゴロしながらやって来るのが印象的だ。

で、それから数年して、アスキーからJavaの本を書かないかという話が来たとき、それはおれ一人では荷が重いから、設計ができてJavaを仕事で使っていて、要点をまとめて表現するのがうまくて……と考えていたら宇野さんに思い当たった。それより数年前くらいに、その団体の集まりでのプレゼン(XMLをインターフェイスに利用するのがなぜ有効かというような内容)がやたらとうまかったのを思い出したとか、別の開発者経由ですごくきれいな設計をすると聞かされた(しかも、その設計がおれは絶対にやらなそうな方法で、しかし検討してみると、それはそれで正当な方法に見えるということは、おれとは異なる視点で設計するということだから、つまりは意見に幅が出るということで、それこそ望むところなわけだ)とか、理由はいろいろある。あと、同じJavaでもおれはサーバーで、宇野さんはデスクトップに近いとか、分野が違うというのもあった。で、打診したら、遥か昔にIOという雑誌に記事を投稿したりしていて、技術解説書くの好きということで、コンビができた。

で、できたのがこの本(実際には、その前にSun ONEの解説書を2人で書いたはずだけど)。

実践Java(宇野 るいも/arton)

これは、1.4.2時代の本としてはおれは相当良い本だと自画自賛しているのだが、実際のところは良くわからない。

で、その後、コンスタントにアスキーから学習シリーズをまるでエラリーとクイーンか、ミックとリチャーズかというように書いていたりするのであった。StrutsとかJSFとかEJBとか。

個人的にはEJBのやつが好きだが、これは最もセールス的にはだめな本だったかも知れない。

J2EEプログラミング講座(宇野 るいも/arton)

まあ、EJBだし。

しかし、確かに自分ではEJBは絶対に使わないが(この時は2だった)、使う場合には間違いなくこのように使うべきだという方向で(つまり、おれが設計する場合の配置計画で)書いているし(すごく良心的)、何よりもキューの重要性と適用について書いているのが良いところ。CMPでぶんがわんそるろみたいな本ではない。

で、なぜか、そこから翔泳社さんの仕事で、上の実践Javaの別バージョンのようなものを作ることになった。

Javaプログラミングの処方箋 (Programmer’s foundations)(宇野 るいも/arton)

すでに、1.4.2の新機能というような時代ではないから、1.4.2の機能を前提としたベストプラクティス+OO設計の考え方のヒント集みたいな内容で、これは地味だけど良い本だ。

で、その地味な部分を、だめなコードをサカナにすることで(また、時期的にちょうど、サカナがいっぱい網にかかってあわや置いてけ堀に引きずりこまれそうになっていたのでネタには困らなかったのであったが、同じように宇野さんもいろいろ見て来て言いたいことは山ほどあったようだ)置き換えてこうしたら良いとアドバイスするという方向で企画化された連載をまとめたのが、掟の本。

コーディングの掟(最強作法) 現場でよく見る不可解なJavaコードを一掃せよ! (開発の現場セレクション)(arton/宇野 るいも)

という具合に、要素技術解説から、開発全般に対する解説に範囲を広げ、いよいよ、プログラミングそのものへの入門者を対象にした本を作るとこまで来た。

Ruby 1 はじめてのプログラミング (CD-ROM付) (プログラミング学習シリーズ)(arton/宇野 るいも)

で、1巻はコンピュータのハードウェアの概説から入って関数の切り出し(共通点の括り出し)まで。

1巻はさすがにあまりに初めの一歩過ぎるけど、2巻は結構おもしろい。

Ruby 2 さまざまなデータとアルゴリズム (CD-ROM付) (プログラミング学習シリーズ)(arton/宇野 るいも)

宇野さんのパートはおれには書けないか、書くのがすごく難しそうだから、いい感じだと思う。というか、後になって知ったのだが、おれの周りで唯一の電子工作少年(青年かも)だった人なので(つまりANDとORとNOTの人なのだろうなぁと)、やはりプロとは言えないプログラマには言いたいことがたくさんあるようで、楽しみなのだ。

さて、もう1人のセッショントーカーの高井さんだが、出会いはスターロジックでのスマートクライアント勉強会という不思議な集まりのことだった。おれにとってはDIとの衝撃的な出会いになったわけで、そこでひがさんと高井さんに、ピコとかSpringとかSeasar2とかの時代が来るぞ、と教わったのであった(そして実際にそういう時代になったわけだから、高井さんやひがさんがいかに先見の明があったかってことだな)。

で、高井さんと書いたのがこれ。

JavaプログラマのためのRuby入門(arton/高井 直人)

いやぁ、同じ時期にフラナガン+松本本(む、妙な字面になってしまった)が来るとは予測だにしなかったのだが、RubyとJavaの両方のソースが読めるのはこっちだけだから、そこは間違いなくこっちのほうがお得だな。

高井さんは不思議な人で、萌えSeasarとかを眠ってしまうまで語り続けたりするのだが(当時)、パワポでやる夫が使えないトークセッションでいったい何を語り出すか、とても楽しみなのだ。

というわけで、予約はお早目に。

■入場料 1000円(ドリンク付)

■会場 ジュンク堂書店池袋本店 4階カフェにて

■定員 40名(お電話又はご来店にてお申し込み先着順)  

■受付 お電話又はご来店(1Fサービスカウンター)にて先着順に受付。

※トークは特には整理券、ご予約のお控え等をお渡ししておりません。

※ご予約をキャンセルされる場合、ご連絡をお願いいたします。

お問い合わせ 池袋本店 TEL03-5956-6111

ところで、翌々日のトークセッションにとても魅せられているのだけど、残念なことにその日は都合がつかなくて見送り。でも、行ける人は行って、ぜひ私の代わりにムシクッキーを食べて来てください。

『楽しい昆虫料理』(ビジネス社)刊行記念トークイベント

『えっ!虫って食べられるの?!−バグズイーツカフェへようこそ』

内山 昭一(昆虫料理研究家)×白鳥 信也(詩人)×渡邊十絲子(詩人)

■2009年2月7日(土)19時〜

というか、池袋ジュンク堂は、本を読む人の天国みたいな場所だから、一歩足を踏み入れたら最後、数時間は戻って来られないので、まだ行ったことが無い人は、この機会にぜひどうぞ。

本日のツッコミ(全10件) [ツッコミを入れる]

Before...

_ arton [えー、そうかなぁ。mputとかknuとかznzとかebanとかgreenteaとか、アルファベットの名前って良くある..]

_ ARAI [5日は、時間が間に合ったらぶらりと行きます。]

_ arton [お待ちしてます。]


2009-01-30

_ S+Sサミット

六本木で開催されたマイクロソフト S+Sサミットに行った。で、TechDaysではスルーした成本さんの「Web2.0サービスのアーキテクチャー構築と実装」を受講してびっくり。

すごい内容だった。

どうもTechDaysでは泣きたくなるようながらがらぶりだったそうだが、それは題が悪すぎただけだと思う。素直に「ソーシャルアプリケーションのアーキテクチャ構築と実装」とかにすれば良かったのに。

具体的には、ASP.NET MVCをベースにASP AJAXとかを使ったCGMサイトのサンプル実装(そのうち公開されるらしい)を作るにあたってのアーキテクチャとテクノロジー配置、そこから得られた知見の披露で、これがしょぼいサンプルならそれまでだけど、理屈とテクノロジーマッピングと結果がそろっていて、しかもプレゼン資料までマイクロソフトスタイルとはちょっと変えて(基本は黒地に白なのだが、実に効果的。枚数104枚というのも……TechDays版だと64枚だな……)、なんというか、マイクロソフト新時代とでもいうべきセッションだった。

サンプルはサンプルだから、Youtube(あのてのサイトはどれも同じようなペインの配置になるが、やっぱりYoutubeっぽく感じる)の動画の代わりにPPTを公開するという不思議なサイトだけど、Visutal Studioから、これが作れるのかというのがまず驚きだ。2週間で作ったというけど虚勢をはる人じゃないから、事実なんだろう。

というか、そこがマイクロソフトのすごいところなのだが、Railsから学んだっぽいASP.NET MVCのルータ(いかしたURIのための仕組み)、WCFをこう使いますかというAPIの実装、それをちゃんと統合して見せるという点、実際に作った感触から得た、どの実装パターンでどの要素技術を適用するかというチャート、つまりは形式知化、がすごくうまくできている。正直、悔しい。こういうことができるのか。

サンプルの公開はまだだそうだが(パワポはたぶん、TechDaysの参加者は同じものがダウンロードできるはず)、あのてのサイト構築技術をノウハウ化してしまったというのが驚きだ。

セッションとは直接関係ないけど、Microsoft/web。InstantRailsの真似じゃないか? と思わず考えてしまう「Microsoft Web Platform」(フリー——自由じゃなくて無料——な開発環境一式。MVC、VS、SQL Express、Sliverlight、AJAXというかjQueryバンドルでしかもVSでjQueryにインテリセンスを効かせるようにしたといってるんだが、後で試すとして:追記jQuery IntelliSenseがVisual Studio 2008に via matarillo)の提供とか、これまでのばらばらにダウンロードして、でもバージョンがうまく合わずに面倒でやめた、とならないような仕組みも導入してたのか。

ただ、サンプルにはXSS脆弱性とかいろいろ問題があるらしいのだが、それを検出するツール(Threat)の紹介になっていて、そのあたりの落とし方も含めてプレゼン自体もおもしろかった。

本日のツッコミ(全4件) [ツッコミを入れる]

Before...

_ arton [そういえばそうですね。でもVSチームや.NETチームじゃなくて、Webチームのページなので、IRかな、と。]

_ はっし〜〜 [成本さんの資料下記からダウンロードできました。 http://download.microsoft.com/dow..]

_ arton [大筋は同じだけど、どうも簡略版みたいですね。]


2009-01-31

_ 1.9.1の組み込み

なんか、rb_eval_string呼ぶと落ちるというイヤな状況にはまってしまう。ので、単純なことでいろいろ試すが、なかなか出口が見つからない。

最初に、rb_eval_string("# encoding: cp932");を呼ぶと、ちゃんと処理されるようだ。

でも、待てよ、rb_eval_stringの呼び出し1回あたりで限定だったりするのか? とか、いろいろひっかかるな。


2003|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|

ジェズイットを見習え