目次次「薮医者」 English

プログラミング診断室


プログラムを作る時に用いる言語のことを「プログラミング言語」と言う。 人間の言葉は、日本語、英語、フランス語、スペイン語、中国語などと数限り なくある。これと全く同じで、プログラミング言語もものすごい数がある。事 務処理で良く使われていたのがCOBOL(コボル)で、科学技術計算で良く 使われていたのがFORTRAN(フォートラン)であるが、今や古文に属す る。

今も盛んに用いられている現代語が、「C」という言語である。その一派と して、もうちょっと進化した言語として「C++」というのがある。これらを 使いこなせなければ、まともなプログラマでないようにまで言われている。

Cとは、そういう言語であるので、ここ数年の間に利用者も急激に増えてき た。書店のコンピュータコーナーに行けば、Cという字が目立つであろう。も う、猫も杓子もこの言語を使おうとしている。

これだけ普及するには、当然理由がある。この言語は、非常に効率が良く、 殆ど何でもすることができる。しかし、便利の良いものは、当然のことながら 危険でもある。コンピュータを良く分かっている技術者が使うには、極めて適 した言語である。だが、下手な技術者に使わせたら、これほど危険な言語はな い。誤りは起こし易いし、しょっちゅうコンピュータ・システムは止まってし まう。

C言語の講習をやっているとき、受講者から、
「C言語だけは、こちらが書いた通りに動いてくれない」
とよくクレームをつけられた。

「そんなことはない。コンピュータは、あなたが書いた通り忠実に動いてい るだけ。変なことを書いたから、変な風に動いたのだろう」
といつも答える。そういう人は、そもそもコンピュータをよく理解していない。

鋭い刃物は難しい手術もこなし、貴い命を救う「メス」の役割をする。しか し、鋭い刃物は人殺しの重要な道具、すなわち「ドス」にもなるのである。C 言語は、下手なプログラマには絶対に使わせたくない言語である。

こういう新興言語であるので、習得希望者は多いのであるが、その実態は凄 まじい。日頃そう思っている時に、出版社からC言語の雑誌原稿の依頼がきた。 これはちょうど良い機会でもあるので、引き受けることにした。

それで、できるだけ実践的で、読者に強い印象を与えるものを書こうと思い、 仕事のために作った「本物のプログラム」に対してコメントを加える形でスター トした。本物の下手糞なプログラムが手元にも若干転がっていたが、やはり雑 誌で連載するのだからと思い、雑誌に「下手なプログラム」の募集を掲載した。

多くの本や雑誌で扱うプログラムの解説記事の多くが、そのためだけに用意 されたあまりにも小さな例題の場合が多く、それらを読んだだけでは、実際に 実務に耐えるような規模や性能に応えうるプログラムを作れるようになること はまずない。要するに、多くの本や雑誌は、入門には良いかも知れないが、実 務という面からみると、役に立たないものばかりだ。ひとつ、本当のプログラ ムはどうすれば良いのか見せてやるか、という少々思い上がった気持ちもあっ て始めた。

そうして始まったのが、『Cプログラミング診断室』である。反応は上々で、 約1年半連載した。内容は、技術的な面からプログラマの心理面にまで及んで いる。連載終了後、単行本(参考文献1)にまとめて出版しているので、興味 のある方はそちらをお読みいただきたい。プログラムの技術解説部分を無視し て読めば、プログラムを知らなくても、プログラムの開発の内側がどういうも のか理解していただけると思う。実際、コンピュータと無縁の人からも読後の 感想を頂いている。

一番多いのは、プログラマからの便りである。
「とにかく面白い。いつまでも続けてください」
というのが一般的だ。さらに、
「社内に、こんな下手糞なのがいて、困っているんだよな」
「読んだ仲間が、社内が全く同様なので、ショックのあまり硬直していたぞ」
という本音が出てる内容も多数あった。

同じような立場にある人が作ったプログラムの問題点が、ビシバシと指摘さ れるのである。他人の欠点が指摘されると、人間とは喜ぶのである。読者が喜 んだのは、取り上げたのと同様のことが、自分自身の周囲に存在するからであ り、
「今回の内容はあいつにそっくりだな」
とか思っているからである。

自分で『Cプログラミング診断室』の連載を企画し、まして、それが好評で 単行本にまでなったのに、こんなことを言っては変だが、「がっかり」なので ある。まあ、プログラマの間では、どうしようもない、いない方が助かるよう なプログラマが多数いることは周知の事実である。

彼等がいなくなれば、生産性が上がる。いない方が、総生産量も上がる。品 質に至っては、飛躍的に向上する。

胸のうちは、こう思っている技術者が多い。でも、ここは日本であり、「皆 で仲よく」を何よりの美徳とする風土である。しかし、そのために、どんなに 無駄に資金が使われているか分かったものではない。

世のプログラマのレベルが実際にどのくらいのレベルなのかを世間が知らな ければいけない。それがなければ、決してレベルアップなど、いくら叫んでも 空しいだけである。

もう、私がこの本を執筆している理由が察知して頂けただろう。プログラマ たちは、自分の立場を守るために必死で、レベルアップどころか、レベルアッ プしそうな者の足を引っ張るのに忙しい。ソフト会社と言われるところも似た ようなものである。

だから、彼等の直接、間接にせよ、雇い主である企業のトップに、プログラ マという世界の実態を知らせようとしているのである。判断は、企業のトップ 自らして頂きたい。

美しいパズルとは

ナンプレ問題
自動生成


これで、今日から
貴方もパズル作家

Cパズル
プログラミング
〜再帰編〜


Copyright1996 Hirofumi Fujiwara. No reproduction or republication without written permission
目次次「薮医者」 English