Archive for February, 2007

堀晃『バビロニア・ウェーブ』

Posted by 向井 淳 on Wednesday, 28 February, 2007

東京創元社が国内SFを文庫でいろいろ出すという方針を打ち出したらしい。その初回配本がこの『バビロニア・ウェーブ』と、銀英伝。銀英伝はまあ、たぶんほっといても買う人がいるだろうから、せいぜい出版社を潤してほしい。そうして、こういう本もいっしょにばんばん出してほしいもんだ。

さて。

太陽系からわずか3光日の距離に、奇妙な電波障害が観測される。くわしい調査を進めた結果、それは直径1200万km、全長5380光年のレーザ光束だということがわかる。反射鏡をさしいれれば、ほとんど無尽蔵なエネルギーを人類にもたらす。このバビロニア・ウェーブで、極秘の科学プロジェクトが進行していた……というのがおおざっぱな粗筋。というか基本設定。

粗筋はわりとどうでもいいのだ。

SF作品の魅力というのは多面的だが、その面のひとつに間違いなく「途方もなさ」というのがある。途方もないものを描くこと。描かれた描写から想像の翼をはばたかせて、途方もない世界像を脳内に再構築することの楽しみ。

リングワールドからの風景に魅了されたファンもいたろう。ソラリスの海の理解不能性に思いを馳せた者もいるだろう。そういった「古典」だけでなく、イーガンの「ルミナス」や『ディアスポラ』の、ある意味で「想像を絶した」描写に圧倒される人もいるにちがいない。それがSFの魅力のすべてではないとしても、重要な要素のひとつだ。

『バビロニア・ウェーブ』というのは、ようするにこの「途方もなさ」の魅力だけで成り立っている作品である。

上に挙げたバビロニア・ウェーブの巨大さもそうだが、これは序の口。バビロニア・ウェーブの奇妙な性質に関する説明や、外からの描写(レーザなので見えない)。第二仮説。そして最後に提示される宇宙観。どれもこれも途轍もなく、そして魅力的だ。

登場人物は少なく、筆致は淡々としているから、そういうところが気になる人にはおすすめしない。しかし、言わせてもらえば、そうであるからこそ、この作品はバビロニア・ウェーブとそれにまつわる諸々の、途方もない魅力に横溢した作品となれたのだろう。


今年のスーパーヒーロータイム

Posted by 向井 淳 on Sunday, 25 February, 2007

獣拳戦隊ゲキレンジャー

「獣拳に相対する二つの流派あり……」というあたり、なんかちゃんとした正義と悪ではなく内部抗争くさい雰囲気があるのがなぁと思っていたが、案外と敵はふつうに悪役だった。こんなちゃんとした悪の組織は久々かも……いやマジがあったか。

それにしても主人公側は激獣タイガー拳だのジャガー拳だのチーター拳だのレオパルド拳だの、そんなにキミらは OSX が好きなのかね!?(単に猫科の猛獣っていうコンセプトがかぶっているだけです) きっと夏頃に出てくる新キャラはパンサー拳の使い手に違いない。ピューマ拳かもしらんが。

変身後のマスクの口の部分が微妙にネコっぽい造形になっていて、ニャンだかギャグっぽくて力が抜ける。あと役者の演技が(戦隊モノだというエクスキューズを抜きにしても)ちょっと寒い気がするなあ。

三体合体で、胴体+脚ふたつ、という構成は戦隊としては珍しい。サンバルカン以来? ガオレンジャーから、両手を換装してナントカ武装、というパワーアップを多用するようになって、そうするとメインキャラのメカが外れちゃうのはどうかなあとずっと思っていたので、いっそこのようにしたのだろうか。

それより、巨大ロボ戦になったとたんにプロレスっぽい実況がはじまるとは思わなかった。あれには噴いた。

どーでもいいトリビア。「アニソンの帝王」とまで言われる水木一郎が、スーパー戦隊シリーズでオープニング/エンディングを歌ったのは今回が初。

仮面ライダー電王

事前情報ではデザインのあまりのカッコ悪さ、時間モノという子供向けには難しいテーマに危惧していたけど、これが案外面白い。

人間とは恐しいもので、そもそも事前に見たデザインのダサさにうえっとなってしまうのだけど、1年もすると慣れていき、むしろカッコ良く見えてくる。コレもそうだろう。まぁ後頭部から桃がズリ落ちてきてパカッと割れて両目になるという変身シークエンスには慣れそうにないが……。

主人公にもイマジンというゴーストみたいなのが乗り移って、それがパワーの源となるという設定で(ついでに憑依するやつが増えることでいろんなパワーを身につけるという設定)、もちろん変身時もそうなのだが、生身のときにも時折、そいつらが乗り移って行動するというのが面白い。憑依のたびに服装と髪型がいきなり変化して(笑)、演技のときは声だけイマジンの声のひとがアテレコをするというヘンな演出がおかしい。

時間ものとしては、過去のある時点であるモノ(たとえば橋とか)がブッ壊されると、現在のその場所のそのモノがいきなり消えるというスゴイ描写などはどうかと思うけど、まあいいかと。「時の運行を守る」とかいいうわりに主人公たちもむしろ歴史に積極的に介在して時の運行を混乱させているように見えるのだが、その辺の疑問点はきっと物語の展開上、何らかの伏線に違いない、と期待をしておく。なんせあの(タイムレンジャー、龍騎の)小林靖子がメインライターだし。いや、期待してますよホント……。


きのうのzshの補足というかなんというか

Posted by 向井 淳 on Sunday, 25 February, 2007

そういえばわたしの知り合いの人は |ruby ではなくて |ruby -rnkf -ne を R に割り当てているらしい。小さい差といえばそうだが……。

グローバルエイリアスの応用法として、 jijixiさんの日記にまえに書き込んだんだけど、knuさんのこの方式は意外と知られていないように思うので(わたしもこの日記をみてはじめて気付いた)、そういう人は見てみるといいと思います。もっとも、わたしはさすがにこれは実践していない。さいきん find も使ってないというか、省きたいときは grep -v してしまうことが多くなったしなー。

というわけで、一昨日のアレは意外と好評だったみたいなので、ちょっと調子に乗ってみました。やっぱあれだな、適度に長くて一見役に立ちそうに見える文章は「あとで読む」クリップが大量につくのだなあ。

そうそう補足といえば、わたしは j のほかにも「よく使うコマンド」の短縮を用意している。たとえば、

alias kz=’kazehakase’ alias wl=’emacs -f wl’ alias less=’lv’

とかそんなの。最後のは違うか。どうもつい指が less と打鍵してしまうので、あるとき嫌になってこうしてしまったですよ。

こういうエイリアスの設定は、べつにzshに限ったことではないと思うのだけど、やってるひとってどんだけいるのかな。


武富智の『EVIL HEART』に続きが出るとは

Posted by 向井 淳 on Sunday, 25 February, 2007

いや知らなかったので驚きました。

『EVIL HEART』は週刊ヤングジャンプに連載されていた合気道まんがだ。作者の武富智は、思春期の「繊細な心を持った」少年少女を描いたまんがを得意とする。代表作は、これのほかだと……『キャラメラ』か?

『EVIL HEART』も出だしはそんな感じ。主人公・正木梅夫(ウメ)の家は家庭内暴力に荒れていた。兄の暴力に耐えきれなくなり、ついに母親は兄をナイフで刺してしまう。兄は病院へ、母親は警察につかまって、ウメは姉とふたりでかりそめの平和な日々。そして中学校に上がったウメは、しかしさっそく上級生にからまれケンカになる。家庭の事情もクラスメイトに知られ、避けられるようになる。

そんななか、ウメはたまさか見かけた合気道の練習風景に魅せられる。武術か何かを身につけてケンカ相手や兄を叩きのめしたいと、そのなかにいた英語科教師のダニエル先生に教えを乞い、合気道を学びはじめる。

でも合気道って、自分からは攻撃をしないのかよ! ガーン。

……みたいなところでだいたい1巻の半分くらい。

