エンジニア向け
プログラマになるには?
beko
![](http://nowhere.co.jp/blog/wp-content/mt_data/archives/images/2006/10/16/0.jpg)
一般に、ソフトウェアは、プログラムという「コンピュータへの指示書」を書くことで作られています。
プログラムを書く人はプログラマと呼ばれます。(私もその一人。)
プログラマの能力というのは個人差が大きく、生産性において20倍にもなるといわれていますが、これは他の職種と比較すると非常に極端な開きです。
では何故、これほどまでに大きなばらつきがあるのでしょうか?
原因はいろいろと考えられますが、主なものは次の二点です。
- 新しい分野なので、教育法がまだ充分に確立されていない。
- 個人の感性 (センス) に依存する部分が大きく、マニュアル化が困難。
個人的には、特に 2. の要素が強いと感じています。
例外もありますが、センスというのは14歳くらいまでに固まってしまうようです。
(プログラミングに限ったことではありませんが。)
なので、プログラマを目指す人には、できるだけ早くにプログラミング技術に触れ、これを学んで欲しいと思います。
プログラミングなんて大学に入ってから (就職してから) 学べばいい。
今は学校の勉強に専念してほしい。
と考える親や先生も少なくないようですが、こうした姿勢には反対です。
学校の授業と、プログラミングの修練は決して相反しません。
「論理的に物事を考える」素地は、成績にも間違いなく良い影響を与るはずです。
でも、一番大切なのは「なりたいもの」を見つけることでしょうか。
目標が定まらなければ、センスの磨きようもありませんからね。
GUIも含めて確かに感性(センス)であるとの意見に賛成です。
論理数学的なフローでありながら「書き手」ごとに幾通りもあり正解が無いに等しく、他方では(或いは同時に)絵画的または彫像的な造形美と表現力も同時に求められる素晴らしい分野だと思います。
yumeguri 様、コメントありがとうございます。
感性に依拠する部分が多い職能というのは、プログラマに限ったことではありませんが、プログラムというものがユーザの視点からは見えない (見ても分からない) というのが厄介なところです。一見、殆ど同じように見えるソフトでも、裏側 (ソースコード) から見ると想像以上に大きな違いがあったりします。
ソフトウェアの品質に上限/下限というものがは事実上存在せず、また、その良否を判断する明確な (社会的なコンセンサスを得た) 基準も (今のところ) ありません。そのため、手を抜こうと思えばいくらでも抜けてしまう、という恐ろしい面のある分野でもあります。
Googleがソースコード検索サービスを始めましたね
まぁソースの中身はエンドユーザー「利用者or使用者」は見ないですから
【手抜き】
http://www.google.com/codesearch?hl=en&lr=&q=%E6%89%8B%E6%8A%9C%E3%81%8D&btnG=Search
【You are not expected to understand this】
http://www.google.com/codesearch?q=%22you+are+not+expected+to+understand+this%22