○○を知らない子ども達
まぁ、多くの場合○○に入るのは、
何らかの技術的な用語で、
語られるのは、
「○○を知らないプログラマは駄目だ」
ないしは、
「○○を知らないプログラマは本質的にプログラマではない」
みたいな論旨なのだけれど、
僕がみた限りWebでもゲームでも、みんな
「どんな面白いサービスをつくるか?」
「どんな面白いゲームをつくるか?」
に必死で
「○○? なにそれ」
みたいな感じだろうと思う。
例えばWebのプログラマだったら、
JavaScriptやRubyを書いたことがあります、
ほらこういう風に格好いいUIなんかも書けます、
という方が評価に直結するだろうし、
ゲームのプログラマだったら、
3Dの小粋なデモでも書けたら「おおすげえ」と言われると思う。
実際、
論理回路、マシン語、Cは見せるところがほとんど無く、
アピールできる層は限られていて、
「そういう意味では」
言語層やハードウェア層は地味で誰にも誇示する事が出来ないどうしようもない層だとも言える。*1
僕だって時折考える。
言語の勉強なんかをするより、
見栄えのするUIや3D技術を探求すべきではないか?
例えば3DやUIの技術はまさに見た目なので、
顧客にも周囲にも一発で理解させることができる。
逆にソースコードやこれらの回路の理解という側面は
周囲に理解してもらうことがとてつもなく難しいし、
時には衝突や軋轢さえ生み出す。
でも、考え直す。
やっぱりさ、
自分が面白いと感じたことしか熱中できないんだよね。
誰かに言われてとか、嫌々何かを学ぶだなんてつまらないじゃないか。
余談なんだけど、
id:neodenjinさんが、
自分が初めて触れたいわゆるLLはJava(しかもケータイのKVM)だけど、表面上はCやC++と記述の仕方は似ていても、特にメモリ周りや処理タイミングの妙な変動があって、中でなにをやっているんだか凄く心配になる気持ち悪さを正直感じていた。
はてなダイアリー
こんな事を言われていて興味深く読んだ。
うん、Javaって十分Lightweightなんだよ、人によっては。
定義や周囲の認識は違うかもしれないけれど、
言語の軽快さなんて相対的なものだ。
それと同様に技術の重要さなんて相対的なものだ。
「マシン語を知らないとプログラミングを本質的に理解したことにはならない」
それは真実でもあり、真実ではなくもある。
だから、
好きな事を好きなだけやれば良いんじゃない?
僕はそう思うし、そう思いたい。
好きだったんだから、それで何かを為すことができなくても、
それでいいじゃない。
役に立つ、役に立たない、そんなことでプログラムをしているの?
*1:shi3zさんは「弊社の入社試験には必ず論理回路の問題が出てくるくらい」と仰っているが稀なはず