悪戦苦闘の末、ついに CGI がなんとかわかるようになった。世界が拡がった気分である。 このページのような通常のウェブページは、あらかじめ用意された文章や図や写真などを表示しているだけなので、訪問した人はそれらを見ることしかできない。 一方、CGI というものを用いたウェブページでは、掲示板やアンケートのページなどのようにウェブページに訪問した人がそのページに書き込みをすることができる、またアクセスカウンターもCGIでつくることができる、ということぐらいは前々から知ってはいた。 しかしながら、自分が使っているサーバは CGI が使えない、もっと手軽な JavaScript というものでもある程度のウェブページをいじくれるものが作られる、それにアクセスカウンターや掲示板などは多くの無料レンタルのものもあって、それらを拝借すれば CGI の使えないサーバでも自分のページに簡単に取り付けられる、すなわち現代は何でもかんでも自分で最初から作る時代ではないし、作れる時代でもない、利用できるものは最大限利用しないと複雑で高度なものは作れない、などなどと考えて、あえて CGI には手を出そうとは思わなかったのである。 だが、インターネットでいろいろ探し回ってみても自分のやりたいことにそのまま使えるというものが見つからない。少し修正して使いたいと思っても、どこをどう変えたらいいのかさっぱりわからない。いっそのこと最初から自分で作ったほうがさっぱりする。 というわけで、CGIの入門的な本を購入してきた。最近の解説本はなかなか懇切丁寧に書かれていて、順序にしたがって読み進めればよくわかるようになっている。これなら思うほどのことはなさそうだ。 まず最初は、CGIプログラム作成に必要なソフトのインストールからだ。Perlというソフトである。そして、作成したCGIプログラムがうまく作動するかを自分のパソコンで試してみるためにApache(アパッチ)というものをインストールせよと書いてある。どうも理屈はいまひとつ解らないものの、まあそういうものかということで、これもなんとかできた。いよいよ簡単なプログラムを作って試すことになる。 だが本に書いてあるようには動かない。そういえば、最初のインストールのとき本に書いてあるのとは画面がちょっと違っていたようだが、自分のパソコンの環境が違うせいだろうか。何回か最初からやり直してみるがやはり同じところでつまずき、どうにもこうにも先に進まなくなってしまった。 そこで、また本屋さんへ出かける。こちらの本の方が易しそうだ。ところが、どうも書いてあることが最初の本とは違う。Apache(アパッチ)というものではなくて、httpdをインストールするように書いてある。どっちが正しいのだ。 また別な本をみてみると、CGIプログラムをPerlではなくてPascalやC言語で書いてもよいだの、SSIがどうのこうの、プロバイダによっては使えないこともあるだの、…。 もはや何が何やら混乱の極みである。 それでも、何がなんだかわからないこと自体がパズルを解くような面白さにハマッテしまった。結局、購入した本4冊、町の図書館で借り出した本4冊を並べとっかえひっかえし、あっちこっちをめくりかえし、ときにはインターネットの検索で調べたりして、ついに CGI で 「算数楽パズルランキング」 なるものを作成したのである。 どの本でも最初に 「CGIとは何か」 という説明をしてあるのだが、だいたい次のようなものである。 「CGIとは、WWWブラウザとWWWサーバマシン上のプログラムとの間でデータのやりとりを行う仕組みのことである。ブラウザからの要求に対してWWWサーバが別のプログラムを起動し、その実行結果をブラウザに送る。このときサーバマシン上で実行されるプログラムのことをCGIプログラムという。」(福島靖浩著:一週間でマスターするCGIより) ここで言う別のプログラムがApachとかhttpdであり、CGIプログラムをPerlで書いてもよいし、PascalやC言語で書いてもよい、ということである。 何も知らないでこのような説明を読んでも全く理解できないが、分かってしまえばどうしてこんなことが分からなかったのだろうという思いである。 事を複雑にしている原因は、パソコンの機種の違い、使っているソフトの違い、ソフトのバージョンの違いなどであり、さらに使用する用語の違いもある。同じことをするにも方法は一通りではないので、人によって別な説明がなされていることもある。これらが混在した中では、初心者が道に迷い込むのは無理もないことである。 しかしながら、「わからない」 ことの最も大きな要因はこのようなことではない、ということに気がついた。 悪戦苦闘の末、「わかる」 ということはどういうことか、ということが 「わかった」 という思いである。 すなわち、自分の内に筋の通った体系があって、未知のことがその体系にピタッと納まるということ、それが 「わかる」 ということのようだ。「わかる」 とは 「分ける」 、すなわち自分の持っている整理箱に分類して納めることができる、ということである。 どの整理箱に納めていいのか決められない、あるいは納めるべき整理箱が見当たらないものは 「分からない」 のである。 あることを人に説明するために、例え話で説明するとわかり易いのは、お互いに共通する筋の通った体系に納まっていたものを 「例」 として取り出して、それに未知のことを対応つけている、ということなのだ。 だから理解力があるかないかは、自分の内にどれだけ豊かな筋の通った体系があるかないか、ということに大きく依存するのである。 では、自分の内に筋の通った体系を豊かに育てるにはどうしたらよいのか。 それには、自然の法則を体で感じることであり、また、数学をはじめとする筋の通った体系である学問を積むことなのである。 自分の内に筋の通った体系が豊かに育つということは、世界が拡がるということ。 このことがわかったことで、世界が拡がった気分なのである。 (2003. 2. 5)
|