takminの書きっぱなし備忘録 @はてなブログ

主にコンピュータビジョンなど技術について、たまに自分自身のことや思いついたことなど

美しい技術には思想がある

科学というのは、世の中を理解するためのアプローチで、それ自体はモノを作ることではなく、自然界や社会などの対象に元々内在している仕組みを人間が理解できる形(数式や言語)に変換する行為だ。万有引力の法則も、あるいは需要と供給による価格決定メカニズムも、もともと目に見えない形で世の中に存在していたのをニュートンやアダムスミスが発見し、翻訳したにすぎない。

一方で技術は人が作ったものである以上、そこに作った人の「目的」や「意図」といったものが必ず含まれている。すごく単純な例で言えば、自動車は馬や馬車などの代わりに人を移動させる手段を提供するために作られた。
そして、その目的を達成するための方法論を詳細まで徹底的に考えぬかれたものは、もはや「思想」と呼んだ方が良いくらい洗練されていて美しい。
思想のある技術はすべての機能について、目的から導かれた一貫性がある。機能の細かいところまで、なぜその機能をつけたのか、なぜそういう実装(インターフェースなど)なのかといった「理由」がある。
だから美しい技術は、技術者の心だけでなく、それを使うユーザの心にまで響く。

昔の話だけど、今までC++を使ってプログラミングをしていた僕が、初めてJavaに触れたときに、その徹底したオブジェクト指向に感動し(今ではこれ以上に徹底した言語は存在するけど)、更にはそういうアーキテクチャが"Write Once, Run Anyware"という思想を達成するために考え抜かれたものだとわかったときに感動したのを覚えている。

もっとわかりやすい例でいえば、iPhoneがそのインターフェースで多くの人を魅了しているのもそういう理由ではないかと思う。iPhoneは枯れた技術の組み合わだけど、いらない機能などはとことん削って、ユーザの直観的なわかりやすさを追い求めた。日本の他の携帯のような機能のごった煮状態とは対照的だ。
技術開発には無尽蔵にお金をかけられるわけじゃないから、そういう制約のもとで捨てるものは思い切って捨てるというバランス感覚は大事なんだろうな。

そしてこれは科学技術に限ったことではなく、会社の組織作りとか、法律体系など、あらゆる「目的志向」のものに言えることなんじゃないかと思う。
例えばディズニーランドって、あれだけのリピーターを抱えているのは、やっぱり細部のサービスまで徹底的にこだわり抜いているからで、だからこそ人を感動させられるんだと思う。


ちなみに、技術を学ぶ上で一番大事なのは、その技術の持つ思想を実感することなんじゃないかと思う。例えばITの世界では、技術は日進月歩で今までの技術はどんどん古くなっていくけど、でもその背景に流れている思想自体はそんなに大きく変わっていないんじゃないだろうか。
プログラミング言語を一つ極めれば、他の言語にも応用が利く。「あのプログラミング言語のあの機能は、この言語ではどれにあたるだろう?」といった感じで。
あるいは、XMLみたいなマークアップ言語は、その思想をSGMLから受け継いでいて、HTMLやTeXみたいな言語とも共通する考え方を持っている。
今流行りのWebサービスにしても、機能を部品化するというオブジェクト指向の考え方の延長線上にある気がする。

だから技術自体が古くなっても、その技術に流れている思想はなかなか古くならない。



そして僕は、そういう思想のあるモノを作りたいのだ。