プログラミングは教わらなきゃできないと思っている人達

ASCIIにJavaの入門書としてはどれが最適か?という対談が載っていた。
http://ascii.jp/elem/000/001/227/1227746/

この中で面白いと思った記述がある


矢澤: 企業の新人研修をやっていると、“ITが好き系”と、“しょうがなくITに入った系”に生徒が分かれるんだよね。新人以外では、“ほかの言語やってた人”っていうのがいる。

鹿野: IT好きの新人っていうのは、学生時代に何らかの言語でプログラミングを自分でやっていた人なのでは?

矢澤: いや、知識も経験も特にないしプログラム書いたことはないけどITに興味はある、という気持ちでIT業界にきている人たちがいるんだよな。新人研修だと、そういう人たちと、ほかに行くところがなくてIT業界に来ましたっていう人たちと、きれいに2つのグループにわかれるんだよ。

「しょうがなく」のグループはまあいいとして、問題は「ITが好き系」である。彼らはぼんやりと「プログラマ」になりたいという思いは持っているものの自分でプログラムを書いたことはない。この根本的な原因は「プログラミングはきちんと誰かに教わらないと出来ない」という思い込みがあるのではないか、という仮説を持っている。

ちょっと前に、Qiitaで「オンラインジャッジサイト一覧」という記事を書いたことがあったが、ここでやっていける人は教えなくても自分でやっていける人だろう。
http://qiita.com/shibacho/items/20f6eee42083c620b556

こういうサイトを見るにつけ、今は事情が恵まれてるなと思っていたのだが相変わらず状況は改善していないようである。プログラマとして仕事をしている人は多かれ少なかれ独学で本を読んだり、サイトを探していたりしていると思うが*1、そうなるためのステップとしては「誰かに教わらないと出来ないのでは?」という思いが根強くあるのでは、と思う。

昔はベーマガなんか読んで写経のようにプログラムを打ち込んでいれば、プログラムの構造はある程度わかったようなもんだが、今はちょっと複雑化しているし昔と違っていきなりBASICが立ち上がったりすることもない。必ず標準で入っているプログラム処理系としてJavascriptが挙げられることもあるが*2JavascriptCanvasでお絵かきといってもBASICのLINE文ほど気軽にかけないし、基本コールバック関数だから若干敷居が高い気がする。

それはさておき、こういう「なんとなくプログラミングやってみたいけど教わらないと出来ない」と考えてる人達にたいして「そうじゃないんだよ」と伝えるためにはどうしたらいいんだろうか。「○○の始め方」で検索すると山のように引っかかるが、多分彼らが求めているのはこういうハウトゥじゃないんだろう。そもそも開発環境整えるので疲れちゃうって説もある。「Androidアプリ作るからJavaやらなきゃいけない」と考えている人はモチベーションがあるからかなりいい方で、その他の人達にはどう言えばプログラマになれると伝わるのだろうか。

プログラミングは敷居が低い。パソコンとインターネットさえあれば、「自分はプログラマだ」と思った瞬間に必要な情報はすべて手に入る*3。ここまで言って上のオンラインジャッジサイトやってごらん、といってもやらない人は多分やらないだろう。もうそういう人は無理なんだろうか。

私自身は大学時代に習作として非公開ではあるがDDRのクローンゲームを作って、プログラミングってやれば出来るじゃん、と思ったクチである。一回こういう成功体験があれば全然違うんだろうが…
なんてことをつらつら考えたのでした。

*1:Stack OverflowやプログラマQ&Aサイトのコード片のコピペで日々を凌いでいる人を除く

*2:https://www.pitecan.com/papers/ProSymSummer2006/ProSymSummer2006.pdf (PDF注意)

*3:書かれるコードの品質の良し悪しはあるが、それはまた別の話