著作一覧 |
子供が課題図書だとか言ってディケンズを読んでいる。
カッパーフィールドじゃないかなとか話したりするが、イングランドではコッパーかも知れないな。銅原さん。
で、赤ちゃん奥さんとの暗い未来を予見させる4巻を読んでいて、5巻の表紙の絵が団欒なので先が見えてしまってがっかりとか言う。
それで、いや内実は違うかもよと、答えた。
ずいぶん以前にJava Worldで紹介記事を読んで、その後、そのものを熟読したものだが、あらためて読み返すと、今でもドン・ロバーツとラルフ・ジョンソンのフレームワークの進化はおもしろい。
なぜそんな古いものを思い出したのかと言えば、みねこあさんがPluggable Component Frameworkという「桃源郷」について書かれているのを読んだからだ(もっともそう言っているのはオージスの方だけど)。
プラガブルコンポーネントフレームワークは、上記の進化パターンでは5段階目に位置しているPluggable Objectsに対応するもののようだ(おれはDDDは読んでいないのでそこはわからないけど)。
DDDエッセンスでは、
ドメインフレームワークとは、中核の抽象化により抽出されたドメインの中心的なインタフェースと相互作用から構成される中央ハブのようなもので、そこにドメインの可変部分をコンポーネントとして着脱できる。ただし、ドメインフレームワークには、(1) 実現が非常に難しい、(2) フレームワークが提供する中核ドメインにアプリケーションが縛られる、などの欠点もある。
というものをPluggable Compoenent Frameworkとしている。
これは第4段階のHotspotsより祖粒度と読めるから、進化の5段階目が(Pluggableという同じ言葉を使っている点も含めて)妥当かと思う。
Solution:
Design adaptable subclasses that can be parameterized with messages to send, indexes to access, blocks to evaluate, or whatever else distinguishes one trivial subclass from another.
中核ドメインへの強い依存性の解決に6段階目のFine-grained Objectsを待つ必要がある点も共通している(Fine-grained Objectsではフレームワークの構成物が細切れ化された結果、完全にコンポジションによるつまみ食いが可能となる――That is, dividing the object further would result in objects that have no individual meaning in the problem domain.――ただ、なんとなくだが、それってstdio/stdlibみたいな単なる関数ライブラリのような気もするのだが、あくまでも3 examplesから発展した結果のフレームワークなのでそれは気の迷いだろう)。
もっとも、アプローチがまったく異なるから(進化論は、いかに現実のシステムを深化させてフレームワークを洗練させていくかの実装パターン(むしろリファクタリングパターンというべきかも)比較してもしょうがないとも感じるが。
で、おもしろいなと思ったのは、大体、上記の進化パターンの5段階目というのがどうも一区切りというか、中期的な完成形(それ以上は望む必要があまりない)という実感があるからだ。
排除型社会―後期近代における犯罪・雇用・差異(ジョック ヤング)
以前から疑問だったことへの解答らしきものを見つける。
相対的な剥奪感は、これまで「上向きの視線」によって生じると考えられてきた。すなわち、それは労働市場で平等に遇されない者が、能力や資格の面では自分と変わらないのに評価が自分より高い者と自分自身を比較することで、欲求不満を抱くために生じると考えられてきた。
しかし剥奪感は、「下向きの視線」によって生じる場合もある。階層序列のなかで自分より下位にある者と自分を比較し、その人が自分よりも恵まれていると感じるとすれば、それも相対的な剥奪感である。すなわち、自分よりも劣る者が、たとえ自分より低い生活水準にあっても、自分より苦労のない生活をしているように見えるとしたら、それだけで許せないというわけである。
――P.35
この節は、厳罰主義に代表される不寛容について説明をはじめた箇所だが、おれには理屈として納得できる説明だ。もちろん、感覚的にはまったく理解できない(その剥奪感について)。
物語が成立していれば、上向きと下向きは互いに相補的な2つの感情を生む。上向きであれば、取って代わるべしという気概か、かくあるべしという奮起または、脱帽であるという敬意。下向きであれば、かくなりたくなしという軽侮か、明日はわが身という奮起あるいは同情。
物語が消失し、上向きについては畏怖と無力感しか持てなければ、下向きに暴力的な衝動を向けることになる、ということだろうか。
いずれにしても、すでにそういう社会で暮らしていることはわかっている。それなりの組織力と知性と暴力を備えた集団が、銀行を襲ったり企業にたかるのではなく、単なる老人を襲い、それを貯金をもっているのは老人だから当然のような評価を与える人たち、というのはどこから湧き出たかすなのか、というのは謎だった。金はあるところから無いところへ流れるのだから、犯罪者が容易なところから犯罪するのはよくはないがまあ良いとしても、それを容認するかのような言質というのは最悪だ。
何が起きていて、どういう方向を取りうるのか、基準となる正義はあるのだろか、あるとしたらそれはどういう姿を取るのか、といったことを考える。
帯の惹句がその通り。
画期的な書物。驚異的なまでの博識、事実への深い洞察、明晰な論旨と論証が結びついたこの著作に、私は圧倒された。――ジグムント・バウマン
おれは、幸いにしてまだ圧倒されつつある。現在150ページ目(全体の1/4くらい)。(クレイシャーキーは通勤用なので並行読書となっている)
筆者の基盤的な強みは、ニューヨーク市立大学(北米)とケント大学(英国)と大西洋をまたいで仕事をしている点のようだ。そのため、西欧と北米の両方について差異を勘案したうえで論考している。
via 『排除型社会』を読む
クレイシャーキーの続き(数値はうろ覚え。後半はまったく意味が取れない箇所があったので、元の論旨とは異なっている可能性が高い)。
伊勢神宮は2000年(これ嘘だよな、どうみつくろったって)の長きにわたって存在する類まれな存在だ。しかしUNESCOは世界遺産としては認めない。
なぜなら20年に一回建て直すからだ。いつもと同じ森から材料を取って。
ここで重要なのはしたがって社殿ではない。20年に一度建て直すことを2000年にわたって続けているというプロセスだ。
Wikipediaは、永遠に完成しない百科事典である。各ページは絶え間ざる推敲と編集を受ける。これはブリタニアのような「物」としての百科事典とは異なる。
伊勢神宮に対する愛というのは、社殿に対するものではなく伊勢神宮というプロセスに対してのものである。愛の対象は物理的な存在である必要はない。
Wikipediaを愛するということは、個々のページに書かれたアーティクルを愛することでもスナップショットを愛することでもない。それは伊勢神宮に対する愛と同様なものだ。
Here Comes Everybody: The Power of Organizing Without Organizations(Shirky, Clay)
この対比は気が利いているうえに、斬新(他で見たことがない)だ。
追記:石坂さんの切り口も僕には目から鱗。
いつもはだらだらと最大5クライアントくらいからのアクセスがあるとすると、コネクションプールは5つ用意しておけば良いわけだが、ある日、突然アクセスが集中して同時に40クライアントをさばく必要が出る。当然、その時点で40コネクションが作られる。
この40コネクションがプールに残った状態で、またアクセスが平常に戻るとする。賢いコネクションプールであれば、プールされたコネクションを順に回すから40コネクションはまんべんなく利用できる。LIFOというかキューで管理しているような場合だ。ここで、FIFOを利用されるとつまりスタックだが、底から35コネクション分はまったく利用されない。
そして1週間くらい経過したところで、また40とか50とかの嵐が吹く。
1週間何もしなければそのコネクションは無応答非活性(non acitivity)タイムアウトとかしているだろう。しかし、余分なことをしないソケットだとタイムアウトして切断状態になっていてもその時点で利用者は気づけない。リクエストに応じてDBにアクセスして初めて切断状態に気づき、SQLExceptionをスローする。
処理は中途半端に走っているため、そのリクエストは異常終了させるほかなくなる。
ということを想定すれば、コネクションプールの機能として、利用開始時の接続チェックであるとか、長時間アイドル状態にあるコネクションの回収といった処理は必然だ。
が、JDBCにはそういったAPIはない。
commonsにはしょぼいコネクションプールがあり、上記のようなプロパティが提供されている(JNDI用の設定で記述できる)。が、どういうわけかいきなり100コネクションとか作ろうとすると空振りすることがある。どちらにしてもcommonsは嫌いだからソースを読むより自分で作るほうがましなので、すぐに捨てる。
OracleのJDBCドライバは腰が落ち着かなくてそれはそれで厄介なのだが、10gからのoracle.jdbc.pool.DataSourceから取れるOracleConnectionにはこういったプロパティがある。しかし、これまた厄介な代物だ。
というのは、設定したいプロパティはOracleConnection側にあり、DataSource側にはなく、使いたい場合はプロパティセットを送りこむ必要があり、それをJNDIの設定では記述できない。まあ、Oracle依存の初期化プログラムを書けばよいということだ。
しかし、DataSource#getConnectionがコネクションプールだというのも厄介は厄介なのであった。というのは、異常を検出してconnection#closeを呼んでも単にプールへ戻っていくだけで、またgetConnectionを呼ぶと同じものが返ってくる(例外を起こしたConnectionについてはclose呼び出しで物理接続もろとも廃棄すれば良いと思うのだが、と書いて気づいたが100インスタンスくらい作られていたら10回程度試してもわからないのか。本当のところはどうなんだろうか)。そこで、OracleConnection#close(int)を使って物理接続の廃棄を指定することになる。なんで、ConnectionPooledDataSourceを提供しないんだろうか。まあ、こちらはPooledConnectionというこれまた厄介なものが返ってくるのでそれはそれで面倒な話ではあるが、ojdbc14.jarを参照しなくてもコンパイルできるというメリットはある。
結局、DataSource#getConnectionしたら、dualから1をselectするようなSQLを一回発行し、そこで例外が起きたら、引数つきcloseを呼び出し、またgetConnectionするというのを何度も再試行する処理を記述することになる(何度もというのは、最大で生成済みのすべてのインスタンスを潰す必要があるからだ。もちろんDataSourceは確保したままとしたい場合だ)。
プログラムを実行すれば当然時間が経過する。
それとモデルによる空間の分割の区別がついていないと思える実装モデルがあり、おれの考え方のほうが、有利だということはわかっているのだが、にもかかわらず何かこっちがまちがっているのかなと感じたりもする。
Aleviating Memory Fragmentation in Mono
コンパクティングしなければ、いやでもフラグメントがどかどかできる。
するとでっかなバッファを取ろうとすると新しいページの割り当てが必要となりプロセスが肥大する。
だからでっかなバッファを要求すんな。細切れ継ぎ合わせメモリーストリームを使え。
と読んだ。
細切れ継ぎ合わせ方式だと実際のバッファへのポインタ分だけ余分なメモリを食うわけだし、次の細切れへの移動にオーバーヘッドがかかるわけだが、それを補ってあまりある恩恵が得られればOK。
(ここで、「さっそく試してみる」といかないところがだめなところだ)
子供が友達から借りてきたマンガを読む。
おもしれぇじゃないかよ、1〜3はどうしたと訊いたら、もう読んだとか言って、どうも知らないうちに借りて読んだらしい。なんかこれまでおれに貸すと本が汚されるとか考えていたのかも。
しかし、このマンガ、宗教トリビア知らなければわからないギャグが満載だが、10のうち3がわかれば十分おもしろいのかも。というか、子供は聖書を読んでいるからおもしろがれるのか。
(隕石が飛びまくるのはこれのことだな)
もっともアーナンダーと言われると最初にオウムのアーナンダーが思い浮かぶのはしょうがないな(多分、子供はそんなもの知らないだろうけど)。
で、次に荒川のやつを読む。
荒川アンダー ザ ブリッジ 9 (ヤングガンガンコミックス)(中村 光)
突然9巻なので、出てくる有象無象のわけわからなさがえらくおもしろいのだが、まともに最初から読みたくもありどうでもよくもあり。
おれは隅田川オーバーザレインボーなのでなんとなく親近感が湧くのはいたしかたあるまい。
一見似ているが異なる。何が異なるかというと本質がだ。
多文化主義においては、生物学的な差や社会的な差はどうにでも変化する差ではなく、変えようがない本質的な差として扱われる。
したがって、かれらの問題はわれわれの問題ではない。かれらを隔離せよ。遠ざけよ。排除せよ。
いくつかの歴史的な問題点がある。その差が本質的であれば、それを認めよという、かれらの側の申し立てがあったということだ。受容のために本質主義を利用することがあったという点だ。そのため、事態は複雑な様相を示す。
カテゴライズしたり階層化すること、つまりあるドメインのモデルを作ること、抽象化することは、ある種の職業におけるミッションだ。
しかしそれは世界と対峙するときには多文化主義の罠そのものである。
分類の罠はそこかしこに張り巡らされている。特に人気があるのは生物学的な差違に基づくものだ。血液型、性別、年齢、体型。これらはいづれも本質的な差違として扱うことが出来る。
問題はこれらをロールや責務にマップしてしまうことにある、と想定する。
というのは実際にはこれらは重要な差違ではないからだ。
生物学的差違は、OSやハードウェア、あるいは実装に利用した言語にマップすべきものだ。それはドメインモデルには影響せず、単にビジネスの文脈でのみ意味を持つ。
以前、acmqueueのBASEに関する記事の前半だけを勝手翻訳したが、続きをwinplusさんが翻訳してくれた。
実のところ、2フェーズコミットという技術は早すぎた自動化だと思う。えらく大層なことと複雑な仕組みではあるけれど、さっきまでオンラインだったシステムは直後もオンラインだろうという程度のあやふやな確信に頼って自動化しているだけのものだ。
よく似たシステムに、同時期にでてきたRPC(ORPCもそうだ)がある。
前提が高信頼性が確保できるクリーンルーム内の複数のノードから構成された分散システムだとしか思えない。それにしてもマシンは落ちるしネットワークは切れる。2フェーズコミットは、絶対に通信が可能だということと相手のプロセス(マシン)が落ちないことを前提としたシステムだという矛盾がある。SYNに対するACKを2時間待ってしまえばすでに成り立たないのだ。
早すぎた自動化は、妄想のシステムを生む。その幻想のインフラの上に大伽藍を建ててしまえば、実運用が始まってそれが文字通り砂上の楼閣と知って、ときどき水を掻き出す羽目に陥ることになる。それに対してはきちんとシンプルな手作りシステムを対峙させる必要がある。そのようなシンプルな手作り石鹸がいつのまにかご大層なWS-*になってしまうこともあるわけだが。
より固く分散させるのであれば、データを手元にコミットして、分散の相手がこちらに来る(ポールする)方法を取れば良い。相手にキューするためにデータを持って飛んでいけば相手が死んでいるときに厄介なことになる。それよりは同じマシン内にコミットしておけば、まだ直接の対話の相手(DBMSになる)が死んでいる可能性は少ない。そうやって少ない機能でシンプルな仕組みを作る代わりにインフラによる複雑な自動化を利用しようとすることが結果的には災厄を招く。
確かにポール(プル)はオーバーヘッドで、プッシュのほうが良いと考えていたことはあるのだが、また、実際ポールのオーバーヘッドはかってはばかにならなかった。しかし今となってはそうではない。それにプッシュとプルの併用という手もある。コミットしたら通知する。通知の成否は問う必要はない。通知を受けたらプルしに来る。プルしたときにまだデータが残っていればマークを真にし、残っていなければ偽にする。プル側はプロセスの起動時に必ずポールする。コミットする側はマークが偽の時のみ通知する。仮にプル側がマークを真にしたまま死んだとしても放置でよい。なぜならばプル側が復活すればポールから始めるからだ。
考えてみれば単純な話なのだが、どうも、メッセージの伝播は、下位ノードから上位ノードへ進み、それはクライアントから中間サーバ、中間サーバからより上位のサーバ、という道筋で、かつ、通信を受けるために口をあけておくのはサーバの役割という固定観念に捕らわれていたようだ。そんなものは無視して、口を開けておくのは下位ノードとしておけば、すべて恙無くメッセージの伝播が可能だったのだな。
そういえば、クラウドの技術が届いたのでぱらぱら眺めたり読んだりした。その中で首藤さんの『スケールアウトの技術』が扱っているドメインがおれには一番おもしろかった(直近で具体的な製品を利用する必要がないからだろう)。
あるいは、CAPのPのパーティションって、まさにOracleのパーティション(エントリの保持や各種処理に責任を持つ単位)と考えてよいのか。と佐藤さんの『分散インメモリキャッシュとデータグリッド』を読んでなんとなく納得したり。
アマゾンからのDMって時たまこれは読みたい/聴きたいというのがある。ただ、当たるのは大体3ヶ月に1度くらいだから、まだそれほどツボを見つけているわけではないようだ。
で、これは惹かれた。
カタラーニのワリーが入っているのがまず一点。ベネックスのディーバ(部屋の中でローラースケートとか、クラシックを聴いてるんじゃないよロマンチックだよとか、変なとこだけ覚えているな)を観て、それなりにライフスタイルに影響を受ける過去があったりするとカタラーニのワリーはちょっと特別(故郷を離れる歌以外もあるのか)。
ほとんど聴くことができないつばめが入っていることが次。
ザザとかシベリアとかコンチータってなんだ? とまったく知らない曲も入っていることも好感度アップ。
で、iTunesストアで買うんだよな、これが。
というか、どうも聴いたことのないミミの歌だと思ったらレオンカヴァルロのやつも入っていた。おもしろいな(なぜか4幕でも元気いっぱいで楽しそうなのでどんな脚本なのか不思議だ)。
複数のコマンド(以下、aとb)の全体のtimeを取りたいとする。
time a;b
とすると、実際には、time aが実行されて次にbが実行される。
この場合、{}を利用して、
time { a;b; }
とする。aの直前とb;の直後に空白が必要。
試してみる。
$ time ruby -e 'sleep(1)' real 0m1.002s user 0m0.000s sys 0m0.008s
当然、約1秒実行にかかる。
$ time { ruby -e 'sleep(1)';ruby -e 'sleep(1)'; } real 0m2.006s user 0m0.008s sys 0m0.004s
2コマンド(この場合ruby)合わせた結果が計測されている。
以下は間違い。
$ time ruby -e 'sleep(1)';ruby -e 'sleep(1)'; real 0m1.003s user 0m0.004s sys 0m0.000s
最初のrubyの実行分のみが計測されている。
中ほどに10分以上あるザザがすごい。これ、曲に関して言えば、すさまじい名曲に聴こえる。
びっくりするほど甘ったれたバイオリンのソロ(だがそれが良い。何度かめの繰り返しはアマゾンで試聴できる範囲にも出てくる)に声(台詞)。女の子の声による応答。女声は末尾だけ節が少し乗る。子供は一貫して台詞。イラメーリカ。トトが不倫相手なのかな(っていうか子供がトトと言ってるんだから、お父さんって意味かも。何度も聴いていたら子供の名前がトトみたいだ。でもトトって男の子の名前のような)。イタリア語は聴き取れても意味はまったくわからない。サフェーテ。で、歌が始まる。タタータラララータという良くありそうであまりないストレートなメロディとか。特に子供の台詞と女声の歌が交互に入るのが驚くほど効果的だ。(この女の子のセリフが入る曲作りって、オルターネイティブミュージックにあったような。どうもそれが思い出されるのだが何の曲かわからない)。で、またヴァイオリン。それに合わせて子供のセリフ。盛り上がり。で、ショパン風のきれいなピアノソロ(子供が弾いているという設定らしい)が入る。フィニート、バチャーテミー。
エマーマで動揺するから、マーマはママだなとか。
聞いたことはないとは言え、日本でも数年前に国立でやったのかぁ。観たかったな。それにしてもラッキー! スキャンダルってのはおもしろ過ぎる(追記:しつこくいろいろ調べてたら、主人公は女優だから、スキャンダルで一稼ぎみたいな意味でのラッキーなんだな)。
で、CDも出ているようなのだが日本では入手困難で、amazon.comになってしまう。だが、CDではなく実物を観たいものだ(というか、映画で言えば50年代のダグラスサークのようなものだ。時代の波に呑み込まれて消えてしまったのが、その波が引いた後には浜辺に打ち上げられた珊瑚の欠片が目に入ってくる)。
文化村で子供と映画(パリ・オペラ座のすべて)。踊りの映画というよりは、文化装置の育て方という趣がむしろ強く、そっちの面がむしろ面白い。
映画としてはだれまくるので(3時間とかばかみたく長い)、名前忘れたがツールやルーブルなんかのドキュメンタリーを撮った監督が撮ったのを見たかったなぁとか思う。(が、ばかみたいに長いことを除けば悪い作品じゃない。が、映画じゃなくてテレビでも通用すると思った。というかテレビだな。それじゃぁCMによるインターバル抜きに3時間は長すぎるよ。3時間っていったら優れた映画のみに許される時間だ。1900年とか、クーリンチェとか)
ジェニュスという作品の練習風景がおもしろい。ワンツースリー、タカタカタッ、そこではもっと引き寄せて、それからちょっと手を離し、あそこをこっちでカタカタタッ、ワンツースリーフォッ、ウンパラパ、みたく振り付け師がラップ調でずっと指示を出している。他にも練習風景はたくさん出てくるが、ここまでリズムをずっと刻んでいるのはこれだけだ。えらくおもしろい。
一方、ルテステュとかのパキータの練習だと、爺さんとばあさんの二人組みが指導しているんだが、2人の意見がまったく合わない。爺さんが首を振ると酔っ払いみたいだからやめろと言えば、婆さんはわたしゃここでは酔っ払ってるほうが素敵だと思うと言うし、ことごとく意見は対立し、何も解決しない。で、ルテステュは勝手に解釈して踊る。
おれは、この練習風景はすごく感激した。ルテステュは文句なしに世界最高のバレエダンサーの一人で(こないだ買って見た椿姫で知った)、当然、(指導している人たちは)往年の大ダンサーかも知れないが、だからといって何かを教えられるわけでもあるまい。だから、異なる見方をする二人の(それなりの)人間がそれぞれ自分はこう思う(が、隣のやつは別のことを思う)、さあ、お前は自分の頭で考えろ(これは口には出さない)、という指導になるのだろう。教科書通りをさらに進めたコーチングだな(おれが教えられるのはここまでだ。後は自分でものにしろ、というコーチングはメディアの練習で見られた)。
La Dame Aux Camelias/ [DVD] [Import](Agnès Letestu)
そして芸術監督のあれこれのてきぱきぶり。年あたり25万ドル以上寄付するクライアント(リーマンブラザーズの名前が出て一抹の寂しさというか失笑が場内を流れる)を満足させるためのプログラムを決めて、コールドバレエから自立して稼げる人材を掘り出すことを演出家に要請して(あなたがスタジオに顔を出して一本釣りしたとして、もしオーレリが引き受けたとしたら、彼女はそれはすさまじいからすごいことをするとは思うわ。でも、わかって欲しいのは、F1カーに公道を走らせるようなことはしないでちょうだい)、年金制度について政府の役人らしき人たちにバレエダンサーの特殊性を訴えて(たぶん、フランス版の仕訳だろう)またそのプレゼンがえらく説得力があるのだが、さらには学校としてのオペラ座バレエ団が持つ技術伝承の重要性をコーチへ訴えたり、ダンサー個人の要求を調整したり、次々とてきぱきさばくのは観ていて感嘆する。あまりの辣腕っぷりに、エコルドノルマルあたりで芸術経営の博士かなにかをとったエリート官僚なんだろうと思ったら、もともとオペラ座出身のバレエダンサーでその後自分の団を設立してから文化庁入りしたという、技術者−ベンチャー経営−官僚というキャリアの人だった。にしても、理屈をきちんと話せる人ってのは観ていて気持ちが良い。この人が出てくる部分は誰が見てもおもしろい/参考になるだろう。
それに比べると舞台のほうは映画として今2つくらいで、それはテレビ的な映し方が原因だと思うが、特にデュポンが出てくるロメオとジュリエットがつまらな過ぎてうんざりした。映画がつまらなければベルリオーズの劇的交響曲ってこんなにつまらない曲だったっけと曲もつまらなければやたらと裸足にフェチフェチする演出もうんざりだった。
ジェニュスとメディア(でも、ちょっと乱暴かな。曲は良いと思ったが演出は鈴木忠志っぽい――つまり古臭く感じた)はすごく気に入ったけど。
特にジェニュスは日本公演して欲しいなぁ。植物の成長というか、菌の繁殖というか、体の動きがえらく生物的で、これはダンスという身体表現ならではの作品だ。なんか昆虫っぽい動きのダンサーも見えるし、genusというと生物分類上の属のことだから、いろいろな生物がうじゃうじゃいて世界はおもしろいというような作品なんだろうか。
クレイシャーキーを読んでいると、カメラ付き携帯ありきの事例がたくさん出てくる。
なんか海外は、つい数年前まで携帯(この表記法は気持ち悪いな)に関しては遅れているっていう認識だったが異なるようだ。
遅れているっていうのは課金サービス限定の話だったのかな。
子供が友達から荒川アンダーザブリッジを全部借りてきた。
で、2日かけて読んだ。
荒川アンダー ザ ブリッジ 1 (ヤングガンガンコミックス)(中村 光)
9巻をいきなり読んだときに、表紙になる人というギャグがあって、そこから表紙は全員元からの住人なんだろうと思っていたら、違うのな。
荒川アンダー ザ ブリッジ 4 (ヤングガンガンコミックス)(中村 光)
で、なんでだかわからないが子供がやたらとどのキャラクターが好きかとか訊くので、そりゃ不思議ちゃんが好きなおれとしては当然のように近世人というおもしろい変換がされたが、応えたら、えー意外、河童かと思ったとか言われた。わけわからん。で、まあ河童も割りと好きかな。でも星も結構好きかも、と言いながら、でもよく考えたら、おれこの親父好きだわ、と言ったら、ふんふん、私も好きだとか言うのでなんだかわけわからん(が、一番好きなのはマリアとシスターだとか言うし)。いずれにしろ好きなキャラクターとしててっかめん(なぜ変換しないのだろうか? デュマの作品名とか辞書に食わせないものなのかなぁ)鉄仮面とかステラ(イタリア人っぽい名前だなとラストコンサートとか)とか子供が出てこないというのに妙に納得していて、納得しているということはそういう経験があるからだろうから、いったい友達とどういう会話をしているんだろうか? と不思議に思った。
ただ、それなりに楽しく読めるんだけど、確かにこれは子供マンガだなと感じるくらいに説教臭いし(と言っても説教の仕方が「あいつら一人も人間じゃないだろう」で画がおっかなかったりするから、それなりに作者としては照れくさかったりギャグマンガっぽく振舞おうとしたりはしているんだろう)、おまけにどうも説教が妙に生々しくてひっかかりもするので、読んだ後、結構気が滅入る。
HTA(Html Application)は、IEをベースにした簡単なCOMオートメーションプラットフォームで、JScriptからASR(というよりもASRのモティベーションとなっているわけだが)までホスト可能なActiveScriptとHTMLの組み合わせでGUIスクリプトが書ける。
それは良いのだが、GUIプラットフォームがHTMLというのは楽だけど制限も多い。
で、12年くらいたって、Silverlight4のブラウザー外実行がそれに続くようになった(HTAと同じでどこまで利用されるかは別だけど)。
以下、Silverlight 4 Rough Notes: Trusted Applicationsからの引用。
dynamic excel = ComAutomationFactory.CreateObject("Excel.Application"); excel.Workbooks.Add(); for (int i = 1; i <= 10; i++) { excel.ActiveSheet.Cells[i, 1].Value2 = i; excel.ActiveSheet.Cells[i, 2].Value2 = i * i; } excel.ActiveSheet.ChartObjects(). Add(100, 100, 300, 300).Chart.ChartWizard( excel.ActiveSheet.Range("A1", "B10")); string path = string.Format("{0}??picture.jpg", Environment.GetFolderPath(Environment.SpecialFolder.MyPictures)); excel.ActiveSheet.ChartObjects(1).Chart.Export(path, "JPG"); excel.ActiveWorkbook.Close(SaveChanges: false); excel.Quit(); using (FileStream stream = File.OpenRead(path)) { BitmapImage bitmapImage = new BitmapImage(); bitmapImage.SetSource(stream); imageExcel.Source = bitmapImage; stream.Close(); }
dynamicキーワードがIDispatchと結びつくというのは都合が良い展開。C#いいねぇ。
で、ComAutomationFactoryがキーとなるのだが、これはSystem.Windows.Interopに含まれているようだ。たぶん、dynamicな変数のメソッド呼び出しは都度リフレクションを利用してMethodInfoを読むはずだから、そのタイミングでIDispatch#GetIDsOfNamesを呼んでDISPIDをラップしたMethodInfoを返すというような実装だろう。……と考えてみると、ComAutomationFactoryを待たずに実装可能な話だったのだな。
SDKを入れようとしたら言語(VS2010の)が合わないと言われて失敗した……。
子供が岩波読者が選ぶ岩波文庫100というプリントを学校から持って帰ってきて、どれを読もうかなぁとか言っているので(デイヴィッド・コパフィールドを読んでいたのはこの文脈だったわけだな)、どれどれおれにも見せてみろとチェックしていくと、まったく見知らぬ本が62位にあった。
知らないなぁと、アマゾンチェックを入れると、イギリスの田園地方に隠遁して読書三昧の日々を送る読書人の架空の自伝らしい。
で、アマゾン評でも評価が高い。共感の嵐である。
読書人というのは本当に根っからの読書人だなぁと感じたのだが、その感じはどちらかというと嫌な感じだ。作者の生涯について書いてあるアマゾン評を読んで、その思いは強くなる。
ただ、読者に選ばせた=一家言ある読者が投票したというわけだろうからか、なかなかうまくできていて、確かにこれは教養というものであるなぁと100冊を眺めて思う。
大体自分の読書の記憶と照らし合わせて、へーあれがこんなに高位なのかとか、やっぱり読んでおけば良かったなぁとか、眺めていると楽しい。
1位はこころ、2位坊っちゃんというのは、実に妥当だと思うし(とはいえ、こころは読んだことないし読む気も無いわけだが)、13位が寺田寅彦、35位が北越雪譜、52位がプロテスタンティズムの倫理と資本主義の精神、74位が方法序説で100位がガリア戦記といったところも興味深いが、何よりへーと妙だなと感じたのが7位。
そんなに高位なら、これは読んでみたいと思った。というか、読む。
(あえて3位の銀の匙と5位の君たちはどう生きるかは見なかったことにしたくもあるが、蛇蝎のごとく嫌う必要は別にないんだけど、読む必要はなかったよなと今になって思うわけだから(と思ったが吉野とは今となっては折り合いがつきそうにも思う)、上位だからどうこうってことはないんだけど、みんなの意見はそれほど大きくは外れない原則に80:20ルールで従っているようには思う)
というよりも着目すべきは、岩波のページには得票数が出ているが、1位のこころは1600票、2位の坊っちゃんが1282票、3位の銀のお匙(やはり嫌いなんだ、おれは)が906票……この数字ってまさに集合知じゃないか? 4位以下の数値は出ていないが、集合知原則にしたがえば、4〜6位が200票より下、7位以下は30票以下で、100位より下には1票獲得した本がずらずらずら並んでいるんだろう。96位のだんごが3票で100位のカエサルが2票とかかも。つまり、みんながお勧めなのは夏目漱石と中勘助ということだ。あとは、みんなではない。
そこで親密さという尺度が生きてくるんだよな、と考えは続く。誰々が選んだ100冊というやつがあり、その誰々と自分の嗜好が一致しているかまたは完全に不一致していれば、そのランキングのほうが、みんなのランキングより意味がある。
逆に、10位より下はばらけているからこそ、濫読するにふさわしい90冊と言えるのだろう。まったく異なる方向の本がばらばらに出てきてるわけだし。
東京バレエ団のくるみ割り人形を観に上野。
夏の眠れる森の美女に引き続きコジョカルとコボーのコンビ。今回のほうが良かったかな。曲のせいかコボーが妙に伸び伸びと踊っている感じで気持ちが良かった。
曲は相当手を入れて短縮していたが、おかげで雪の精のところがまったく退屈しなかった。東京バレエ団のコールドバレエは、全体の動きの構成がうまいのだと思うが、観ていてダイナミックで楽しい。最後のコジョカルとコボーが踊った後の群舞とかどれだけ見劣りするかといえばまったくそんなこともなく、きれいに決まったし。
スペインは出だしで管がしくじってどうなるかと思ったが踊りはきれいに揃っていてうまいものだった(うまくて当然とは言えるけど)。それに対してアラビアは前半動きが妙にずれていて気持ち悪かった。最初は女性が遅れるのかと思ったが、どうも男が早すぎるようだ。トレパークはいきいきと楽しく、中国はぴょんぴょこ。フランスが息が合っていて良い感じ。
金平糖の踊りが妙な振り付けで最初は着地に失敗しているのかと思ったが、そういう振り付けとわかればそれはそれでおもしろい。
それにしてもチャイコフスキーはいいなあ。
きむら(K)さんの日記読んでて、はて、確かにおれも読んだのだが、まったくどこだかわからんぞ、と気になってさがした。
ソースコードのコメントよりも空白行のほうが理解を助けるという研究結果
元のペーパーはRaymond P.L. Buse and Westley R. Weimer: Learning a Metric for Code Readabilityらしいけど、www.computer.orgがDNSで引けないのでまったく読めない。
で、名人がクリーンだとかビューティフルとか言う世界ではなく、いよいよソースコードそのものの読みやすさについて定量的な分析が行われるようになったのだなぁという感慨というか来ちゃったなぁ感というかがある。
次に来るのは、多数が読みやすく書きやすい言語ってものの設計と実装が来るのだろう。(でも、多数の人間ではなく、機械生成しやすいというほうが重要ではないだろうか)
この分野の研究がおもしろいなぁと傍目で感じるのは、自然言語にも適用できるのか? という点だ。
読みやすい日本語、書きやすい日本語、発音しやすい日本語、理解しやすい日本語、というようなものはたぶん、存在する。でも今は違うはず。というのは、アナウンサーはカツゼツの練習を早口言葉でしたりとかっていうのは聞くけど、発音(発声)しやすい日本語をニュースのスクリプターが書くというのは聞かないからだ(もちろん、おれが無知なだけの可能性は高い。NHKとかには、聞いて一発、発音もしやすい、というニューススクリプトラインティング実習とか記者にさせているかも知れないし、もし存在するならそういったノウハウを国語教育にフィードバックして欲しいよな。国営なんだから)
たとえば7・5調というのは発音しやすい(詠みやすい)日本語の探求結果から生まれたと考えられるけど、そういうものを科学として成立させるということだ。
というのは、MSのサポート情報の機械翻訳の質がばりばり向上しているのだが、それは単に翻訳エンジンの質と辞書が向上しただけではなく、翻訳しやすい原文というライティングに関するノウハウの蓄積の結果ではないかと推測しているからだ。まったくおれ個人の印象論だが、むちゃくちゃな翻訳の原文と、それなりの翻訳の原文を比べてみると後者のほうが読みやすい。(観察対象への事前知識が必要――つまり、それなりの翻訳をあらかじめ読んでいるからだという可能性はある)
Clean Code アジャイルソフトウェア達人の技(Robert C. Martin)
リスト5-1を見てみてください。パッケージ宣言、インポート宣言、そしてすべての関数が空行で分けられています。それぞれの空行は、新しい別の概念の開始の合図となるのです。リストを下へとながめるとき、視線は空行に続く行に引きつけられるのです。
これらの空行を、リスト5-2のように取り払うと、コードの読みやすさがかなり低下することがわかるでしょう。
-P.118
こういった本が、書きにくく読みにくいコードが自然に書けてしまう人間工学を無視したかす言語時代の遺物として葬り去られる未来、というのは来るかな? いや、来させるべきじゃないか?
c:\>jrunscript js> var a = [1,2,3] js> for (var x in a) { println(x) } 0 1 2 js> var x = read() >hello js> x hello js> a sun.org.mozilla.javascript.internal.NativeArray@1ff5ea7 js> var x = { 1:32, 'ab':'de' } js> x[1] 32.0 js> x['ab'] de js> x.ab de js> exit();
import javafx.stage.Stage; import javafx.scene.Scene; import javafx.animation.Timeline; import javafx.animation.KeyFrame; import javafx.scene.shape.Line; import javafx.scene.paint.Color; import javafx.animation.Interpolator; import javafx.scene.shape.Circle; import javafx.scene.paint.RadialGradient; import javafx.scene.paint.Stop; /** * @author arton */ var x = 0.0; var y = 0.0; Timeline { repeatCount: Timeline.INDEFINITE keyFrames : [ KeyFrame { time : 10s canSkip : true values : [ x => 300.0 tween Interpolator.LINEAR, y => function() { var rx = x - 150.0; return rx * rx * 0.2 - 0.5 * rx + 70; }() ] } ] }.play(); Stage { title: "Timeline" width: 300 height: 300 scene: Scene { fill: RadialGradient { centerX: 50, centerY: 10 radius: 300 proportional: false stops: [ Stop { offset: 0.0 color: Color.web("#3B8DED") }, Stop { offset: 1.0 color: Color.web("#044EA4") } ] } content: [ Line { startX: 0, startY: 140 endX: 290, endY: 140 strokeWidth: 1 stroke: Color.BLACK } Line { startX: 140, startY: 0 endX: 140, endY: 300 strokeWidth: 1 stroke: Color.BLACK } Circle { centerX: bind x, centerY: bind y radius: 4 fill: Color.YELLOW } ] } }
失業者の多くが仕事に就くことに抵抗する理由は、それらの政策が能力主義的な観点からみて不公平であることを、かれらがきわめて現実的に感じ取っているためである。
P.471
それらの政策というのは、非正規雇用市場を作ること、クリントンやブレアの政策のこと。1999年にそのような政策の問題点は指摘されていたということだ。
ガルブレイスの言葉が続く章で引用されている。
ドアマンや家政婦のような、もともと敬遠されがちな仕事や、他人から直接命令される仕事をはじめ、さまざまな骨の折れる仕事――道路清掃やゴミ収集、用務員、エレベーター操作手、など――である。それらはいずれも社会的な地位が低い仕事とみなされている。
このような、退屈で苦しく、社会的に評価されない仕事と、喜びをもたらし、社会的に評価され、経済的に高い報酬を得られる仕事にたいして、同じ「仕事」という言葉を用いるのは、近代の大きな錯覚であるどころか、ペテンでさえある。
ペテンといえば、職業に貴賎なしという空疎なお題目をすぐ思い浮かべるわけだ。
というわけで読了。
排除型社会―後期近代における犯罪・雇用・差異(ジョック ヤング)
打ち間違えを発見。
というのも、<逸脱的他者>をつく「り」だし、うまくかれらを悪魔に仕立て上げ、社会病理をかれらの責任にして、「正常」な人々に存在論的な安定を与えなければならないような理由は、後期近代になってますますなくなってきたからである。
P.498
なくなってきても、ひっぱりだす人たちがいるのは、基盤が変わらないからだということだ。変わらないのは変える気がないからだからだが、少しは変化もないわけでもなく、この先どうなるかいろいろな面から楽しみだ。
次はこれか。
・jnlpの修正やコピーを忘れると、常にぐるぐる回るgifが送られてきて何が何やら状態になる。そこは慣れだろうけど。というわけで、インストレーション重要。
・アプレットの作成という点については、これは圧倒的に楽だ。
・JavaScriptと同じ形式のオブジェクト定義式は簡潔で好き。
・移動はTimelineを使うことで手軽に扱える。Timeline上で変化を指定した値を描画オブジェクトの属性に束縛(bind)するだけで済む。
・とは言ってもデザイン心がないとだめだよな。
・ところどころ型指定が必要でめんどうだが、IDE(NetBeans)による候補の絞込みの必然性からはしょうがないかも。確かにNetBeansは必要(WYSIWYGだし)
ユーロスペースで、カネフスキーのひとりで生きる。ロシュフォールの恋人と並ぶ、おれのベストシネマ。でもヴィデオで3桁回数以上観ているロシュフォールと違って、ひとりで生きるを観るのは今回が2度目に過ぎない。
記憶違い:
・人狼が輪を描くシーンはワーリャとの別れの後。
・関連して中だるみがあったような記憶があったが完全に間違い。人狼でうとうとしたので時間感覚を間違えていたようだ。
・スターリンを山本が殺そうとしたエピソードは動くな死ね甦れではなく、こちら。
・最後、線路の向こうに歩いていくのはワーシャではなく謎の退役軍人。
・女の子が落ちたぞーという船外放送があったと思い込んでいたが、単に人が落ちたという通信が港湾事務所に入るだけ。
・ワーリャは髪の毛が短くなっている。(学校の校長室でのエピソードから、放校させられたのではないかとかいろいろ語られない部分が多い)
・鳥は放した瞬間に海へ沈む。
・ワーリャはしつこく鳥を放せと念を押す。
・脚のナイフの説明は唯一の回想。
・不良のたまり場のお尻は男じゃなく校長室に連れてこられた女の子。
・ネズミ花火のエピソード。爆発(は辛うじて覚えていた)の衝撃で意識が吹っ飛び、そのままスターリンの銅像の下でのホラー映画になる。
・ホラー映画は赤ん坊、女性っぽい影、なぞの生き物(たぶん食い物になったマーシャ)の上から跳ね上がるワーリャ。変化した最後の女の子は誰だろう。金髪。
・犬を探す東洋系は山本ではない。と思う。
・山本は鉛筆でメモを書かない。何か書いて渡すという記憶となっていた。
・ワーリャの手紙は途中までしか読んでいない。しかも火傷治療の小便にまみれて見捨てられたままとなる。
・船の中で鳥が家に入るのは不吉だという女の子は見知らぬ子。ワーシャが鳥を捕まえている情景はなく、捕まえて手に持っている状態で女の子に渡す。
・ナイフで刺される直前のデートの相手は、転がりこんだ家の娘ではない。
・豚の名前はマーシャ。心臓の位置を間違えたため、なかなか死なない。
・ワーリャとのせりふは、「100万分の1とかの幸運な星のはずなのに、そうとは思えない」……「愚かな娘だと思う?(というか忘れてるじゃん)」それにしても斧を持ったワーニャの母親から逃げ出して朝を迎えるまでの、この前後のシーンは映画が到達したもっとも美しい愛の情景だと思う。
・学校の階段のところで、廊下の奥のほうへ進もうとするワーシャに、ワーリャは自分のことを守護天使だと言う。
・ワーリャは薪を肩にかけて運んでいると後ろから担いでやるが、そのまま前に押しやってワーシャの背中にぶつけて転ばせる。
・ワーシャは駅員から逃げて遠くへ走っていくので列車に乗ったかどうかはわからない。列車のシーンはそのまま投げ捨てられた大きなつづらから、どうも夫にだまされて全財産を持ち逃げされて肌着だけで捨てられた奥さんのエピソードに変わる。
・風船は、マルクスエンゲルスレーニンスターリンの4人組
・最初は左から山本が馬を連れてくるところを巻き戻して、正面から来るように変える(すでに印象が薄れている)
・風船のところで鼻血を出して倒れているところにワーリャのアップ。で最後の最後で唾を吐かれる。
・学校の舞踏会でジプシーダンスを披露する男は不良側ではなく単なる町のおじさん(たぶん)
・感染症の焼き鏝治療で悲鳴をあげているのは母親なのか。な?
・ワーリャの母親は包丁を振り回して追いかけてくる。
・どこかで包帯を巻いたガーリャとしてワーリャが映るシーンがあった。
・煙の多用。
・サーシャ(という名前のような気がするがパンをもらう相手)が袋叩きにあうのは造船所の宿舎のようだ。
・犬がつながれた杭の回りをぐるぐるするのは、モスクワ行きの直前。完全にワーシャの状態を示している。
悪意があるわけではないのだが、何気なくあるいは良かれと思ってすることがすべて他人に対しては悪意のある行為と思われて、どこにも居場所がなくなり、最後には守護天使に対して決定的な裏切りを行い(でも待てよ。ワーニャが「あの時からよ」と言うけど、そのあの時というのはどのあの時なんだろうか。ガーリャを殺したギャングに話かけていたときなのか、なんか見過ごしてしまったかも)無くした下向き三角形とともに消えていく(海を泳ぎ、たぶん、再び陸へ上がるところで終わっているのかとか)でもどこかでしぶとく生きていく(で3作目で監獄の中のドキュメンタリーという予定調和としか思えないわけだが)、この映画がどうして心を打つのかと言えば、そこに描かれた情景のうまさということになる。
映画は光と影と音の情景をつないだものだが、カネフスキーの2つの映画が特別なのは、ひとつひとつの情景の的確さと、その情景と情景の距離の大きさが(そこは観客が埋めるしかない)、物語的(叙事的な)刺激と感覚的(叙情的な)刺激を過度に高めるからなのだろう。だから観終わった後に残るのは非常にいやな、救われなさと、気持ちのよい、美しいものを観た後の幸福感の両方だ。
映画館の窓口にDVDボックスが発売されるとか書いてあったが、出たらすぐ買うこと。観ていて気づいたが、この映画はいくつかの点でコードを外れていることにされかねない。
今まさにそんな問題にぶつかってて、prototypeとjQueryとか自作とかをくっ付けて1includeにしようとしてるわけだが、帯域は問題ではなくコネクションそのものが問題となる(サーバにもあるけど、むしろルータの設定とか)ことはあるんだよな。
と、スラドの的はずれなやり取りを眺めて思った。
でも#1678949が出てきて一安心(なぜだか)。
ジェズイットを見習え |
_ ムムリク [マジシャンを連想してしまったわたしです。]
_ arton [僕も思いました(最初子供が言い出した時、テレビにでも出ているのかと思った)。狙った芸名なんですかねぇ。]