月別アーカイブ: 2007年4月

カーペンターズ『青春の輝き』

先日NHKでカーペンターズのドキュメンタリー番組が放送されていたが、彼らの有名なヒット曲の中で唯一弾き語りしたことのなかった「I Need to be in Love」(邦題『青春の輝き』)を、ふとどうしても覚えたくなって、迷わずYouTubeで検索してみた。こういうときにYouTubeは強力な道具になる。カーペンターズ - Carpenters: Gold - Greatest Hits - I Need to Be in Love
期待どおり、本人たちが歌唱する歌詞の字幕つきライブ版と、プロモーションビデオ版が見つかり、歌詞は別のWebサイトから入手してMS-Wordで行間をたっぷりとって印刷し、メロディーを聴きながら、行間の余白にギターをつかって伴奏のための和音を自分でつけていく。
我流なので自信はないが、メジャー7thやディミニッシュコードが多様された優雅なコード進行で、カーペンターズ作品のメロディーの美しさにはいつもながら鳥肌が立つ。
歌詞も素晴らしい。文字どおりには、理想を追い求めすぎた過去の恋愛を悔やむ内容だが、過度の完全主義を自省する、より普遍的な解釈もできそうなので、思わず替え歌を作りたくなる。言うまでもなくもっとも美しい部分は次の一行だ。
I know I ask perfection for a quite imperfect world
And fool enough to think that’s what I’ll find
Youtubeでカーペンターズの他の曲、「Close to You」「Rainy Days and Mondays」などを検索して観るうちに、偶然、関連する動画一覧にREO Speedwagonが現れ、そこから1980年代に熱中していたBillboardヒットチャートに脱線してしまった。
そこでふと思い浮かんだ名前がTracy Ullmanだ。「They Don’t Know」のプロモーションビデオを20年以上ぶりに観て、そういう意味だったのかと今さらながら納得した。所帯じみた主婦が1960年代の若かりし頃を振り返る内容だったのだ。中学生の頃の僕はまったく理解していなかった。
さらに脱線して、1980年代後半に放送されていたらしい「Tracy Ullman Show」で、彼女が主役を演じるコントもいくつか観ることができた。英語を完全に聴き取れないのが残念だったが、エキセントリックな女性キャラを演じさせると一級のコメディアンであることが確認できた。
そうするちにふとStrawberry Switchbladeの名前を思い出して検索し、プロモーションビデオを観たのだが、ゴシックロリータ・ファッションの原点はもしかすると彼女たちなのではないかと思った。
そんな風に、YouTubeの著作権違反動画を観つつ、無為に過ごす黄金週間である。

ヴォネガット『チャンピオンたちの朝食』

先日、米国の小説家カート・ヴォネガット氏が亡くなったのにちなんで、勝手にヴォネガット追悼週間ということで、近所の図書館にあった唯一の文庫本『チャンピオンたちの朝食』を読んだ。訳は当然のことながら浅倉久志氏。
浅倉氏による日本語訳が出ているのは1984年だが、原書は1973年の出版、訳者あとがきによればヴォネガット氏が『スローターハウス5』の次に完成させた作品ということらしい。
題名から主人公がボクシング選手だと想像する方もいらっしゃるかもしれないが、題名と小説の内容はほとんど無関係。スタイルとしては短い断片と百以上の筆者自身によるイラストからなるメタフィクションで、著者自身が「わたし」として登場する。
1970年代米国の拝金主義、環境破壊、根強く残る人種差別などを軽妙な文体で執拗に批判しつつ、主役、脇役にかかわらず、さまざまな登場人物が平等なディテールで描かれ、物語らしい物語もないまま、はちゃめちゃなクライマックスに向かっていくといった感じの小説。
あえて人道主義的な人間観を相対化して、機能主義的な人間観を通低させている点は、同時代のフランスのポストモダン哲学と共鳴するところがあるように思える。
その意味で、米国で完全に異端あつかいされてしかるべき、ヨーロッパ的な世界観のはずなのだが、米国では出版当時、絶賛と激しい批判が同時に巻き起こったらしい。この作品が絶賛されるという点に、息苦しい日本社会とは違う、米国的自由の本質を垣間見るような気がする。
ヴォネガット特有の悲観主義と皮肉っぽさを楽しめる人にとっては、麻薬的な魅力をもつけれども、何のことだかさっぱりわからない人にはわからないといった性質の小説。高橋源一郎の小説の愛好家なら文句なしに楽しめる作品。
土曜日の朝、NHKFMラジオでピーター・バラカンの番組を愛聴している日本人と、ヴォネガットの愛読者である日本人は、かなり重複しているのではないかと勝手に想像する。
ただ、初めてヴォネガット作品を読む人にとって、おすすめできる作品ではないかもしれない。やはり『スローターハウス5』か『母なる夜』(昔は白水社の新書でも読めたが、今でも読めるのだろうか)をおすすめしたい。

