60%の人間はプログラミングの素質がないようだ

このブログ見た
【60%の人間はプログラミングの素質がない】
http://cpplover.blogspot.jp/2012/05/60.html


有名らしい「ふたこぶラクダの論文」(僕はコレを読まずブログだけしか読んでないです><)には、プログラムを学習させた集団には、まったく出来ない、かろうじて出来る、すばらしく出来る、この3つタイプに別れ、そこそこ出来るってグループはいないらしい。で、すばらしく出来るって人達は全体の40%。また、年齢や性別は関係せず、教育方法の変更でも変化はない。(意外と性別関係しないんだ。たぶん好みの問題で女性プログラマが少ないのであって、理解度には影響しないのだろう。)


その才能を見極めるテストとして、簡単なプログラムの問題を出して、問題の解き方に一貫性があると、よく伸びて好成績となる。学習中にテストでは一貫性のない回答をした人でも、一貫性を持つようになると、それなりに伸びるが、元々一貫性があった人達と比べると劣る。






僕が思うに、この一貫性と言うのは、一貫する為の共通要素を見つけ出す為の、分析力のような物が重要なのでないか思ったりする。で、これを学習途中から一貫性のある考え方に変更しても、元々一貫性のあるグループには経験値的に追いつかないだけで、今後は努力次第では抜ける気がする。


要するに、このプログラミングの学習には、メンタルモデルという理解の仕方が重要。僕がたまに言う認知構造がプログラミングに適合してるのかって事だと思う。そういう意味では長い目で見ると、プログラミングを学ぶより、認知の仕方を鍛えた方が良いのかも知れない。

以下、【60%の人間はプログラミングの素質がない】から引用

IBMなどは一度、コンピューターサイエンス科を専攻した集団より、古典を専攻した集団の方が、良いプログラマーを輩出する確率が高いとまで発表した。

これを見ると、古典が認知構造を鍛えるのに良いかは分からないが、もしかすると僕と同じような意味で言ってるのかもしれない。








あと、僕が以前プログラムの研修を受けた事があるのだけど、その時のプログラムが出来ない人達の共通点は、理論的に考える事をあまりしない人達だったように思える。その理論が正しいかは別として、普段からそう考える事が割りと重要だと思う。・・・そういや、院卒の人も基本中の基本が理解出来なかったし、普段適当な事ばかり言ってる人が結構出来たりするから、関係ないのかなぁ。センスの方が重要なのかなぁ。

以下、【プログラマの適性検査 - カレーなる辛口Javaな転職日記】から引用
http://d.hatena.ne.jp/JavaBlack/20120520/p1

人間が持つ「常識」は日常生活においては便利なものだろう.何も考えていなくても,常識に従った行動をすることで理解したフリをしたまま生活ができる.しかしプログラミングはそういった日常のルールとは断絶した,全く異なる常識が支配する全く異なる論理体系だ.日常生活の常識を根っこにして,その上にプログラミング論理を接ぎ木して論理を合成しようと考えると,おそらく上手くいかずに破綻する.その結果は矛盾した支離滅裂なメンタルモデルが構築されて,「全く訳が分からない」状態になるのではないか.

これも考えた。でもそこそこ出来る人にも、割と突っ込んで会話すると、論理が破綻する人も割りといると思って違うかなぁって思ったけど・・・一定レベルの精度まで論理を構築出来るだけの力があると良いと思えてきた。





コードが書けるとしたら、その時点ですでにエリート階級に属しているのである。もし、良いコードが書けるとしたら、指折りのエリート階級に属しているのである。

さて、プログラミングのできる恵まれた諸君に告ぐ。諸君は常人が有していない貴重な才能を有しているのである。諸君は自分の才能を正しく使っているだろうか。諸君の行なっているプログラミングは、本当に自分の人生にとって重要なプログラミングだろうか。

これを見た時に、ちょっと嬉しかった。エリートかぁ〜って(笑)研修中の時に周りは割りと出来てなかったみたいだけど、僕は思ったより簡単だったから。ただ、実際に自分がやりたい事をやろうとすると、かなり難しいし、時間がかかる。覚える事も大量にありすぎて大変。到底プログラミングが出来る人とは言える状態じゃない><研修中にちょっと出来たからと言って、そもそも僕も出来ないレベルに属するのかもしれない。一瞬喜んだ物の冷静に考えると、基準が分からんかった(笑)ただ、分かるのは出来る人ってのは異常な程出来るので、すぐ分かると言う事。





とか書いてるが、最近試しに作ってみようと思ったプログラムが面白くて、自分は本当はプログラムが好きかもしれないと言う疑問まで出てきた。気軽にハイクオリティな物が作れれば、間違いなく好きなんだけどなぁ。時間食いすぎるんだよね。