著作一覧 |
久々に技術ネタとエモネタのバランスが取れた良い会議だった。
イギリスでの労働ビザの話とか興味深い話題を盛り込んだ海外在留邦人のRubyライフを語る@makoto_inoueに始まり、@mrknの1.8から1.9への移行話の、ブロック変数にインスタンス変数を指定するやつとか、モンキーパッチをバージョン別に保持して初期化時に当てまくるやつでぐぐっと引っ張って、@nari3の根源的衝動の探求話で締める構成も見事だ。(asakusa.rb ninjaの構成がバランスしているのかも)
@takeshinodaのタクシーの呼び出しシステムの話は松江のトークが良かったとかで@kakutani肝入りの招待講演だったらしいけど、本質的な点を突いていて、なるほどこれは肝も入るなという講演。
少し考えれば、というよりも考えなくてもプログラムを作ればすぐわかるが、プログラムにバグがあるのは当たり前のことだ。ところが、なぜかそんな当たり前のことが理解できないプログラマが確かにいる。見かける。
WIN32サブシステムだろうがVBVMだろうがJDKだろうがLIBCだろうがLinux Kernelだろうがプログラムだ。したがって、これらにはバグがある。ところが、なぜかそれが見えなくなってしまうらしい。
そういう不思議な状態の人たちが、Ruby on Railsでアプリケーションを構築していくうちに、その当たり前のことに気付くようになり、当然のように直すようになるというのが要点だった。(オープンだからソースを直せるというのも重要なのだが、仮にクローズでソースが見られなくても回避するために頭を使うことはできるのだから、その切り替えができるようになったという点が要点だろう)
これに@kakutaniが反応したというのが興味深い。お客様-システム提供者の壁という構図は、プログラマとライブラリ(OS、ミドルウェア)の壁という構図と同一だからだ。すると両側に壁を作っている人たちというのが本当の構図なのだなぁ。で、@kakutaniは壁を壊す人だから、なるほど反応したのも当然だなぁと理解した。そこまで(両側の壁が目に入るまで)引いて考えたことはなかった。
@nari3の講演は印象的。まず、観たことある人? に対して、やたらと挙手が少ない(というか、おれも知らない)。ところが、(後で聞いたらもっと多いと思っていたらしいので、その想定で作ったらしいけど)ストーリーを換骨奪胎して位相をずらしたパロディ版のスライドに説得力があるので、観ていなくても問題なく何が論点かわかるように作られていた。
(@kakutaniも絶賛していたので映画らしい映画らしい)(今気づいたが「らしい」は確実性(前者)と憶測(後者)の相反する意味の2つの異なる言葉なのだな)
#この会議の基調には、GC.disableがつきまとっているらしい。1.8、1.9、2.0のベンチマーク(@mrkn)は@_ko1の推測と異なりGCの速度向上はまったく関係ない(GC.disableしている区間の計測)に始まって、GC.diableして動かすPerfumeで終わった(MP吸い取られる踊りの奇妙な動きの秘密を後で@nari3に教えてもらえたが、当然話の流れからGCによって引きつるのかと思ったら、まったく関係ない=GC.disableしている、とのことだった)。で、それが基調にあるだけに、JKがキャッキャッしながら、GC.disable、GC.disable_lazy_sweepと放言するのにうけまくる。
あと、おもしろかったのは、全体的にアジャイルが否定すべき古臭いもの(とまでは言わないものの、フローチャート(笑)くらいのイメージに近づきつつあるような)扱われ方で、なるほどアジャイル宣言から12年(日本の数え方で1回り)たったんだなぁということとか。
あと、懇親会の会場が、庶民のための迎賓館というかベルサイユというか、シャンデリア、長い会食用机、亀の甲羅とばっちり揃った会場で、最初、会議場からやたらと歩かされて何考えてんだとネガティブだったのが吹っ飛ぶおもしろさ。これは良い。
と、実に良い日を過ごせた。みなさんお疲れ様でした。
追記:@ogijunからシェフの話の解説を聞けた。なるほど、おもしろいと思った。
ジェズイットを見習え |