ObjectSquare [2001 年 9 月号]

[OOエンジニアの輪!]



OOエンジニアの輪!

〜 第 11 回 青木 保一 さんの巻 〜

今回のゲストは青木 保一さんです。 青木さんは株式会社デュオシステムズの創業者兼社長であり、日本におけるオブジェクト指向の初期から携わってきた方です。


尊敬する人 Arthur C. Clarke
(子供の頃からお世話になりました)
好きな言葉 Tomorrow is another day.
(何となくという程度ですが)

Duoシステムズ創業秘話

-- では、最初に青木さんがコンピュータと出会ったきっかけなどをお願いします。

最初の出会いは中学の一年くらいです。まだパソコンというよりもマイコンと呼ばれていた頃の時代ですね。当時のテレビゲームだった(というには原始的な)ピンポンテニスを先輩に見せられてクラブに勧誘されました。ピンポンテニスがワンチップのLSIで動いている事を聞いて不思議だなぁと子供心に思った記憶があります。
最初に出会った頃のマイコンは8bitのCPUがやっとでてきた頃で、組み立てて作ってから16進数のキーボードで入力するような奴ですね。それから中学高校とだんだん進むにつれてマイコンがパソコンっぽくなっていってキーボードがついて外部記憶(当時はカセットテープが主流でしたが)入出力ができるようになっていきました。そのころにアセンブラとかを始めたのがプログラミングの始めですね。

-- そのころやっと普通のキーボードとかディスプレイがついた時代に入ったわけですね? 

インタビュー風景

ただディスプレイはカラーじゃなくいわゆる端末というかグリーンディスプレイが主流でした。当時(カラーが出力できた)APPLE IIが高嶺の花の時代ですね。ガラスケースに入ってたりして。
当時は言語もBASICとかが主流の時代でしたが、メモリが少なかったので(そういう環境でも効率のよい)Forthみたいな言語処理系を自分で作って「BASICよりも速い!」と喜んだりしてましたね(笑)

-- それ以降大学ではどのようなことを勉強されてたんですか? 

大学は情報系の学科に進みました。その後ドクターコースにいた頃にサークルの友達と一緒にコンピュータの会社をつくろうという事になり、今の会社(デュオシステムズ)をつくりました。それがちょうど1990年ぐらいの話ですね。

-- やっぱり会社創業のきっかけになったサークルはコンピュータ系ですか? 

いえピアノのサークルです。ピアノのサークル出身者二人で始めたから Duo というわけでもないんですが(笑)
サークルの友達を含めて、ソフトウェア系の人だけではなくハードをやっていた人やユーザ的な立場だった人たちと一緒に始めました。



オブジェクト指向を始めたきっかけ

-- 最初にオブジェクト指向に触れたのはいつ頃ですか?

大学の頃にSmalltalkで小さなソフトを作ったことはあるんですが、本格的にはじめたのは会社をはじめてからですね。

-- では本格的にオブジェクト指向に手を染めたきっかけは?

会社を始めた頃、いわゆる人海戦術のようなソフトウェア開発に限界を感じていて、当時、研究から実用の段階へと移りつつあったオブジェクト指向を取り入れようということになりました。
当時はオブジェクト指向といえばSmalltalk一色でしたが、私たちはC++を採用しました。あとはこれも当時出始めだったOODBにも手をつけましたね。

-- 仕事をはじめてからはずっとオブジェクト指向一本ですか?

まぁ例えばC++一本しか使わないというわけではなく、必要があればCでプロミングもしました。ただCを使っていてもオブジェクト指向を意識するようにはしましたが。例えばX-Window関連のプログラムとかは言語はCでもオブジェクト指向でしたね。
またオブジェクト指向でやること自体が目的ではなくて、あくまでも手段として有効なものを活用するというスタンスでやってきました。

-- オブジェクト指向の好きなところ嫌いなところは?

オブジェクト指向自体を目的とするのはあんまり面白くないかなと思います。むしろ利用者がいるところでの実際に「役に立つ」オブジェクト指向といったところに興味を持ってます。



コンポーネント技術

-- 最近コンポーネント技術に力を入れているようですが?

インタビュー風景

そうですね。結局オブジェクト指向で再利用性を高めると言っていても、使う人(再利用する人)から考えるとまだまだ難しいというイメージがありますね。コンポーネントはオブジェクト指向の技術を利用して、使う人からみて使いやすい部品を提供していく技術ですよね。

-- どういうものを提供されているのですか?

CPIC(Customizable Personal Information Components)というものを提供しています。CPICではもちろん使いやすいコンポーネントを提供するとともに、EJBコードジェネレータみたいなものを提供しています。
コンポーネントそのものと、そのようなコンポーネントをつくるための仕組みを一緒にしたもの、のようなイメージですね。
具体的にはデータベースに入っている個人情報などのデータを実際のオブジェクトとして取り扱うのを簡単にするコンポーネントやサイト間連携、シングルサインオンをなどを提供しています。これ自体はすでに実際に運用しているサイトにも利用されています。

