http://anond.hatelabo.jp/20070802021749
理由2: プログラミングは食べてける程度には儲かる
種明かしをしよう。
"ゼロから"
CPUの設計ができて、プログラミング言語を設計し、コンパイラが書けて、OSを載せて、
その上で例えばレイトレーシングを動かせるくらいの力量がつく。
が、しかしそれらは全てやり方さえ知ってれば普通の高校生でもできる。
簡単なことを単語を難しくかえて書いただけだ。
C言語をマスターしてるかどうかを低レベルな話なんていってるほうが低レベルである。
C言語って意外と奥が深い。C99なんてもう何が何だかさっぱりだ。
4年生の卒論でやるのは、例えば、とあるLISP処理系のGCを、
ある仮説を立てて、その仮説のもとで最適なアルゴリズムを設計し、
実際に処理系に組み込み、仮説が現実にどれくらいあっているかを検証することで、
そのアルゴリズムの良さを測る、といったレベルだそうだが、これは平たく言えば
「ご本に書いてあることをその通りやって、キッチンタイマーで時間はかったら短くなりました!」
というレベルだ。卒論なんて東大といえどもそんなにレベルは高くない。
上記のことは普通のプログラマーなら半年も訓練してれば簡単なことである。
また、ここで注意していただきたいのは、プログラミングなんて誰がやっても同じということだ、
という奴がかくコードは非常に雑であることが多いと言うことだ。
機械語を書く際の冗長な作業を軽減するためのプログラミング言語であり、
もっともプリミティブな部分が定義されていれば、あとはそれを別表現で定義すればいい。
だが、対象を別の対象へ写像して調べる表現論というのものは、数学の1分野にもなってる
ぐらい複雑な分野で、これを中学生でもできるとかいってる人の底の浅さがうかがい知れる。
銀行で使われている静脈認証、
DNA解析、
http://ibisforest.org/index.php?FrontPage
だが、開発をしてる東大生も意外と多い。
そして、こういうことを仕事にすると、
もちろん、全くコードを書かないわけではない。
誰がやっても同じ部分であるプログラミングは外注する。
R&Dが高給だと思ってる人は一回民間に就職してる人に
聞いてみよう。給料はほぼ同等か少し高いぐらいで
だけど、設計と吠える人ほど設計センスがないという現実がある。
本当に難しい部分の設計というのは、例えば、NTT Dataにいる東大生が丸投げしている。
他にも大規模システムの例はいくらでもある。
だが、別に東大生だけがやってるわけではない。NTT Data、日立、JR等は東大生の
推薦枠が大きいので東大生が多いだけである。特にNTT Dataは東大生は
推薦がとれなかったら学歴逆フィルターで落とされることが多いのも有名である。
だがどっちにしろ重要なのは、この辺の企業がほんとに重要な部分を設計
してるのではなく、丸投げしているということ。
上の文章は特に誇張してません。
東大にいる80%の人は本気を出せばそれくらいのポテンシャルがある。
だけど、同様に一般人の78%の人も本気を出せばそれぐらいのポテンシャルはあります。
上位5%は常に本気。こういう人はほんとにすごいです。
でも下位95%はやる気がない。4年次に行列式の定義とか聞くと答えられる人はほとんどいません。
アメリカへつれていき、いきなり英語でスピーチをさせたら無難にこなすレベルもいるけど、
語学は人による差が激しいのでなんともいえません。
あとは・・・C言語をマスターしてるレベルといったら、東大の工学部を連れてくると、丁度いいかもしれない。
だけど、文系の人はC言語なんて教えてもほとんどわかりませんよ。
そういや東大の教養課程で扱うプログラミング言語がRubyになるらしいね。LLの適度なヌルさは教育向きだと思う。