ライブプログラミング

<< 戻る   トップ >>

ライブペインティング、という芸術のジャンルがある。芸術のジャンルというよりアートのジャンル、と表現した方がしっくりする前衛絵画の手法である。

絵画に限らず、結果を物理的痕跡と残す芸術では、「ライブ○○イング」はよくいえば前衛的、悪くいえば奇を衒った手法である。中には詩のようにもともとは物理的痕跡ではなくライブであったはずなのだが近代では物理的痕跡が重視されて、ちょっとライブで詩をされてもどうかなぁ、というものもある(この評価を確認するためにも「詩のボクシング」を一度観戦してみてもよいかもしれない)。

プログラミングは芸術か、という問に多くのヒトは芸術ではない、と答えるだろう。しかしプログラムにも厳然と「美しいプログラム」と「醜悪なプログラム」があるのである。

思うに、美しいプログラムというのはまず論理的に美しくなくてはならない。ひたすら無駄をそぎとったストイックな美の中に、ときに無駄であっても読解性を重んじたよく推敲された無駄も必要である。また、整形も重要だ。論理的美をもつプログラムは基本的に表示された美しさもたたえるものだが、それに加えて文字列の構造としての美も必要である。

int count = 0;
int sum = 0;
int count = 0;
int sum  = 0;

上の表では、右のように = の桁が揃っていた方が、私は美しく感じる。論理的には意味のないことだが、意外にもこのような桁揃えなんかを気にしながらプログラムを書いているのである。

まあ、プログラミングが芸術であろうとなかろうと、やはり本来は孤独な執筆作業なのであって、ライブに馴染むものではない。しかしながらライブプログラミングを披露する羽目になってしまった。内容は、観客から提示された UNO プレイヤーの思考ルーチンをプログラム化する、というモノだったのだが、フローチャートが実は流れていなかったり、カード選択のフィルタメソッドが不十分だったり、という問題があって結構苦労する羽目になった。それを5チームぶんプログラムしたのだが、結構疲労困憊であった。

パフォーマンスとしてのライブプログラミングは、プロ同士ならともかく、一度見れば十分で、もう一度見てみたい、というもではあるまい。それにしても「//同じ色のカードを探す」なんてコメントをいれながら作っていくと、いまどうやらあの部分をコーディングしているらしいな、なんてことが解かって興味は持ってくれていたようだった。残念ながら観衆はやや英語がきらいなヒトが多かったらしく、「わぁ、英語だ」という反応もあった。Java を UTF-8 でプログラムしているのだからメソッド名や変数名を日本語にすることはできなくもない。それにしてもプログラムを日本語ベースで書く、というのには抵抗を感じるし、初心者にそのような世界を見せるべきなのか判断の難しいところだ。

とにかく、ライブプログラミングはコーディング量を見積り間違うとえらく疲れる、ということがよく解かった。


作成: 2006-08-05 18:58:14.0更新: 2006-08-09 20:59:35.0
http://museo-anonimo.jp/nanban/?id=262,http://museo-anonimo.jp/nanban/tr/262