インタビュー : 先人からの贈り物を次世代に〜生みの親に聞く【2】

道具を使いこなすには、発明者が何を思ってそれを作ったのか、その思想を理解することが近道。そこで、usp Tukubaiの生い立ちを、生みの親である當仲氏に語ってもらった。

インタビューの際、當仲氏はホワイトボードも使って説明をした。中でも「技術の進歩は、0.プログラミング(制作)→1.共通化(共通部分のライブラリ化など)→2.分散化(共通化は一方で脆弱性も共有してしまうため)→3.効率化(システム全体での効率改善)→…、という過程を経るだろう。これはITに限った話ではない。1までは比較的容易で、そこまで考えて生み出される技術は多い。ユニケージ開発手法ではその先も考えている」という話は印象的だった。

パイプを何十本も繋いでメーカーの人に嘲笑われた

Tukubaiというコマンドセットは、どのような経緯で作られたのですか?

たまたま前職(大手スーパー)のプロジェクトチームに入って、そこでUNIXをもう一度勉強し直す機会があったんです。上司がソニーのNEWSというUNIXワークステーションを使い慣れているという理由だけで「僕ちゃんはNEWSが大好きなんだ。お前も使え」と言われました。そういう偶然から全てが始まったんです。

それで、「入門UNIX」みたいな本を買って読みました。学生の時もちょっと勉強しましたが第二外国語みたいな忘れ方をしていました。でもこの時は、会社の建て直しだとか、現実的な問題がバーンと目の前にあって真面目に勉強しました。その時、UNIXの本に書いてあったことの意味が初めて理解出来ました。小さな道具を組み合わせて問題を解決するほうが柔軟性に富んでいて、スピードが早く、無駄がないということ、それが必要に迫られてみると、よくわかりました。

今に至るお手製のコマンドを作っていったのも、UNIXっていうのはコマンドを組み合わせてfile to fileでデータを順番に変換しながら、欲しい編集をするもので、その為にはコマンドを作ってもいいし、コマンドとコマンドをパイプで結びつけていけばいいということが、一から勉強している過程でわかったからです。

なるほど、USPの開発スタイルの源流はそこにあったんですね。

COBOLの時代から積み上げられてきた業務システムに必要な処理は、セレクト、ソート、マッチング、サムアップ、項目間演算……と、お定まりがあるんですが、UNIXのコマンドに用意されていない物がいくつかあったんです。例えばサムアップ。コンピューターはデカい電卓のはずなのに、単純に大根合計6本って出すための簡単なコマンドがないんです。大根1本、2本、といちいちファイルをリードしてオープンして……やりたいことは大根6本、って出したいだけなのに。

そこでUNIX的思想に則り、パイプを何十本と繋いでいってデータを流して処理を実現させてみました。「やったー。ほら出来た!」と喜んでいても、当時、シェルでパイプを繋ぐなんてありえなかったので、それを見たメーカーの人が嘲笑いましたね。「コンピューターの使い方を間違えてる」って。

たぶん嘲笑った人は、コンピューター会社に入って、新しいことを追い続けることがコンピューティングだと思い込んでいたのでしょう。でも僕の場合、目の前にある問題を、一番ベーシックなアーキテクチャで解決するにはどうしたらいいか、って考えていました。「シェルはあれもこれも出来ない、制約がある」って言われましたけど、僕はそれは解決していくものだと思ったんです。

前職在籍時に制作したというプレゼンテーション資料。UNIX的発想がいかにシステム効率化・コストダウンに有効であるかということを、これらの資料を使って当時の首脳陣達に直接説明したという。数百枚にも及ぶそれらの資料のほとんどは手書きで作られており、そのパワーに圧倒される。

インタビュイー

當仲寛哲(とうなか・のぶあき) : 1966年生まれ、兵庫県出身。株式会社ダイエー在籍時に、UNIXシステムを再勉強し感銘を受ける。そこで学んだUNIX的発想を活かし、当時年間数百億円費やしていた社内システム維持費を数十億円に削減させ、社長賞を受賞。2004年独立し、ユニバーサル・シェル・プログラミング研究所を創立。現在に至る。

USP MAGAZINE Vol.4「特集1 ついに始動Open usp Tukubaiプロジェクト第二章 先人から>の贈り物を次世代に」より加筆修正後転載。

usp Tukubaiユニバーサル・シェル・プログラミング研究所の登録商標。

Last modified: 2014-01-13 00:00:00