非システム系の友人との会話で、僕の仕事を話していたときのこと。
僕がアーキテクトの仕事を「業務のパターンをみつけて、それをソフトウェア化する方法を考えることかな」といったところ、友人が「そんなことすると人間性がなくなってつまんなくなるのだ」とネガティブな反応。
いわく人間が持っている柔軟性や才能をあるパターンに押し込んでしまうことで人間の能力を制限しているのだと。そんなことするから世界がつまらなくなるのだとおっしゃる。なるほど。
僕もしゃくなので、思いつくままに「携帯電話は遠隔コミュニケーションのパターンを固定化したけど、誰も困ってないよ」と言い返してみました。
ソフトウェアのパターン化というのは、その代替された業務だけみていると確かに制限にしか見えません。融通が利かないというか。しかし、そうしたパターン化があることで情報の流通性が非常に高まります。これまでは自由なフォーマットで書いていた手紙が、Eメールになることで世界中に届くようになったように。
パターン化は一面では世界を狭くしますが、一面では爆発的に世界を広くします。
ソフトウェア技術がただの効率的な事務機器を抜け出して、本来のIT(情報技術)に到れるか。実は、この視点に気づけるかどうかがネット化の本質を見つけられるかに大きく関わっていると感じています。
一時的な非効率性や不安定さを許容することで、その先に爆発的に広がる世界を想像できるのか。
僕はネットワークの力を信じます。

コメント (2)
興味深いご意見です。
記事の中の「パターン化」というのは「インタフェース仕様の標準化」とも取れますね。
ネットワークを触っていると標準規格というものの重要性をヒシヒシと感じます。
そもそもTCPやHTTP、HTML等という「パターン(プロトコル)」がないと、このサイトさえも読めないということになりますもんね。
個人的な意見では、アーキテクトの仕事は、プログラマの仕事の品質を確保するためにシステムの作り方を決めるものだと考えています。
プロジェクトに参加するプログラマにはすごい人からダメな人までいるわけで、すごい人の作り方がダメな人に真似できないのはしょうがないことです。
このダメな人に自由に作らせて変なことをやらかしてしまわないように、縛りを課すのがアーキテクチャだと考えています。
すごい人の能力を制限しないのが理想ですが、理想どおりに行く環境なんて一握りのような気がします…
投稿者: ニシジマ | 2007年04月13日 17:57
日時: 2007年04月13日 17:57
yusukeです。
アプリケーションには様々な部位があるわけで、無理がない範囲で分けてよいと思います。この部分は個人の能力に依存するとか。才能を制限するなんて、もったいないですからね。
とはいえ理想どおり、というわけにはいかないですよねw
投稿者: yusuke | 2007年04月16日 11:44
日時: 2007年04月16日 11:44