PR

 人工知能(AI)を実現する機械学習、仮想通貨を支えるブロックチェーンといった新技術が注目を集めている。これらの技術は複雑なため、表面的な理解にとどまりがちだ。きちんと理解するには実装に立ち入って動きを追う必要があり、そのためにはコードを読み書きする力、すなわちプログラミングの能力が必要になる。

(出所:123RF)
(出所:123RF)

 とはいえ自分自身、最近はほとんどプログラミングをしていない。これでは最新の技術についていけないと反省し、プログラミングを復習し始めた。会費を払い続けたまま放置していた学習サイトで少しずつ問題を解いている。

 プログラミングは2020年に小学校教育で必修化されることもあり、世間の関心は高い。2018年11月には日本商工会議所(日商)が「日商プログラミング検定」を2019年1月から始めると発表した。日商は「進展するIT社会に対応した基礎的なプログラミングスキルの習得は、今後、全ての企業人に求められる素養となる」としている。これまでプログラミングに縁がなくても「始めてみたい」と思っている人は多いのではないだろうか。

 ただ、初心者向けの記事や解説書を読むと、気になる記述にしばしば出くわす。「プログラミングはそれほど難しくない」「プログラミングは子供にでもできるくらい簡単だ」といった内容だ。

 こうした文章を書く気持ちはよく分かる。プログラミングを「えたいが知れない小難しいもの」と思っている人に対して、「怖がる必要はないよ」と訴えたいのだろう。私も過去に初心者向けプログラミング雑誌を作っていたとき、こうした表現を使った覚えがある。

 もっとも「易しい」こと自体はプログラミングのメリットではない。「役に立つ」「楽しい」という理由でプログラミングを始めるのは理解できる。しかし、「易しい」ことは単に学び始めるハードルが低いことを表しているだけだ。最初からやりたいと思わない人には、易しさを強調しても始める動機にはならない。

コピペプログラミングでは力がつかない

 むしろ「プログラミングは易しい」と強調すると弊害が生じると考えている。弊害は主に2つある。

 まず、プログラミングに対して誤った姿勢を持ってしまう懸念がある。いわゆる「コピペプログラミング」で満足する恐れがあるのだ。

 特定の動作をするプログラムを作りたいときに、インターネットで検索する人は多い。検索で引っかかったページにサンプルコードが載っていれば、そのコードをコピー・アンド・ペーストするだけで、目的のプログラムを作れるケースもある。望むように動かない場合でも、当てずっぽうで値を変更したりすると動くようになる場合が多い。これがコピペプログラミングだ。