著作一覧 |
ドイツ人が!
はてしない物語 (上) (岩波少年文庫 (501))(ミヒャエル・エンデ)
ネバーエンディング・ストーリー [DVD](バレット・オリバー)
みたいなものかね。
ところが、考えてみると、上の例は内容(メタデータ)の改ざんで、視覚表現(コード)については元々自由な実装を許す構造となっている。
メタデータでは幅がありすぎるから、それをより直截なものとしてアルゴリズムと置き換えて考えてみる。
ある作品には、アルゴリズムとコードがある。当然だ。
たとえば、アルゴリズムを変えずにコードを変えた例として、次の作品がある。
実は大傑作らしいが(今となっては観ておけば良かったと後悔したり)、ジーン・セバーグとヴァレリ・カプリスキではまったく異なる。前者は薄く、後者は濃い。
この場合、コード原理主義の立場さえ取らなければ、どちらも楽しめるはずであり、それが娯楽の王様の映画というものだ。
アルゴリズムとコードの両方を変えたものは、無条件に、ナイス・トライの一言をかけてやるべきだろう。
新造人間キャシャーン COMPLETE DVD-BOX ~ALL EPISODES OF CASSHERN~(西川幾雄)
(今となっては観ておけば良かったと後悔したり)
それが単なるナイス・トライなのか、別次元を切り開いた大傑作かはともかくとして。
と、考えると、問題はコード原理主義の偏狭さにある。
彼らは、リファクタリングを許さない、ということだ。
リファクタリングなしのプログラミングなんて、インスタントのコーヒーにわけのわからない白い粉を入れた飲み物みたいだ。
しかし、リファクタリングのためにはユニットテストが必要という正論もある。
映画におけるユニットテストとはなんだろうか。
コード原理主義者の考えるユニットテストというのは、CheckStyleのようなものなのだろう。くだらない。君らはトレースしたものを眺めていればよろしい。
おれにとっては、それは、おれが先入見をゼロにして観たときに、どれだけ楽しめたかどうかだ。そうか、「おれ」がユニットテストなのか。
16世紀のイギリス人は、学問というものを先入見(イドラ)からの脱却と規定した(すごく大雑把な理解なので眉に唾が必要)。
失敗すれば改竄で、成功すれば改良、突き抜ければ革命となる。
いずれにしろ、先入見にとらわれるのは、つまらない。つまらないものは退屈だ。退屈というのは、同じだからだ。同じということは繰り返しということだ。繰り返しは嫌いだ。ああ、嫌だ。
達人プログラマー―システム開発の職人から名匠への道(ハント,アンドリュー)
というところで、オリジナルに触れて心をなごませたりする。
アメリカから来た黒いネズミを異なるコードで示した例。
ジェズイットを見習え |