2008年6月23日月曜日

別にRubyが嫌いな訳じゃない

よく最近いろんな人に誤解されているみたいだけど、俺はRubyが嫌いでもやったことが無い訳でもない。

実際、俺はRubyは昔からいじってきた。1.4の頃だから1999年くらいだろうか。
あのときは主にはバックエンドのバッヂ処理とかはRubyで書いていたのだ。
簡単なCGIなんかもerbを使って書いていたのだ。遅かったけど。。
Perlがどうしても苦手だった俺にはRubyは斬新だった。助かった。

その後、同時期かちょっと前くらいに、Linuxのディストリビューションをやっていた関係で、インストーラーの日本語化の際にソースを見る必要があって、それはQTをつかってPythonで書かれていた為に、その頃からPythonも使うようになった。

そうやってPythonの方を使うようになって、あんまりRubyは使わなくなったのだ。
その頃はRubyは入っているもんじゃなくって、コンパイルしてインストールするもんだった。
なんで既にはいっているPythonの方が使い勝手がよかったってのもある。

Rubyの斬新さだとか、簡単なことを簡単にできつつ、しかも、難しいことも簡単にできる素晴らしさに関しては、今でも尊敬のまなざしで見ている。Rubyが好きか?と聞かれれば好きだ、と答えるし、Pythonよりもある意味言語的に一本筋が通っていると思っている。

じゃ、なんでRubyをあんまり使ってないかって言うと、使う機会が無いからだ。
いや、実際にはRuby on Railsのプロジェクトを一個メンテしていて、全く関係ない訳じゃないけど、それはばりばりRubyのコードを書きまくる訳ではない。

Webの開発は職業としてやっているのですが、どうしても顧客の要望がPHPが多い為に、ほとんどPHPでこなしてます。実際にはRuby on Railsをかなり参考にして作られている、CakePHPというフレームワークを使っていくつか開発しており、それで足りてしまう為に、Ruby on Railsをあえて使う必要がないのだ。スピードもRuby on Railsに負けず劣らずな感じで開発できるし、できることにもそう差異はないのだ。

また、実際に私の顧客環境を考えると、わざわざRuby on Railsで開発するといっても、はいそうですか、といって簡単に受け入れてくれる斬新な顧客はそういない。やっぱりちまたではまだまだ、PHPの方が実績がある為に安心して受け入れられている。

たとえRuby on Railsが受け入れられたとしても、じゃ、それを顧客に導入するかと言われると、そうはならない。まだ、Ruby on Railsは運用面において、長時間安定してそれなりのパフォーマンスを維持して運用し続けられるだけの実績が世の中にそうないし、ノウハウもまだ蓄積されていない。

だから賭けでRuby on Railsに入れ込んでもいいが、リスクは自分で追わなければならない。
私は職業開発者だから、複数のプロジェクトを廻している、
その中で、そういった実績の自分で確定できていない物で顧客のシステムが回っているとなると、それに時間を取られる恐れがある。それは自分にとって貴重な資産である時間を浪費することになって命取りなのだ。

こういった感覚も長い開発者経験から来ている。
まだ、tomcatが一般的に使用されていない頃に、ノウハウがたまっていないにも関わらず、若かった俺は顧客のシステムにtomcatを入れたことがある。
そしてそれはそれは運用で痛い目をみた。何日も徹夜することになったし、何ヶ月も引っ張り回され、一年後にはPHPで書き換えになったという経験をしている。

だから、新しい物は、ギークとしての私は当然興味があるしやりたいのだが、職業開発者としての私がそれをセーブするのだ。顧客のシステムで実験しちゃいけないよね。

そういったこともあり、自分の仕事ではPHPが主体なので、なかなかRuby on Railsは触る機会がない。

あとはちょっとした書き捨てスクリプトとかバックエンド処理とかだが、これもなかなかRubyを使う機会がない。ついPythonの方を使ってしまうのだ。Rubyにもirbがあるのはしってるが、なにかると、すぐPythonのインタラクティブシェルかiPythonをたててしまう。これはある意味癖である。仕事の経験上の。
それで仕事がすんなりとおわってしまって、なかなかRubyで書く所までいかない。

じゃ、空き時間は?というと、今はクライアントベースの物の方に興味がある。
サーバサイドは既にフレームワークの確立された世界であり、これから大事なのは、以下に安定かつ確実にサーバ側は運用されるかという所であろう。それにくらべて、クライアントベースの物は、これからまだまだ発展していくぶぶんであり、いろいろと新しいトレンドが細かいタイミングで来る世界でる。

なので、空き時間はObjectiveCを書いたりJavaScriptやCSSをハックしたりしています。

そういったことでRubyの出番が無い訳です。

なので、俺は別にRubyが嫌いな訳でないということだけは言っておきたいと思う。

0 件のコメント: