技術が邪魔をする…?

http://d.hatena.ne.jp/ryoasai/20110113/1294928909


かなり話題を呼んだ
http://d.hatena.ne.jp/ryoasai/20110109/1294581985
の続きのエントリ。


エントリそのものは前向きでよいと思いますが、コメントがなんか少し後ろ向きで気になった。

私としては、今までSpringやJavaEEなどに対してしてきた膨大な勉強の投資のこともあるので、ゼロベースで新しい技術を吸収して、新しい仕事をするという自信がないというのも正直ありますね。最新の技術の変化についていけないところもあります。

技術そのものと技術をどこで使うかってのは直接的なつながりはないですね。

なんでJavaEEの技術をベースにソーシャルアプリ作ってもよいし、実際作ってるところもかなり多いはず。たとえばJavaEEの1技術であるServlet APIまったく知らない人との勝負なら圧倒的に有利ですよね。あちらにはクライアントサイドの技術に明るくてもサーバーサイドの技術がいまいちという人も少なくないと思います。

ソーシャルアプリは運用が必要です。そこでJavaEEの技術は無駄にはならないと思うのです。たとえばユーザーからの問い合わせフォームやポータル、コミュニティ洋画面や各種DBメンテナンス画面などアプリの外側で定型的なものは結構あります。そういうところでアクションベースでいちいち書いていたらいくら作業効率がよくてもコストばかりかかってしまいます。そういうのはJSF 2.0 + JPA 2.0 + CDI/EJB 3.1などでさくっと作ってしまったほうがいいですよね。もちろんSpring使ってもいいですし、ICEfaces使ってもかまいません。

要件さえ満たせば。

SIはサービスを行う客にサービスのサポートをするお仕事です。ですから、客の都合でフレームワークや運用環境が決められることが多いです。一方で自分でサービスを始める場合すべて選択は自由です。結果さえ残せればいいのです。今まで培った得意な技術で全力を出せるということです。


なんて書くと夢のような世界に思えるかもしれませんけど、今までは「こっちは接客のみやるんで、そちらにシステム開発おねがいするよ」、といった分業を行っていたに過ぎません。行き着く先にはどちらもエンドユーザーがいます。

分業をしないことによるメリットもデメリットもあることでしょう。すべて一括でやるということは、たとえば宣伝等も自分でやらないといけないということです。運用や技術だけ追っかけていてもだめなのです。顧客の反応をダイレクトにうけとれるということに楽しみがいがあるという人もいれば、いやだな、裏方がいいなという人もいるかもしれません。そもそも会社組織というものが分業のために人格を作るということなので今までの分業も別に不思議なことでもないですね。小さい会社の人員はわりと何でも屋にならざるを得ない状況になりやすいと思います。


技術はどこでも使われるものです。マイナーだろうがメジャーだろうが技術を持っていて損をするなんてことは一切ありません。どこでその技術を持って勝負をしたいか、というだけなのです。他のエントリを見る限りid:ryoasaiさんの技術力は異様に高いですし、どこでも食っていけるでしょう。


ちなみに拙作のmixiアプリColorBlockも今開発中のやつも、その次のやつもクライアントサイドはJava言語です。Javaの技術が生きてきます。サーバーサイドもGlassfishで動かしてJAX-RS + JPA + Amazon SimpleDBあたりになるでしょうか。JavaSE、JavaEEの技術は生きていますよ。JavaEEの技術があるから…というのは理由になりませんよね。