コンピュータ(以下計算機)に対する直接的な指示を書いて実行させる。 それがプログラミングである。そのために必要な能力は何だろう。 多くの人は数学的・工学的知識を真っ先に思い浮かべ、プログラミングは 理科系の専売特許のように考えている。そうした知識も重要だが、実際には
なども必要で、プログラミングを習得する過程でそれらが総合的に養われて いく。また、プログラミングを「機械を相手にしている」と決めてかかる 風潮もあるが、実際には違う。作ったプログラムを使うのは人間であり、 プログラムを作るときには、つねに使う人間のことを想定する必要がある。 人間には「思い込み」、「うっかりミス」、「いい加減さ」など不確定要素によ る行動が多いため、プログラムを作るときには人間がどのように行動するかを 全て先回りして考える必要がある。良いプログラムを作るには「思いやり」 が不可欠である。
それらを意識しながらプログラミングを繰り返すことで、論理的思考力が高まっ たり、実生活で人間と直接関るときにもそれまでは予測し得なかった「人間くさ い」反応に対応できる能力がついていく。
もうひとつ、プログラミングには「楽しい」という重要な側面がある。 自分で作ったものが完成したとき、それがうまく動いたとき、使えたとき、きれ いにできたとき、料理ならおいしかったとき、人間は嬉しいと感じるとともに、 大きな達成感を得る。ものを作るときには、乗り越えられる程度の「困難さ」がある と達成感は倍増し、うまくできたときに脳が快感を得る。この快感こそが 人間の能力を高める重要な要素となっている。
プログラミングには、初歩の段階で得た知識だけでもほぼ期待どおりのものが 作れるという性格がある。それゆえ最初はなかなかうまくいかないと苦労してい ても必ず完成させることができ、それにより大きな達成感が得られる。また、何 度失敗しても計算機は腹を立てたり壊れたりしないので、気の済むまで試行錯誤 を繰り返すことができる。さらに進んで、ある程度の水準のプログラムを書ける ようになった後には、「誰かに使ってもらう」という喜びも味わうことができる。 初歩から上級者まで、全ての段階で楽しめるのがプログラミングの特徴である。
高度に発達した工業製品は、我々から「ものの仕組み」を考える余地を 奪っている。電子制御によりボタンひとつで全ての操作が終わってしまう電化製 品は快適さをもたらす代わりに、工夫、計画性、探求心、創造力、好奇心といっ た人間の生きる力を育てる機会を減らしている。
そんな中、電子制御の最先端を行く計算機には、みずからの頭で考えて 道具を操り、ものが動く仕組みを存分に考えられる余地が残されている。それ がプログラミングである。幸いにして現在では最高のプログラミング環境が無料 で利用できるのが当たり前になっている。プログラミングを通じて問題解決能力 を楽しく磨いていこう。