Java使う人には比較的有名かもしれない「ひが」なんとかさんという人がいて、NTTデータとかどこかの大きなSIer(笑)の人が言った「誰でも同じコードが書けるようにするために、、、云々」という言葉を批判していたりする。ひがなんとかさんは、「そもそも、誰でも同じコードなんてかけやしない。」といったことを書いていた気がするのだが(ソースを探さないなんて怠惰)、実際それはそう思う。
まぁ、何でもそうだが、いけてるコードというか、スマートなコードを習いたての新人君が書けるわけもなく。プログラミングには職人的なところがたくさんあるから。どんな言語にしろ、バージョンが上がるたびに新しい構文やら関数(APIというのかな?)が追加されたりで、それというのには理由があるのだが、その背景までわかるのには新人君には無理。期待していないが。
で、やっとフレームワークの話になるのだけど、最近は「フレームワークなんていらないじゃん。」と思うことも多い。それっていまのところ自分プロジェクトで収まる規模限定なのだが、つまり、誰も私のコード見ないし、引き継ぐつもりもないし、メンテナンスは私が死んだらおしまい、というもの。フレームワークのしばりに耐えながらものを作るのって苦痛でしょ。自分プロジェクトでそんなことしたらもう、最悪。
最近触っているteedaとか、これなんて、自分プロジェクトじゃ使いたく無いかな。使い始めちゃって使ってるけど。teeda知らない人にはわからんのだが、htmlのページベースの開発は発想としては素晴らしいのだけど、それはお客様あってのものだし、そもそも、ビューがjavaに縛られるのが、苦しすぎる。<%=hoge%>とか書いちゃいたいね。フレームワークとしては美しくないとか、MVCモデルが云々とか、デザイナーとの分業とか言うけど、それは必要なときにそうすればいいわけで。
最近何でもかんでも、「MVCモデルになってません。だからだめです。」「デザイナーがコードを触ってしまいます。だからだめです。」と、返して、思考停止しているエンジニアが多すぎでは?
話は飛ぶけど、ベンチャー企業はスピードが命でがつんと面白いサービスを投入して、ネタでもいいから目立って、打ち上げ花火的に動くべきでしょ?最初から10憶ぐらい集めてできる会社はMBOじゃなくて、MBAホルダーさんを集めて楽しくやってください。そうでないなら、もっとゲリラでやらないと。そこらへんの素敵な教育を受けたエリートエンジニア?っていうのかなぁ、が、「社長それじゃだめです。」とか、もう聞きたくないし、耳ふさいじゃうよ。社長目を覚ましてって感じ。
数千万円なんてすぐなくなるよ。フレームワークにこだわってないで、コードを書こうよと。CTOの肩書き付いてる、そのエリートエンジニア首にしちゃいなよ。害だよ害。そういうやつは、開発途中で出てきた新しいフレームワークを採用しなおすかどうか悩んじゃう奴だからだめだよ。悩む暇あったらコード書かなきゃ。
美しいというかスマートなコードは否定しないのだけど、フレームワークのおかげで止まっていることもあったりして、とりあえずコードを書こうよ。フレームワークは楽しいけど、そんなにいいことばかりじゃないよ。