プログラミング能力とワークテクニックの関係★−1

個人的な話しだが、以前私はプログラマーをしていたことがあります。
いまはほとんど使われていないCOBOLというプログラミング言語をメインにしていて、これからC言語が出てこようかという時代です。ですからけっこう昔の話しですね。課金計算などが得意というところです。

プログラマー時代。朝デスクについてコーディングして、今まであったプログラム資源のつぎはぎを要領よくやってなどを忙しくしていたらいつも気がつけば夜遅くになっていた。それはそれでとてもストレスもあるが楽しい毎日。それなりに充実感がある。・・・が、あるいみとても楽しすぎた!日々が瞬時にすぎていくという感じがして、怖かった。

そののちなんやかんやがあって今にいたっているのだが、そのプログラマーをおこなっていたときのロジックな考え方や経験・テクニックは受け継がれている。

ちょうどプログラムは「入力」があって「処理」があって「出力」となる。

通常「出力」はどのようなものが必要なのかは先にわかっている。そして入力をする前に「必要要件の漏れのない洗い出し」を行う。そしてその仲立ちの「処理」を、結果を導き出すまでの”手段”として様々なやり方を模索していく。

このクライアントの状況ではこのテクニックを使おうなどのセオリーがあり、たいていが自分の過去やった事があるやり方が踏襲されているわけだが、実際は「処理」は、どのような手段を取ればもっとも最適で理想的なステップ数が少なくって間違いのない正確な処理が取れるかを熟慮していくことに他ならない。
そしてより入力の用件の見方を横から見たり、斜めから見たり多方面から観察していき考えていきます。
そうして”賢い処理の仕方”を見つけていくわけです。
そこで入力時点で、なぜその状態が起こったのか、その要因や条件などの必要要件を揃えます。それをうまくクリヤできるさまざまなワークテクニックを知っていきたいという動機が発生していきます。