Andy Berry は、1969年からソフトウエアを開発しています。そして、1988年からSmalltalk のユーザです。近年、Why Smalltalk?のストーリを書きました。
Andy Berry は、1969年からソフトウエアを開発しています。そして、1988年からSmalltalk のユーザです。近年、Why Smalltalk?のストーリを書きました。Andy は、保険業、銀行業やそのユーティリティなどの産業のために、産業機械コントローラや、3Dグラフィックスから複雑なビジネス・アプリケーションにいたるまでの様々なアプリケーションの開発に貢献してきました。しばしば、これらは数学や人工知能などの分野からの概念を必要とします。これらのプロジェクトのいくつかは、Andy Berry の Webサイトに記載されています。
Why Smalltalk?
ほとんどの ‘Smalltalker’ (経験豊富な Smalltalk 開発者の総称)は、他の言語にも精通し、経験が豊富にあります。
私が考える3つの主要なキーがあります。
- どのようにして Smalltalk を見つけたか?
- なぜ Smalltalk を使い続けるのか?
- なぜ、多くの人が使用している Java に移行しないのか?
私の回答を、これから綴っていきます。
どのようにして Smalltalk を見つけたか?
1980年代、1冊の読む価値のあるコンピュータ雑誌がありました。それは、尊敬に値する‘Byte’です。1986年ごろ、ByteはSmalltalk の特集を組みました。
“ああ” “なんて素晴らしいのだろう!!” と、私は思いました。その後、私は2週間後にデモンストレーションの必要があった新製品(実際には、DTPのような機能を含んだ、高機能インテリジェントプリンタドライバであった)のプロトタイプを開発しなければなりませんでした。
“よし!” “Smalltalk で作ってみよう” と、私は思いました。2週間後、デモは成功裏に終わりました。ヨーロッパの大手コンピュータ会社が会社全体を買収し、私は失業してしまいました。別の仕事を見つけた時には“何とかなるさ! – なぜなら、私はSmalltalk を知ってしまったんだから…”と私は言っていました。
私はしばらくの間、他のことをしましたが、いつも Smalltalk のことを気にかけ、再び使用する機会を探しました。こんなことを言うのはおかしく思われるかもしれませんね。つまり、COBOL や Fortran (私の年齢が分かりますね)に愛情を持っていたことがご記憶にありますか?おそらく、ないでしょう。あなたはたぶん、それらの開発環境に対しては、あなたが時代と共に色々な開発環境に移り変わってきたように、 「ありがとう。でも次の開発環境に移るよ」と考えるでしょう。
1993年にその機会は訪れました。IBMは、今までで最も大きなSmalltalkプロジェクトの1つである、CSS の開発を開始していました。私はそれ以来、Smalltalk を使い続けています。そして今も、始めたころからと変わらず Smalltalk を楽しんでいます。
なぜ Smalltalk を使い続けるのか?
技術的な回答もご提供できますが、まずなによりも Smalltalk を使用し続けたいと思う主な理由があります。それは、おもしろいからです。
コードが何を実行しているのか理解できることは、おもしろいですね。ほとんどすべてのソースコードにアクセスできることは、おもしろいですね。行き詰ったときにインスピレーションを与えてくれます。必要に応じて、コードの中身を検査できることはも楽しいですね。非常に単純な言語(たった5つのステートメント)でいったい何ができるのか、目にすることもおもしろいです。コンポーネント(すなわち、ウィンドウやビジネスオブジェクトを実装するクラス)を開発しながら、それらが集まりながら複雑なアプリケーションになっていく様もおもしろいですね。
これは、すなわち非常に生産性が高い言語であることを意味しています。私一人で、それもたった4ヶ月で、フル機能を持ったコンパイラを開発できると、誰が信じていたでしょうか。誰が、4人のチームで3カ月間で保険業務のアプリケーション(完全なビジネスプロセスを実装)を開発できると信じていたでしょうか?あるいは、たった6週間でHTMLブラウザを開発できるなんて。これは、実際のビジネスで使用した、本当の事例です。
Smalltalk は単なるプログラミング言語ではありません。IDE(統合開発環境)の概念は、Smalltalk の発案です。近代的なIDEと言語の堅い結びつきは、 Smalltalk 開発者に素晴らしい恩恵をもたらしました。しかし、Smalltalk は、それだけにとどまりません・・・
Smalltalk の理念である‘read-mostly, write-little’ は、生産性の向上に貢献します。それ以上に、この恩恵を受けます。それは、非常に満足のいく開発作業にしてくれます。しばしば他の人が書いたSmalltalkのコードを目にします。そして、「うわ~。本当に50行だけのコードなの!」と思います。私は少ないコードでより多くのことを処理するように努力するよう、積極的に奨励しています。時々、私は他の言語が正反対のことをしているように感じ得ずにいられません。
なぜ、多くの人が使用している Java に移行しないのか?
私は、ほとんどの Smalltalker が Java を信頼していないと思います。それは、中途半端な理解でうなずきながらC++から抜け出た方向性のようなぎこちなさや、Javaによって開発された複雑なアプリケーションは非常に少ない(今日現在ですが)という、歴史的背景をSmalltalkerは心に留めているからです。
おそらく ‘Javaの愛好者’は、猛抗議するでしょう。 しかし今も、我々は Smalltalk に愛着を持ち続け、現在においても生産的であり続け、もっともっと楽しみ続けているのです。
- 他の記事は、ここをクリックしてください。