プログラミング学習は流行るのか


最近、プログラミングを学ぶということに注目が集まっている気がする。

オバマ、ジョブズ、ザッカーバーグが語る「プログラミングを学ぶ必要性」とは【動画紹介】

自分もプログラマーなので、そういった機運が高まっていることは素直に嬉しい。同業者のみでしか共有できなかったあんな話やこんな話が、普通の友人との酒の肴になるなんて、素晴らしいことじゃないか。ユーザー側にも技術的素養を持っていただくことは、ソフトウェア開発における甲乙双方にメリットを産むと思う。そんなわけで、ぜひともみなさんにプログラミングを学んで欲しい。

同時に、とある疑問が頭の中をよぎったのだが・・そもそもプログラミング学習なんて流行るのかな?

そこで自分なりに三日三晩充分な睡眠と食事と共に考え抜き、たどり着いた結論は・・・

プログラミング学習は流行らない

んじゃないかということだ(我ながら悲しい)。もちろん、学校教育の中でプログラミングが必須になるという状況は、将来的にあり得ると思う。でも、街の随所でプログラミング塾が散見されたり、電車の中でええ歳したサラリーマンが『オフィスで役立つ! ExcelVBAテクニック100選!』たる分厚い本を読んだりする状況にはならないと思う。

なぜか? 理由は全部で108個ぐらいあると思うが、面倒なので一つしか書かない。それは、プログラミングすわなちソフトウェア開発は

目的までの道のりが想像以上に長い

ということである。これはソフトウェアが目に見えないものであることに起因すると考えている。

例えば、あなたは今、郊外にちょっと個性的なマイホームを建てたいと考えている。そのことを友人に話すと、

友人「いいじゃん。じゃあ、You自分で作っちゃいなよ!」 ・・・とはならない

それは、『家を建てるのはとても大変なこと』という共通認識をみんなが持っているからだ。

一方で、テレビで料理人が美味しいパスタの作り方を紹介していたとする。友人とその番組を見ていて、

友人「美味しそう! 今晩、ちょっと作ってみない?」・・・とはなりうる

もちろん、プロの料理人にかなわないとは分かっている。しかし、十分に美味しいと言えるパスタは素人でも作ることができるという認識も持ち合わせているはずだ。

ソフトウェアとは形を持たないゆえ、作成するのがどれぐらい難しいものなのか、未経験者にはなかなかピンとこない。最近の見渡すばかりのフリー(無料)な環境下において、その有り難みが薄れているような気がするが、そもそもソフトウェアとは、先の例でいうと『マイホーム』に近いと思う。つまり、作るのがとても大変な方。実用に耐えうる(「住める」「食べられる」)レベルのものを提供するとなると、それはそれは結構な時間と手間を要するもんなのだ。

しかもそのプロセスも実は結構退屈だったりする。しょーもないエラー処理だったり、年に1回しか陽の目を見ないような処理だったり・・・。たぶん、興味のない人にとっては苦痛以外何でもない。

つまり「これぐらいでできるっしょ?」と「実際にやらなければならない量」との間に想像以上のギャップがあるということ。軽い気持ちで山登りに出かけた結果「えー!まだ三合目!? もうヤダ、止める。」と続々下山・・・そんな感じの流れになるんじゃないかと勝手に想像している。

そもそも、過程を楽しめる人じゃないと続かない

ちゅうことなんだろう。しょーもないと思うエラー処理が多数あったなら、

「あーもう、こんなしょーもない処理何回も書きたくないなぁ。。 あ、そうか。だったら、ここをこうやって・・・」

→ 超絶リファクタリング → 悦に入る

とか。そういうの好きな人じゃないと続かない職業なんだろうと思う。だから、流行らないんじゃなかと。

とはいえ、やっぱりプログラミング学習、流行って欲しい。そして周りの人にややチヤホヤされて、「いや〜、俺もかれこれ10年やってるからねえ。俺も最初はさぁ・・」とか言ってみたい。というのはもちろん本当の話だが、それ以上にプログラミングって問題解決能力を高めてくれると思ってて、むしろそちらの方が大事なんじゃないかと思うわけで。