April 16, 2007
企業の言語選択は、どれほど人材採用に影響があるのだろうか。
楽天が先日ruby on railsを採用するという話がニュースになった。ruby会議のスポンサーにもなっているようだ。
楽天はJavaとPHPを使っているとのことで、Javaのエンジニアがライトウエイト言語でRubyに行くというのは割と僕も正当なパスだと思うので、基本的に納得である。
最近、一つ納得がいかないのは、オープンソースやらネット上で技術者が目立たないと、まるでその会社には技術屋がいないような扱いになってしまう点。
さらっと見つけてみたのだが、代表的な発言として、404 Blog Not Foundさんの
> 楽天の苦点
そして「中の人」の存在感がほとんどない。これは、ネットならではの事情なのだが、成功しているサイトのほとんどが、何らかの形でその技術力が外から伺えるようになっている。はてなや37signalsのように、中にいる技術者たち自身が盛んに情報発信しているところもあるが、AmazonやYahoo!のように、顔は見えにくくともAPIなどの形で技術は触れるようにしている。Googleに至っては、技術そのものが一番のセールスポイントだ(でも技術者、ではないところがイケテナイのだが)。
楽天には、それがまるで見られない。これでどうやって技術者を確保しているのか私には不思議でならない。まるで技術力がないわけがない。実際に日本有数のサイトを動かしているのだから。それでも、何が楽しくて中で働いているのかが、そとからはとても見えづらい。
技術者が前に出てくる必要ってあるのかな。
まぁそれが結局、人材登用のアピールに必要になってしまったように見えるので、いろいろPRするようになったのが今の楽天のrubyの流れなのかなって見ています。
もちろんrubyにコミットする人材がいたからこそ、なんであって、別に無理矢理やってるとか、そういうことではないでしょうが。
以前、データストレージexpoの基調講演で聴いた限り、楽天のシステム運用は、apcheやmysqlしか使いませんというチープ革命なシステムとは全然違っていて、SIerが企業システムで使っているようなOracleで、ストレージはSANとかNASとか使っていたりと、普段ネットではなかなか目にすることのないけど、世界を普通に支えているシステムで運用されているわけです。
この辺のシステムの特徴として、ノウハウ的な情報が、おもしろいことにインターネットには全く出てきません。
きっと、企業とベンダーの中で問題やノウハウは蓄積されているからなのでしょう。
(SIerさんもお客さんのところに入っているシステムですから守秘義務としてインターネットで良いだの悪いだの語れるはずもなく。)
ただ一ついえることは、金をかけようがかけまいが、どっちにせよ優秀な技術者がいなければ安定したシステム運用ができるハズもなく、そこに優秀なエンジニアはいるハズなのは間違いないということ。
なのに、まるで楽天や昔のライブドアが、技術ないんじゃない?にはじまる、SIer軽視的言論(コンテキスト)が、はてなブックマークを中心とするレイヤーにはびこっているのにずっと違和感を感じてきました。
それは技術がないんじゃなくて、見えてないだけなのに、何故、技術がないと言い切れるのか?
ただ、それもまた一つの世論形成と考えれば、「見えてない」は、よろしくないということで、オープンソースやってます、api公開してます、というのが会社のブランディングとして重要そうというのが現時点と言ったところでしょうか。
ところが、その実、楽天のシステムはオープンソースとはまたちょっと違ったシステムに支えられていて、実はそれが世界の本流であったりもして、このギャップはいったい何なんだ、と。(Unixなのは変わらないので全然違うとは言わない)
そうやって見えないことが悪という風潮が支持されることはオープンソースを進めてきた人からすると、願ったりかなったりという時代と言えるのですが、その主張があまりにも大きく捕らえられすぎているという印象。それはblogというメディアが、チープ革命に支えられているからでしょうね。
でも、うがった見方をすると、ものすごく政治的な印象も。
もし本当に楽天のエンジニア確保に影響が出ているとすれば、すげー無駄なコストを払って人気取りのためにruby on railsやりますとか言ってない?という見方もできる。
デフレと言う名の下で、吉野屋に価格相場をあわせなきゃいけなくなってしまった外食産業と同じようなイメージ。(とはいえ、僕は経済は詳しくないが、一企業努力で実現した安価な牛丼価格が、デフレという現象の旗手のように言われるのは、これもまたよくわからない。経済学も所詮は評論ってこと?)
僕のイメージでは、楽天のシステムや言語の方向性から言って、採用するエンジニアはJavaなどをやってきた企業システムの開発会社経験者かなと思っています。大企業のSIerに勤めていた人も多くいることでしょう。
LAMPをやっているエンジニアの数よりも、遙かに多く人たちが楽天入社予備軍でいると考えられるかもしれないのに、どうもネット上言論の雲行きは違う。
その差異に対してものすごく違和感を感じるんですね。
なお、ちょっと前に物議を醸したサイバーエージェントの社長の発言がありましたが、あれも人材採用には成功したそうで、そこはうまくブログも利用してbuzzを生めって話なんでしょうね。(釣られてますよ。)
確かにブログだけで人材募集ができるなら、人材紹介会社や採用情報の会社にお金を払わなくて良いので、ものすごくコストダウンできます。オープンソースをPRして人を集めるということは、そういうところに繋がってきますね。楽天規模なら、年間で1億円以上はコストダウンになるんじゃないですか?その浮いたお金がLLのイベントに流れるぐらい安いもんでしょう。
話変わりますが、昔、2ちゃんねるや各種ネット情報を見て、VBってダメな言語だってコンプレックスを持ってたんですね。パフォーマンスが低く、ランタイムやDLLのバージョン不整合の問題などが思いっきり嫌われていて、こんなのを使っちゃいけないって本気で思っていました。
ところが世の中のかなりの多くの企業システムはVBで作られていました。
そしてツールとしてのVBはとてつもなく優秀なソフトウエアで、そこで生まれた人材がバカにされるほど優れた抽象化技術を持っていたと考えられます。
それもまた技術のなせる技として、僕等は捕らえておいた方が良い。
で、PHPですが、PHPはWEBのVBですね。
そう考えれば、あのときのVBと同じように揶揄する言論は必ずついてくると言えるでしょう。
トヨタ車が必ずネット上では悪口を言われるのに近いのかもしれません。
でも、僕は以下の理由で、ネットビジネスをするベンチャーにとってはPHPがかなり最強のWEB開発言語だと思っています。
・実行性能
・生産性
・人材確保、育成の容易性
なので仕事のツールとして、今後もPHPから離れることはないと思います。
あるとすればPHP6あたりで、周りの声を聞きすぎたPHP陣営が、PHPの特徴を打ち消すがごとくワケがわからないバージョンアップをしてしまって現場を混乱に落としたときでしょうかね。magic_quoteなくすとかね。僕は使わないけど。
そりゃまぁ細かいことでむかつくことはありますけど、それなりに歴史ある実装は、下位互換性の名の下でワケわからなくなってますよね。そういうのを乗り越えてなんとかするのが技術者。
好きとか嫌いとかじゃなくて、プロジェクトの実現性と合理性、人員面で、もっとも適切な技術選択をして、そこに対応するのが技術者としてのあり方。
個人的好みで、ruby会議に申し込んでみました。やはりJavaやってた人の正当なパスがrubyかなって思うので。これからそこでの話についていけるように勉強します。
ただruby言語は、結構書き方が慣れて無くて、なんだか記述の仕方がVBっぽいところも感じつつ、JavaからPHPという流れよりは文法にクセがありますね。
なので、まずは「たのしいruby」から始めます。
ソフトバンククリエイティブ (2006/08/05)
売り上げランキング: 18798
読みやすく、分かりやすい
本を見てるとプログラミング初心者向きとか書いてあるんですが、プログラミング初心者がrubyなんて使うわけないっつうの、と解釈して、楽しく読めるruby入門本としてここから行くことにしました。小難しい文章を家で読むとすぐ眠くなってしまうので。
Javaのマナ本に近いのかなという印象です。
ここをそそくさと乗り越えて、次は↓を買いますよ。
オーム社 (2006/08/26)
売り上げランキング: 59134
perlもオライリー本から始めたのが失敗でした。オライリー本って、文章のノリがあまり得意じゃないんですよね。週末勉強の教材としては、ちょっと背伸びしちゃって疲れてしまったので、もっと平易な文章から始めたいと思ってます。Perlって歴史があるのと、いわゆる「cgi」の本を買うとユーザーターゲットが全然違ってハマるので「平易で優れた本」の選択が難しそうですが、とにかく文章がわかりやすい奴を探したいです。もしオススメがなかったらマナ本みたいなのを是非、書いてください > Perlの人 and 出版社の方々
と、なんか文章メチャクチャでごめんなさい。
言いたいことがあまり言語化できてないのが原因で、文章が浮き足立ってます。