壁のスイッチに関する合理的な判断

明日、何かうれしいことが起こるとして、それが今までの人生でいちばんうれしかったことよりもうれしい確率をHとしよう。明日、何かイヤなことが起こるとして、それが今までの人生でいちばんイヤだったことよりもイヤな確率をSとしよう(ちなみにSはShit!の頭文字)。
四捨五入すると40歳であるこの年齢を前提とした場合、H<Sとなることはほぼ議論の余地がない。僕がまだ十代であれば、H>Sだと自信をもって言うこともできただろうが、四捨五入して40歳という年齢は、自分が死ぬまでにどれくらいのことしか出来そうにないか、ほぼ予想がつく年齢である。
例えば僕は今からプロのピアニストになることはできない。フランス現代思想の研究者として准教授の座につくこともできない。そうなる前にホームレスになるのがオチだ。
H<Sとなることがほぼ議論の余地がないのであれば、いったい明日という日は何のために存在するのだろうか。前にも書いたかもしれないが、もし自分の部屋の壁にスイッチがあって、それを切ると何の苦痛もなく自分の人生が終わるのだとすれば、僕は迷わずそのスイッチを切るだろう。残念なことに世の中にそんな便利なスイッチは存在しないが。
このように書くと、頭がからっぽな人は、すぐに僕のことを慢性のうつ病あつかいしたくなるだろうが、残念ながら僕は絶望しているわけでもないし、何事にもやる気が出ないわけでもない。毎日をそこそこゆかいに暮らしている。
にもかかわらず、そういうスイッチがあれば迷わず切るのだ。H<Sとなることに議論の余地がないのだから、そういうスイッチがあれば切る、というのは極めて合理的な行動だ。つまり、僕は単に合理的なだけであって、うつ病でもないし、絶望しているわけでもないのである。
このような僕の考え方を、おかしいと思う人たちは、あまりに能天気すぎて、人間だけに与えられた知性を自ら放棄した人たちである。

「根回しのワナ」

サラリーマン社会には「根回しのワナ」というものがあるが、あまり知られていない。いったん根回しや調整をしなければ仕事ができないという仕事のスタイルを身につけてしまったが最後、どんどん根回しの深みにはまっていく、という現象のことだ。
日本のサラリーマン社会では、「周到な根回し」という非生産的な労働に時間を割けば割くほど、能力がなくても出世できるという経験的な法則性がある。しかし、根回しによって出世したサラリーマンは、出世すればするほど、課される仕事が大きくなるため、さらに高度な根回しが要求される。
そこで、さらに高度な根回しに奔走すると、さらに出世して、退職するか生活習慣病で死ぬか、燃え尽き症候群で自殺するまで、根回しから逃れられないサラリーマン生活を送ることになるのだ。
この「根回しのワナ」、またの名を「根回し地獄」から逃れる方法は比較的かんたんである。まず際限ない出世をあきらめ、そこそこの生活ができる程度の地位で足るを知り、社畜としての人生とは決別し、人間らしい生活を送る決断をすることである。
そして、周囲から「あいつはぶしつけなヤツだ」「気を遣うということを知らないやつだ」と思われようが、そんなことにこだわる方がせせこましい生き方であると無言で開き直って、自分の仕事に真面目に取り組めばよい。
そうすれば会社に対して少なくとも損害を与えることはないので、解雇されることはまずない。同時に人間らしい生活が送れる。
最もバカげているのは、根回しや調整、周囲への気遣いといった非生産的な労働に疑問さえ抱かず、それらをサラリーマンとして当然の仕事、もっと言えば、それらこそがサラリーマンの仕事の真髄だと思い込むことである。

クエリーベース配布リストを使い倒す

