続広報誌の記事
広報誌の記事を書くためにやったこと。
①後輩に頼んでRubyやRailsの社外実績を調べてもらう
島根県や松江市での取り組みとか、
楽天やカカクコムの食べログの事例などがでてきました。
■Rubyの業界としての注目度
2007年に入ってからのニュース
・2007/02/28 ニフティ
多様なニーズに対応できる柔軟なサービス開発手法が求められる中、
新サービス「@nifty TimeLine」の開発で「Ruby on Rails」を採用したと発表
・2007/03/15 楽天
インターネットサービス開発の生産性をさらに向上させることを目的とする「Rubyプロジェクトチーム」を立ち上げ、
自社が提供するインターネット・サービスの開発手段として、「Ruby on Rails」(RoR)を採用すると発表
・2007/03/16 日経BP
2007年「日経BP技術賞」大賞は「プログラミング言語 Ruby 」
・2007/07/24 Rubyビジネス・コモンズ設立準備委員会、
プログラミング言語"Ruby"およびフレームワークである"Ruby on Rails"をビジネスに適用する際に
必要になるさまざまな知識を共有することでRuby関連ビジネスの活性化を目指す「Rubyビジネス・コモンズ」
を7月31日付けで設立することを発表
・2007/7/27 Rubyアソシエーション
Rubyの開発者であるまつもとゆきひろ氏と、同氏が所属するネットワーク応用通信研究所(NaCl)、
Rubyの普及促進を目的とした新法人「Rubyアソシエーション」を設立
・2007/09/17 日経地域情報化大賞2007
大賞にはオープンソースソフトウエア(OSS)の拠点づくりを進める
島根県松江市の「Ruby City MATSUEプロジェクト」を選出
・2007/10/01 テクノプロジェクト
「Rubyの普及を目指した自治体基幹業務システム構築」をテーマに
松江市向けに業務システムを構築し、実証実験を開始すると発表
・2007/10/22 カカクコム
ソフトウエア・プラットフォームとしてRuby on Railsを採用し、全面リニューアルしたと発表
2007年9月末時点のサイト利用者数は月間約380万人、月間ページ・ビュー(PV)数は約2900万PV
大手企業も注目し、大規模サイトでの利用も始まっています。
②JavaとRubyを比べてみよう作戦
手軽なところで、Googleの検索結果数比較をしてみることに。
結果は意外な感じ。いまいち使える数字ではない模様。
(Rubyがかなり普及してきていると言えるような言えないような。)
- Googleの検索結果(日本語) 2007/10/25
③本を読んでみる
『JavaからRubyへ ―マネージャのための実践移行ガイド』という本買ってきた。
- メモした内容(ページ数とか若干あやしいところあるかも。適宜言い換えてる言葉あり)
- p8 :生産性高い
- p19 :Javaは像撃ち銃
- p25 :JavaはRubyに比べてコードの長さが2〜4倍。短いほうが保守コスト低
- p26 :生産性比較。他の静的言語(Cとか)と比べてもJavaは生産性がひくい。
- p37 :メタプログラミングの効果。生産性の向上が複利的になる
- p40 :Javaは非本質的複雑性が大きく生産性が低い
- p42 :JavaからRubyにビジョナリー達が移っている
- p48 :Rubyはコード行数が少なくて済む(実例あり)。バグが少なく保守しやすい。
- p56 :規模拡大で生産性が低下する
- p56 :インターフェースの遵守はすばやいビジネス変化に対応しにくい
- p58 :大人数⇒Rubyによる生産性向上⇒少人数⇒トッププログラマを雇える⇒さらに少人数でOK。Less is more.
- p59 :ソフトウェアは稼働してこそ価値がでる。(開発中は価値がない)。より早く実稼働できれば価値が高まる。生産性の高い言語で、クリーン&シンプル化して、価値を順次提供できるとよい
- p60 :Javaはもっと素朴なテクノロジで良いところをエンタプライズフレームワークを使うように働きかける
- p62 :Rubyはインストールも楽。Javaの選択肢の多さはトレードオフあり
- p64 :Rubyは表現力あり、読みやすい⇒保守しやすい
- p70 :Javaはインフラストラクチャ構築用言語
- p74 :少人数で技術スタッフに決定権がある小規模チームは動的言語の強みを活用できる
- p99 :オープンソースを使うLAMP.Rubyもその一部
- p106:Railsの強み。生産性の高さ。ここの革新的機能の積み重ねもあるが、フレームワークとしての統合の生み出す相乗効果が大きい
- p112:RubyはWebアプリなど迅速な開発向き
- p144:Rubyは多言語との統合手段も多い
- p148:Rubyの場合は、Javaに比べ開発者が1/3か1/4ですむ
まとめると、
表現力が高く、ソースコードが短くて済む
⇒生産性が高い、保守性が高い
⇒Javaに比べて少人数でOK。コミュニケーションロスなども減ってさらに効率UP
⇒すばやいビジネス変化に対応する、Webアプリケーション開発には適している
という感じなのかな。
うーん。いまいち弱いなぁ。
最近のSeaser2とかの話を聞いているとホットデプロイがあったり、XMLでなくCOC的な考えがあったり
(さらに進んで、流れるようなインターフェースっていうのもあるらしい)して、
RubyとJavaって近づいているのかなとも思えたり。
Ajaxへの対応とかもいろんな言語で始まりつつあるようだし。