いわゆる「キレる少年」「粗暴な暴力少年」といったある意味わかりやすい造形の主人公や、その主人公が残す周囲との軋轢は、「合気道は自ら攻撃をしない」というテーマと、たぶん読む前にぼくらが想像するよりずっとうまくマッチしていて、少年の成長物語として完成されている面白いまんがのひとつだった。

ただ、ヤングジャンプという雑誌から見ると、絵柄としても、こういうテーマにしても、ちょっと他と違いすぎていて「どうなのかなあ大丈夫かなあ」と思いながら読んでいたのだけど、けっきょく単行本3冊半ほど続いて、連載終了。打ち切り、という見方もできるけれど、最低限ここまで描きたいと作者が思ったところまではなんとか描かせてもらって終えられたんだと思っていた。この連載分は、単行本3冊で「力編」「技編」「心編」という副題がついて、もうだいぶ前に出ている(ちなみに「心編」だけ不自然に厚いのはたぶん、むりやりつめ込んだからだろう)。

でまあちょっと性急かもしれないけど終わりましたねーと思ってたんですが続きが出るもんですねー。

今回の「氣編」はダニエル先生が主人公。というか、ウメの側の物語はひとまず終息してしまったので、もちろんまだまだ積み残しはあるとしても意外と描きにくいのだろう。ダニエル先生が夏休みでカナダに帰郷、いろいろあってウメがそれにくっついてって、それで過去話がいろいろあるという構成。

正直に言うと、なんだろう、外伝というか、蛇足というか、いやいや面白いんですよ!?というか、続きが読めて純粋に嬉しいの半分、でも外伝なんでどうしたもんかと困るの半分……。

うん、面白いんですよ。「3巻まで読んだけど面白かった!」という人には大おすすめ。でもそうでない人には小おすすめ。いや、いいんですが。うん。


それにしても目が痒い

Posted by 向井 淳 on Saturday, 24 February, 2007

ふと前にどこかで見たネタの応用

わたしの症状はとにかく目が痒い。くしゃみとかも出るけどふつうに我慢できるレベルだが、目だけはどうにもならん。

今年は先々週くらいから気配を感じ、先週にはもう間違いないくらいだったけど、先週末から今週頭にかけては雨だったのでひとやすみ、といった風情だったんだけど……。


S・ウェバー『オープンソースの成功』

Posted by 向井 淳 on Saturday, 24 February, 2007

[amazon]

そういえば読んでたが紹介していなかったな。

副題は「政治学者が分析するコミュニティの可能性」というもの。内容は、大雑把なUNIX/FOSSコミュニティがどのように形成されてきたかという歴史をふりかえるのと、それに対して分析を試みるのの二部構成だと思ってもらえればそう大きな間違いはない。

ただ、歴史の部分はわりとよく書けていると思うのだけど、分析の部分は、ページ数もそれほど多くない上に、論も浅いという印象を受けた。この本の意図はおそらく、「バザールモデル」という単語から類推されるようにオープンソースソフトウェアの開発はフラットで対等な開発者たちの協調作業のように思われがちだけれどもそれは違う、というところに力点があると思われる。そこで「優しい独裁者モデル(Linux)」や「委員会管理方式(BSDやApache)」などの紹介が行なわれ、どのようにしてこういう形式が成立していったのか、といったことが多い。

うーん、でもまあ、それくらい知ってるしなあ。

というわけで、わたしはあんまり想定読者じゃなかったようだ。オビにも書いてあるように「現代のオープンソースコミュニティは、洗練された方法で組織化を行っている。これを明らかにできれば、他分野でも活用可能になるはずだ」と筆者は主張している。ただ。この本はそのためのとっかかりであって、他分野への応用についての具体的な話はさしてないといっていい。

本全体が、今後これから議論を深めるための土台みたいなものなので、これだけでは(わたしは)食いたりないなーと思ったのだった。次はもっと面白い本になるだろう……と、期待したい。

