SEってナンダ? again |
||
|
最終回です。 |
||
|
今回で「コーディングの向こう側」は終了です。そこで、この連載のはじめの方で取り上げたテーマを別の切り口からもういちど眺めてみようと思います。 |
||
エンジニアと職人 |
||
|
以前に「職人を乗り越えろ」と書きました。では SE は職人ではないの?いいえ、SE も職人です。でもただの職人プログラマーを SE と呼ぶのは変ですね。そこら辺をハッキリしておかないからプログラミングをする人と設計をする人の摩擦が起こるのではないかと思います。 |
||
|
プログラマーはすばらしい職人芸の持ち主で、プログラムがかなり上手い人。SE はある程度プログラムもできる上に、ほかにもいろいろやる人。そういう分類でいいと思うんですが、どうでしょう? |
||
|
ともかく、職人がエンジニアであるとは限りませんが、エンジニアは職人です。正確に言うと、「エンジニアが持っている性質の一部は、職人的プログラマーが持っている性質の一部と同じものである」と言うことです。 |
||
エンジニアと芸術と科学 |
||
|
同じように、芸術家がエンジニアであるとは限りませんが、エンジニアは芸術家です。ううむ、こういう言い方は語弊があるかな?正確に言うと、「エンジニアが持っている性質の一部は、芸術家が持っている性質の一部と同じものである」だと思うのです。そもそもソフトウェアを作るというのは、ものすごく個人的な精神活動ですからね。たとえ数百人規模のビッグ・プロジェクトでも、各自の作業は独創性とか柔軟性とかの精神的なものに依存しています。 |
||
|
さらに、科学者がエンジニアであるとは限りませんが、エンジニアは科学者としての性質も持っています。「コンピューター・サイエンス」という言葉があるくらいです。まだまだ歴史が浅いジャンルですからほかのいろいろな科学に比べたら深みがないですが、我々の仕事が科学的な側面を持っていることは事実です。それに、作るものの内容によってはほかのジャンルの科学を利用する必要もあります。数学や論理学や物理学や解剖学や言語学や動物学、ときには航空宇宙学や海洋生物学が必要かもしれません。もちろん全部の専門家になれるはずはないですが、いろいろなジャンルの知識をちょっとずつかじってみられる程度には科学者的でなければ良い仕事ができません。 |
||
全部あわせると |
||
|
つまり、エンジニアには「職人的」「芸術的」「科学的」という3つの側面があるわけです。これらの3つの中で、それぞれの性質をどのようなバランスで持っているかによって、エンジニアとしての性質がある程度決まるのではないかと私は思っています。たとえば 80%職人 + 10%芸術家 + 10%科学者 という人や、 20%職人 + 60%芸術家 + 20%科学者 という人がいてもいいでしょう。そういえば、エンジニアってものすごくいろいろな性格の人がいると思いません? |
||
最後に・・・ |
||
|
これでおしまいです。 |
||
|
この連載が、読んで下さった皆さんに役立ててもらえる内容であったことを願っています。ぜひ「コーディングの向こう側」のそのまた向こう側をめざして突き進んでくださいね! |
||
|
最後になりますが、読者の方からいろいろなご意見(メール)をいただきました。感謝します。内容は賛成意見・反対意見・応援・感想・質問など様々でしたが、中でも反対意見をきちんと述べてくださる方が大勢いるということは少々意外でした。もちろん自分と違う考えの人がいてもいいし、自分の考え方が人と違っていてもいいと思います(ですから皆さんにも、私が書いたことをあまり鵜呑みにしないで、よく噛んでほしいと思っています)。自分と違う考え方を聞くのは自分のためになるし、良いことだと思います。そういう意味で、一番私のためになったのは反対意見かもしれません(いや本当は賛成されたほうが気持ちがいいのですけど)。とにかく、ありがとうございました! |
||
|
|
|
||||
(「コーディングの向こう側」は2000年4月から2001年5月にかけて作成されたコンテンツです。)