Microsoft Exchange 2003 Serverを使い込んでいると、いろいろと面白い発見がある。その一つが「クエリーベースの配布グループ」である。
Exchange 2003 ServerをインストールしたWindowsサーバ上でActive Directory管理ツールを起動すると、通常のActive Directory構成のWindowsサーバでは作成できない「クエリーベースの配布グループ」というものを作成できる。
通常はユーザを一人ずつ固定で指定するメーリングリスト(Windows用語では「セキュリティグループ」または「配布グループ」)しか作成できないのだが、Exchange 2003 Serverが導入されているサーバ上のActive Directory管理ツールでは、GUIを使ってユーザを動的に抽出してメンバーにしたメーリングリストが作成できるようになるのだ。
ユーザを抽出する条件としてはユーザのプロパティなら何でも使える。例えばユーザのプロパティの「説明」欄に所属部署を入力しておいて、部署別の同報通知用メーリングリストを「クエリーベースの配布グループ」として作成したりできる。
このようにすると、新入社員はActive Directoryにユーザ登録して、説明欄に所属部署を入力するだけで、自動的に該当の部署のメーリングリストに追加される。ユーザ登録とメーリングリストのメンバーを管理する二度手間がなくなるわけだ。これがクエリーベースの配布リストの便利な点である。
ここまではExchange 2003 Server以降をお使いの方なら誰でもご存知だろうか、ここからが本題である。
Active Directory管理ツールのGUIからクエリーベースの配布リストを作成する場合、抽出条件として複数の条件を指定するとき、AND条件にしかならないという制限がある。
例えば、電子部品事業部の所属で、かつ、東京事業所勤務のユーザという具合に、抽出条件をAND条件として、どんどん絞り込んでいくことはできても、経理部所属のユーザ、または、人事部所属のユーザという具合に、抽出条件をOR条件にして、どんどん人数を増やしていくことができないのだ。
しかし内部的にクエリベースの配布リストがユーザを抽出するときに使っているのは、LDAPフィルタ文字列である。LDAPフィルタ文字列とは、LDAPに対してさまざまなオブジェクトを問い合わせるために使う文字列で、関係データベースでいうSQL文に相当するものだ。
LDAPフィルタの文法は次のようなものだ。「AかつB」は「(&(A)(B))」と表現する。「AかつBかつC」は「(&(A)(B)(C))」となる。「AまたはC」は「(|(A)(B))」となる。「Aかつ(BまたはC)」なら「(&(A)(|(B)(C)))」だ。否定の場合は「!」を使うので、「Aではない」は「(!(A))」と表現される。
Active Directory内からユーザを抽出したいとき、オブジェクトカテゴリは「user」なので、まず「(objectCategory=user)」という条件が必要だ。次に説明欄が「経理部」という条件は「(description=経理部)」となる。文字列の部分一致検索をしたければ「(description=*経理部*)」、前方一致なら「(description=経理部*)」、後方一致なら「(description=*経理部)」でよい。
経理部ユーザと人事部ユーザ全員を抽出したければ「(&(objectCategory=user)(|(description=経理部)(description=人事部)))」となる。じっさいにVBScriptでユーザを抽出したければ下記のようになる。
Set oConn = CreateObject(“ADODB.Connection”)
Set oCommand = CreateObject(“ADODB.Command”)
oConn.Provider = “ADsDSOObject”
oConn.Open “Active Directory Provider”
Set oCommand.ActiveConnection = oConn
oCommand.CommandText = _
“<LDAP://dc=yourcompany,dc=co,dc=jp>;(&(objectCategory=user)(|(description=経理部)(description=人事部)));cn”
Set oRS = objCommand.Execute
後は最後のADODB.Recordsetオブジェクトを最初から最後までループさせてoRs.Fields(“cn”).Valueを読み取れば、抽出結果のユーザの共通名(common name)を列挙できる。ちなみにこの事例は、あなたの会社のActive Directoryドメイン名が「yourcompany.co.jp」と前提している。それが「LDAP://dc=yourcompany,dc=co,dc=jp」という部分である。
そしてここからが今回のハイライトである。なんとGUIではAND条件しか指定できないクエリーベースの配布リストも、その「msExchDynamicDLFilter」という名称のプロパティにLDAPフィルタ文字列を直接書き込んでやると、どんな条件でも自由に設定できてしまうのだ。
まず該当のクエリーベース配布リストのオブジェクトを取得する。そのクエリーベース配布リストが「メーリングリスト」という名称のOU内にあるとしよう。
Set oGroup = GetObject(“LDAP://cn=経理人事メーリングリスト,ou=メーリングリスト,dc=yourcompany,dc=co,dc=jp”)
そして、このオブジェクトのmsExchDynamicDLFilterプロパティに、好きなだけ複雑なLDAPフィルタ文字列を設定し、保存すればよい。
oGroup.Put “msExchDynamicDLFilter”, “(&(objectCategory=user)(|(description=経理部)(description=人事部)))”
oGroup.SetInfo
以上である。このクエリーベース配布リストをActive Directory管理ツールから開くと、既に抽出条件はGUIから変更できなくなっているが、抽出結果のユーザ一覧を見ると、フィルタが正常に機能していることがわかる。
スクリプトでしか抽出条件を変更できない点は不便だが、AND条件、OR条件、NOT条件をいかようにでも複雑に組み合わせられることを考えれば、かなり使える発見だと思う。これを知らないまま、クエリーベース配布リストは実用に耐えないと思っている企業ユーザは、意外に多そうな気がする。