それから、これだけは書いておきたいが、校正の質が悪い。本書は縦書きの本だが、90度回転したいわゆる半角で書かれた単語と直立したいわゆる全角で書かれた単語が混在している、なんてのはまだ可愛い方で、ハイフンが90度回転してバーになっていたのはどうしようかと思った。CSRGが途中からSCRGになってたし。ちょっと気になるレベルだった。


zsh設定の一部を晒す

Posted by 向井 淳 on Friday, 23 February, 2007

漢のzsh』の連載開始はひとまずめでたい。それの需要をあてこんで、わたしの設定の一部を衆目に晒し、解説を試みる。機能を知ったり、手元のzshを調整する際の参考になれば幸い。

まずオプションだ。オプションはいっぱいある。zshoptions(1) はわたしが昔、翻訳したものがあるので興味のある人は参照のこと。

unsetopt NO_GLOB MAIL_WARNING setopt ALWAYS_TO_END setopt APPEND_HISTORY setopt AUTO_CD setopt AUTO_LIST setopt AUTO_MENU setopt AUTO_PARAM_KEYS setopt AUTO_PARAM_SLASH setopt AUTO_PUSHD setopt AUTO_REMOVE_SLASH setopt COMPLETE_IN_WORD setopt CORRECT setopt CORRECT_ALL setopt EXTENDED_GLOB setopt EXTENDED_HISTORY setopt GLOB_COMPLETE setopt GLOB_DOTS setopt HIST_IGNORE_DUPS setopt HIST_IGNORE_SPACE setopt IGNORE_EOF setopt INTERACTIVE_COMMENTS setopt LIST_TYPES setopt LONG_LIST_JOBS setopt MAGIC_EQUAL_SUBST setopt SHARE_HISTORY setopt SUN_KEYBOARD_HACK setopt PUSHD_IGNORE_DUPS setopt ZLE

まぁ、正直なところ、なんでやってるんだか忘れているものも多いんだが……。

まず何はなくても AUTO_PUSHD だ。最近の人は pushd を知らないかもしれない。たいていのシェルにはディレクトリをスタックとして保持する機能がある。 pushd コマンドは cd コマンドのようにカレントディレクトリを移動させるが、移動前のディレクトリをスタックに push する。 popd コマンドというものもあり、これはディレクトリスタックを取り出して、そのディレクトリに移動する。いくつかのディレクトリを行き来するときに便利だ。でも pushd とかいちいち打たないでしょ。手が cd って覚えているからね。でも AUTO_PUSHD しておくと cd コマンドが pushd 扱いになる。わたしは

alias pd=popd

としていて、popdも手軽にできるようにしている。なお、 PUSHD_IGNORE_DUPS とすれば、ディレクトリスタックに push しようとしたとき、スタックを探査して重複があれば重複の方を消してから push する。これは好き好きだろう。

HIST_IGNORE_DUPS。同じくヒストリから重複を除く……のではなく、実行したコマンドが直近のヒストリと同じときにはヒストリに加えない。ほら、よくあるでしょ。gccを実行してみたら何やらエラーが出て、しかたないからデバッグしながら何度も同じコマンドを実行して、それから改めてコマンドを実行しようとしたらヒストリの闇のなか、みたいなのが(おれだ)。ああいうムダっぽい重複を省くのがこれだ。

HIST_IGNORE_SPACE がオンになっているとき、コマンドの先頭に空白を入れて実行するとヒストリに入らない。zshユーザにはヒストリをムダに思えるほど長くする者が多いが、そういうとき、ちょっとファイルとして保存されると困るようなコマンドはこれを使う。ただし、実行直後のプロンプトからは見えている。なぜかというと、「先頭に空白を入れて無視させようとしたコマンド」にtypoやミスがあったときには気軽に修正したいのが人間の常だからだ。そんなところにも気が効いている。

SHARE_HISTORY によって zsh は複数のコマンド間でヒストリを共有できる。仕組みとしては単純で、頻繁にヒストリファイルを読み直し、あるいはすぐにヒストリを書き込む。仕組みとしては単純だが、ヒストリファイルによって共有するのには利点もあって、HOMEさえ共有していればほかのマシンででもヒストリを共有できる。

