>プログラミングの適性について

>プログラミングには適性がある、とよく言われる。


これを聞いて、”適性”という言葉の意味を辞書で調べてみた。
     ”適性”   :性格や性質が、その物事に適していること。また、その性格や性質。
     ”適する”:それにふさわしい素質や能力がある。
     ”素質”  :生まれつきもっている性質。


とりあえず適した能力があるか、ってことですね。


これは正しいか……と聞かれると答えられない。
自分がプログラミングを勉強したときのことを覚えていない。誰かに教えられたのか、独学だったのかもわからない(まぁ教えてくれる人は近くにいなかったはず)少なくともその時は”適性があるか”なんて考えずにプログラミングを勉強していた。


後輩を見ていて、「この人はプログラミングに向いていなさそうだ」と思うことがたまにある。根拠はわからない。でも、何となく感じる。


プログラミングは、覚えてしまえばだれだって書ける。もっと言うならば、ネットから誰かのプログラムを探してコピペすれば小学生だって作れる。
でも、そんなプログラミングに意味はあるのか?
数学や物理の問題で、公式だけ覚えて問題がとけるか?似てるんじゃないかなと思う。もちろん覚えれば基本的なことは機械的に解決できる。でも、それ以上伸びないと思う。


僕が思うに、ロボカップレベルのアマチュアのプログラマに必要なのは”やる気”と”発想力”だと思う。


プログラムの基礎というか、根幹のシステムをある程度理解してからでないとプログラムは発展できないと思う。また、C言語を始めたばかりの頃はCUIで文字を表示させる程度のことしかできなくて、ゲームを作りたいとノリで思っただけの人はよく飛ばそうとする。そしてコピペだけの世界に入っていく。
アマチュアといえど、そんな人をプログラマと呼んでいいものか?
そこに耐える、耐えてまでやり遂げようとする”やる気”が最も必要なのではないでしょうか?


発想力については、
僕らアマチュアの世界では、新回路の設計は非常に難解なので、確立された回路をつなぎあわせて設計していきます。それに比べてプログラミングは著作権も存在するほど、クリエイティブな仕事です。なので、発想力はある程度必要だと思います。
与えられた条件から、目的の事をなす。発想力がなければ厳しいかもしれません。でも、これも発想力だけあってもプログラムの根幹、つまりコンピュータの得意/不得意を理解していたほうが圧倒的に有利であり、暗記している人に勝てる大きなポイントでもあります。


故に僕は、
ここまで”適性”という言葉で語られてきた事柄は、”プログラミングに臨む態度”ではないかという結論に達しました。
嫌になりそうになっても飛ばさずに、最初からきっちりやってこそ理解し、応用力のある能力を身につけることができる。そう思います。少なくとも僕は。

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>