-- コード生成のための仕様はどういう風に書くんですか?

仕様をXMLで書いてJavaコードを生成します。ジェネレートされた部分からユーザのロジックがフックされて呼び出されるような仕組みになっています。そういう構造になっているのでコンポーネントの仕様が変った場合は、XMLの記述を変えてジェネレートし直したあと、ロジック部分と一緒にして動かせば動くという仕組みです。

-- EJB専用のフレームワークですか?

(EJBだけではなく)SOAPなどを使ったWebサービスのためのスタブや、UI部分のコードの自動生成もできるようになる予定です。例えばポータルサイト構築のためのPortlets(Potalページの中にある一区画)を生成したり、UI上での統合を支援する機能をつける予定です。

-- 会社としてフォーカスしているのは?

インターカンパニーソリューションといったものを考えてます。複数の会社、組織が協調して一つのサービスを提供する際に、それを支援するためのシステムを提供することを最終的な目標としています。さきほど言ったコンポーネント技術やWebサービスといったものも、そのための部品というか環境になれなばいいなと思ってます。



個人的な興味

-- 青木さん個人としては最近どのあたりに興味をもたれていますか?

インタビュー風景

今のテクノロジでは人間と人間をつなぐという目的で、例えばWebがあったり電子メールがあったりしますね。これからは、その間にもう少しシステムが入って賢く支援してくれるようなシステムがあればよいなと思います。
例えば電子メールの場合は、いらない広告メールが入ったら途中で全部削除してくれたり、ちょっとチェックしておけば後でまとめ読みができたりすれば便利ですよね。

-- グループウェアにそういう機能は求めずに?

グループウェアでもそういう機能があったりしますが、グループウェアはある種の「型」を作ってその「型」のなかで「この人とこの人はこういう風につなぎましょう」と決めてしまうところがありますよね。
それに対してもう少し緩い関係を保ちながら、システムが賢くサポートできるような仕組みがあればいいですね。

-- エージェント機能のようなものですか?

いろいろ解釈の相違が多いのでエージェントという言葉は使わないほうがいいかもしれませんね(笑)。例えばメールの内容をフィルタする機能とかはすぐにでも欲しいです。コンピュータが勝手に内容を判断するというわけにはいかないので、一つの案としては電子メールの内容自体のデータをもっと構造化して、コンピュータにも判断できるようにするという方法もあると思います。Webページとかにも、コンピュータにとってもっと内容を判断しやすくするための情報がほしいですね。

コミュニティの形成の支援をしてくれるツールと考えてもいいかもしれません。そのために電子メールとかWebとかを自分の目的に向けて構成できるようになれば便利ですよね。インターカンパニーのさらに先にある技術でしょう。そのための技術としてオントロジーのような知識工学が応用されると思います。



オブジェクト指向に関して一言物申す

-- オブジェクト指向に関して何か言いたいことはありますか?

オブジェクト指向は「宗教ではない」と思います。信じるものは救われるという態度はあまり好きではなくて、具体的にどういうところで便利かがわかっている必要があると思います。
「オブジェクト指向をやってみてもどういうメリットがあるかわかりません」という状態のうちは無理に手を出す必要は無い(手を出さない方がいい)のかもしれませんね。

-- オブジェクト指向のメリットがわかってもらえないと私たちの仕事が減っちゃうわけですが(笑)

(オブジェクト指向によるメリットが)人によってすぐにわかる人もいれば、すぐにわからない人もいますよね。実際には、メリットのわからない人でもメリットが得られるようにする必要がありますね。そういう場合は誰にでもオブジェクトによる設計のスキルを求めるのではなく、すでにあるコンポーネントを活用するというところから学んでもらって、実際にオブジェクト指向のメリットを受けてもらうのが大事ですね。
バランスというかオブジェクト指向の実用性を最大化するやりかたで考えるのがいいんじゃないかと思います。



普段の生活

-- ご趣味は?

インタビュー風景

会社を作ったメンバーがピアノサークル出身なのでたまにコンサートを開いたりしていますね。私自身はピアノを弾くよりは作曲をしたりする方が多いですが。

-- ジャンルはどのようなものですか?

いわゆるクラシックっぽいのではなく、ポピュラーだったりジャズだったり。ちょうど喫茶店で流れているようなやつです(笑)

-- 他に何かスポーツ系の趣味とかありますか?

スキーですね。子供と一緒によくいきます。大学の頃始めたんですが、学生は冬休みとかヒマだったんでかなり行く機会があって、滑れるようになりました。
もう一つスポーツで思いだしましたが、ウチの会社ではマラソン大会があります。マラソンといっても5〜20kmぐらいですが、場所は勝沼で、マラソンが終わった後にワインが飲めるというのが、実は主な目的だったりします(笑)。


© 2001 OGIS-RI Co., Ltd.
Prev Index Next
Prev. Index Next