June 9, 2008

環境「依存」か環境「構築」か?

 最近はとんと新言語というものが登場しなくなった。いや,草の根レベルでは色々考案されているのだろうけど,ある程度のマスを惹きつける流行現象を伴うパワーを持ったものは早々現れなくなってきているな~と感じる。良くも悪くもITが巷にはびこり,そこここで既存のプログラム資産が増えてきて身動きが取りづらくなっているという事情も大きいと思われる。かつては「この言語を使えば生産性が△△アップ!」なんて胡散臭いあおり文句もそれなりに効力を発揮していたモンだが,ワシみたいなヘッポコプログラマだって,自分が書いた数MBものコードをオジャンにしてまで新しい言語に乗り換える気にはならない。大体,それを極力しなくていいようにANSI Cの範疇でコードをシコシコ書くようにしているので,Cとリンクできないような新言語というものは今時皆無であろうから,まあ完全にコード資産がパーになることは当分ないのである。さすがに近頃はCの偏狭さにいらだってきているので,少しC++にシフトしているが,完全に移行するにはあと数年はかかりそうである。
 それでも今後,大流行する新言語が登場しないとも限らない。さてその時にワシはどうするか?C資産とのジョイントを計りつつ,どの程度そこに自分の欲する環境を「構築」できるかどうか,慎重に見極めることになるであろう。
 そう,結局は,自分がやりたいことが出来る環境がそこに「ある」のか,もしくは「作れる」のか,それにかかっているのだ。

 先日,TAをお願いしているシャチョーT君と喋っていて思ったのだが,今のIT状況ってのは複雑なものがありすぎて,一つに集約できなくなっているのである。いや,もちろん1990年代後半のInternetブームでプロトコルはTCP/IP一辺倒になってきたし,ハードウェアアーキテクチャはPC/AT compatibleの発展形に落ち着きつつあるし,コンパイラ言語はC/C++, COBOL, (Visual) BASIC, Java, C#, Fortran,スクリプト言語はPerl, PHP, Ruby, Python,特殊用途としてLISP等に集約されてきたし,OSはUNIX陣営(Linux, *BSD, Solaris, HP-UXなど)とWindows(TM)に2分されてきたし,WebサーバはApacheとIISに,データベースはMySQL, PostgreSQL, Oracle, SQL Serverぐらい,仮想化技術はVMwareに幾つかのベンダーが戦いを挑んでいる・・・というように,技術競争を勝ち残ってきたものはそんなに沢山ある訳ではない・・・訳ではないが,これはカテゴリー毎に見ればそうなのであって,問題はこれらを組み合わせないとITにならない,というところにある。つまり,それぞれのカテゴリーにおける選択肢は少数であっても,それらの組み合わせを取ると一気に増えてしまうのである。
 例えばWebプログラミングを行おうとすると,OSはWindowsかLinuxか,言語はJavaかPerlかPHPかC#かHTML+JavaScriptだけか,WebサーバはApacheかIISか・・・となって,この時点で選択肢が2×5×2=20になってしまっている。これにデータベースも組み合わせると一気に選択肢が4倍になり・・・際限がないのである。しかも,これらの選択肢にそれぞれコード資産を蓄えたユーザがぶら下がっているのだから事情は更に面倒だ。資本主義の論理で少数派を踏みつぶしたくとも,有力サイトを運営するサイトがバックに付いていたりするとそれも不可能になる。・・・こうしてIT環境は雁字搦めになり,保守的になり,ドラスティックな動きが封じられるようになるのである。

 してみれば,人は天から与えられた環境より,自らの手で構築してきた環境を尊ぶモノなのである。寄らば大樹,というのも一つの考え方だが,そればっかりではフラストレーションが溜まる。大樹自ら動いてしまうという危険が常につきまとい,寄っているつもりがある日肩すかしを食ってひっくり返ってしまうことだってあり得るのだ。それがイヤさに,小さなダムを造るビーバーのように,人は自分の手で環境,つまり小さな縄張りを作り上げるのである。齢四十路を迎えつつあるワシは老化が進んでいるので,このような縄張りは大変居心地がいい。というより,縄張りがないと仕事に勤しむこともできやしないのである。
 もちろんこれも,勝ち残ってきたITパーツという大樹の土台の上に成り立っている縄張りであるから,全面的に自分が作り上げたモノではない。ではないが,ちょっとばかりの大樹の移動程度は耐えられるであろう・・・というのは楽観的すぎるかなぁ?

 大樹的な環境に「依存」しつつ,そこに小さな自分の環境を「構築」するという営みの中で我々のITは成立している。ここしばらくは,各ITカテゴリのパーツの緩やかな変化に目配せしつつ,作り上げた縄張りの中で精一杯遊んでいればいいようである。楽と言えば楽だけど,なーんかこー,つまんないよーな気がしないでもない。しかしこれも1990年代から2000年代初頭の大変革を見てきたオッサンの愚痴に過ぎないんだろうなぁ。

Posted by tkouya at June 9, 2008 3:00 AM