あと、ちょっと目立つのは SUN_KEYBOARD_HACKS か。誤解されないように書いておくと、おれは SUN のキーボードは使ってない。

>

行がバッククォートで終端し、この行に奇数個のバッククォートがあるとき、末尾のバッククォートを無視する。このオプションは、リターンキーがとても小さくて、バッククォートのキーがリターンのすぐ近くにあるようなキーボードで便利である。

……そういうオプションだ。でもまぁ、これは昔追加しただけで今はあまり意味ないかも。

ちなみに、 zsh には typo を推定する機能があるが、これはキーボードレイアウトに依存している。aの隣がsやzやqやwだということをzshは知っていて、その情報を誤り訂正に使っている。わたしは使っていないから関係ないが、 DVORAK 配列を使っている人は zsh のオプションに DVORAK を指定するといい。

次。プロンプト。

PROMPTTTY=`tty | sed -e 's/^\/dev\///'` PROMPT="[%B${cyan}%~${default}%b] <%B${PROMPTTTY}%b> %E %b%# " if [ `whoami` = root ]; then RPROMPT="${red}%B%n${default}%b@${logreen}%m${default}%b" else RPROMPT="${loyellow}%n${default}%b@${logreen}%m${default}%b" fi SPROMPT="${red}Correct ${default}> '%r' [%BY%bes %BN%bo %BA%bbort %BE%bdit] ? "

プロンプトはシンプルにしている。そういえばこれは、 colors の設定を知らないころに書いた設定なので、色の設定のしかたが普通と違う。ちょっと恥ずかしい。でもまあ、そこは適当に良みかえてほしい。

世のzshユーザはRPROMPTにパスを入れるのが大好きなようだが、わたしには理解しがたい。あんなモンが右側から迫ってきたらジャマで仕方ないだろうと思うんだが。RPROMPTには自分のユーザ名とホスト名を配置。自分が root のときは赤色に変えている。これは『漢のzsh』の後藤さんといっしょかな。

ではパスはどこに表示するか。むろん PROMPT だが、ここには改行を入れられることを知らない人が多いのかもしれない(たしかtcshなどではPROMPTに改行ひとつ入れるのもしんどいようだ)。パス名などはPROMPTの頭の方に入れておきしかるのちに改行する、これだ。むろん、プロンプトが複数行になるのがイヤというのは個人の感情論だからイヤならやめればいいが、その程度で何が変わるのかってのは、いっぺん考えてみた方がいいと思うよ。

ちなみに色だが、

autoload colors

として、あとは $colors[red] とかのように書けばよい……んだったと思った。これは比較的新しいzshの機能である。くわしくは fpath の colors ファイルを見るといいだろう。

WORDCHARS='*?_-.[]~=&;!#$%^(){}<>' autoload -U compinit compinit zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z} m:{A-Z}={a-z}' zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS} compdef _man w3mman compdef _tex platex

まぁこの辺は zsh ユーザでやらないやつはいないだろうし、そのうち連載でも解説されるだろうから略。見て感じろ。

あーただ、 matcher-list について、私はかなりアグレッシヴな設定にしているが、これはときどきイラつくことがある。とくに autotool を使っているソフトウェアのディレクトリで、 INSTALL と install.sh の両方がひっかかってうまく補完されず、ムカつくことがある。でも時々便利なのでこうしている。

alias h='history 1' alias j='jobs' alias cp='nocorrect cp -i'

エイリアスで特徴的なのはこの辺かな。とくに jobs は頻繁に使う(はず)なので、 j と1打鍵で済ませた方がいい。 nocorrect は zsh の予約語で、以降のコマンドにおける訂正を抑制する効果がある。 cp なんかでは新しくファイルを作ることが多いから、いちいち訂正を出されるよりはこのようにするといい。ほかにも mv、mkdir、touchなどもそうだろう。

ああそれからむろん、w3mman=manというエイリアスをしている(そのため上記のような設定をしている)。一発で完璧にマニュアルを探索できるという稀有な人間を除いて、w3mmanの方がハイパーリンクがあって便利だ。まぁ、知らない人はいないだろうけれど。

