一般教養としてのプログラミング
26日の 研究会の話 の続き。きちんとまとめられてないけど,時間おくと勢いなくなるから。
プログラマになる者を育てるためのプログラミング教育はそれはそれとしてあるけど, 多くの者は開発を仕事でやるわけではない。しかし開発者に仕事を依頼する立場に なる者は決して少なくないし,そのときにきちんと話ができるためにはプログラミングが どのようなものか知らないわけにはいかないだろう,というのが研究会の趣旨であった。 業務をわかっていればシステムの要求定義ができるということにはならない。 たとえば学校で教務のエキスパートがDBの設計をやれるかというと, おそらく単年度とか単学年で使い切るものならできるだろうけど, 年度や学年,カリキュラム改訂をまたがったものを作れる程度に抽象化することはできないだろう。 もちろん受注側が業務を完全に把握しているわけもない。 発注側も受注側も,それぞれの想像力でミスコミュニケーションの穴を埋めようとしてしまい, 不幸な結果を生む。 アドミンティーチャーズ で校務システムを内製する話が出るのもそれを避けるためだ。
そのためにプログラミングを体験することは正しい。 「高度に発達した科学は魔法と区別がつかない」というクラークの言葉通り, ITはややもすると魔法扱いされてしまう。 それを現実の科学に引き戻すための教育だということだ。 しかしここで一つひっかかることがある。 生徒達が授業で作るプログラムのレベルと,普段接するプログラムのレベルには相等のギャップがある。 そのギャップの大きさが再び魔法の壁を作ってしまうのではないかということだ。 かといってそのギャップをきちんと埋めるような教育をするのは本筋ではない。 うまい方法で軽く飛び越せないものだろうか。 たとえばEclipseやVisual Studioでのポチペタプログラミングの体験なんか役に立たないかな。