alias -g L='| lv' alias -g H='| head' alias -g T='| tail' alias -g G='| grep' alias -g W='| wc' alias -g S='| sed' alias -g A='| awk' alias -g LE='|& less' alias -g HE='|& head' alias -g TE='|& tail' alias -g GE='|& grep' alias -g WE='|& wc' alias -g SE='|& sed' alias -g AE='|& awk'

global alias はこんなもの。いろいろあるが、この辺は知り合いの人を真似してやったもので、今になって見返すと L と G 以外は滅多に使わないからなくてもいいと思う(HとTも使わないことはないが)。ほかの知り合いに |ruby を R に設定しているという人もいたけど、わたしはやっていない。

おっとそうだヒストリ。

HISTFILE=$ZDOTDIR/.zsh_history HISTSIZE=20000 SAVEHIST=200000000

まぁこんなところで。


GaucheNight

Posted by 向井 淳 on Friday, 23 February, 2007

http://www.shiro.dreamhost.com/scheme/wiliki/wiliki.cgi?GaucheNight ホントに黒田さん来るのかー。ある意味すごいなあ。


関数型言語が流行らないのは名前に「関数」って入ってるから

Posted by 向井 淳 on Friday, 23 February, 2007

http://www.jitu.org/~tko/cgi-bin/bakagaiku.rb?bakaid=200702221

ファンクショナル言語とか……


webサービス運営のコツをGoogleはどれだけ実施しているか

Posted by 向井 淳 on Thursday, 22 February, 2007

http://labs.unoh.net/2007/02/learning-from-cabaret-club.htmlを読んで「ふーん」と思ったのだけど、さてこの業界で馬鹿にしてはいけない勢力を持っている google は、どれくらいこれを実践しているのだろうか。

>
  • Google は、とにかく単純であることをウリにしている。まっさらの画面にロゴとテキストフィールドのみというのが「Googleらしい」とされ、好ましい特徴であるとされる >
  • 客を大切にしている? 誰が? >
  • 常連客だからといって特別何かがあるわけではない(最近は検索結果でクリックした回数とかが出たりとか、いろいろあるけど) >
  • Google から、サービスに関連してメールを貰ったことなどおれは一度もないですが何か >
  • その先に広がる世界って『web進化論』とかでも読まないと想像できないんじゃないですかね >
  • 季節のイベントごとにロゴが変わりますね。あれはいつからやってるのかな >
  • 常に新しい話題を提供。うーん、まあ、検索結果だから最新のものになるようにしていますが…… >
  • 高いお金を払ってくれるユーザを優遇。うーん……AdWordはそうかなあ
  • ……とまあこういう具合で、当て嵌まるのもあるけどむりやりなものもあり、全体を通じてみると大して重視してないよな、という印象を受ける。

    Google がやってない、ということがこのノウハウからどう影響されるか。いろんなことが言える。

    ひとつには、 Google は検索サービスであり、↑はコミュニティベースのサービスを想定しているだろうから違う、というのもあるかもしれない。でも Yahoo! はわりとこれっぽいことをやっているような印象がある。

    あるいはギークに好かれるのと一般人に好まれやすい性質は違う、という説がある。でもそれはアメリカでは圧倒的に Google であるということと両立しない気もする。

    日本ではこういうことが望まれているという、つまり文化の差という風な話にもできる。日本における Google の苦境はここにあるのかもしれない。

    時代の差かもしれない。 Google がサービスインした頃と今とでは話がぜんぜん違う。当時はリッチな外見でごてごて飾るよりも、シンプルにした方が速いし嬉しいと思われていた(複雑な構成のHTMLは嫌われていた)。今は見栄えを気にする余力が、帯域的にも計算資源上も充分に出てきた。とかなんとか。

    もちろん、「やっぱりキャバクラ嬢とwebサービスは違うよ」と言うこともできるかもしれない。わたしは、対人サービスにそんなに大きな差があるとも思えないし、簡単に「違う」とは言えないと思うけれど。

    ようは何とでも言えるなあという以上のことはないんだけどね。