人気アプリ開発者の鶏肋さんによるコラムです。非SEさんでも理解が進むように企業買収の視点でみたプログラミング言語Rubyの特徴について解説してもらいました。
Ruby(ルビー)は、まつもとゆきひろ氏により開発されたプログラム言語(オブジェクト指向スクリプト言語)です。オブジェクト指向の言語といえば、CやJavaなどもありますね。RubyはWebサービス開発によく使われており、クックパッドや食べログ、GunosyなどもRuby製です。筆者の周りでもRubyを使っている技術者は多いので、彼らにRubyの特徴を聞いてみました。
「Rubyは柔軟である」
「Rubyは楽しく書ける, 書いていて気持ちがいい」
「Rubyは日本人が作った言語であり, 日本語の情報が多いので学習しやすい」
「人気言語なので, 採用で人を集めることが可能」
「Ruby on Railsというウェブフレームワークの生産性が高い」
特に最後のコメントにもあるとおり、「Ruby on Rails」というフレームワークの存在感は高く、Ruby開発者のほとんどはRailsを使っているような印象を受けます。「Ruby web開発」でネット検索すると、検索結果の多くが Rails に関する情報であると実感していただけるのではないでしょうか。
冒頭で述べたように、日本国内ではクックパッドや食べログなどの有名サイトが、 Ruby(Rails)製です。他にもRuby Kaigiのスポンサーや、Ruby bizの受賞プロダクトを調べていただくと、Rubyが多様なサービスの開発に使用されていることが分かっていただけると思います。海外のサービスでは、AirBnBやGitHubなどがRuby製です。
国内でRubyを使用している有名なサイト(サービス)
・クックパッド
・食べログ
・Gunosy
・Smartnews
・Wantedly
・マネーフォワード
・Crowdworks(クラウドワークス)
海外でRubyを使用している有名なサイト(サービス)
・AirBnB
・GitHub
・Hulu
・SlideShare
・heroku
以上の例から、多くのIT企業がRubyを使っているということが分かっていただけたのではないでしょうか。使用している企業が多いのでM&A(企業買収)ニュースの中でもRubyを使用サービスを目にする機会は多いです。
2014年10月に、DeNAがperoli(Meryを運営)とiemoというWebメディアを買収しました。いずれも「キュレーションメディア」という分類のメディアです。買収元企業がDeNAという大企業であったことと、買収額が2社あわせて約50億円という高額であった等の理由で話題となりました。
この時期、高い採算性と買収によるイグジットの可能性への期待が高まり、DeNA以外にも多数のキュレーションメディアが乱立しました。そうしたメディアの開発にもRubyは使われています。流行りのサービスを素早く模倣するため、生産性が高いRubyを使ったのかもしれません。
しかしその後、ご存知の通りキュレーションメディアは「無断転載」や「内容に誤り」等の批判を受けるようになります。Mery、iemo、WELQ等のメディアは現在非公開となっていますが、こうしたモラルや遵法意識の欠如はRubyの特性ではなく、人間の特性であるとひとこと申し添えたいと思います。
少し古いニュースですが、2011年1月にセールスフォース・ドットコムがherokuを買収しました。以前からセールスフォースはクラウドサービスとして、基幹業務システムやポータルサイトなどを簡単に作れるforce.comというPaaSを既に提供していました。
PaaS(Platform as a Service)という言葉は聞き慣れないものかもしれません。厳密に説明すると長く複雑になりますが、ここでは「PaaSを使うと簡単な操作でソフトウェアやアプリケーションが作れる」という理解でよいと思います。
セールスフォースが従来提供していたforce.comには、大きな特徴があります。それはソフトウェア作成に独自言語・独自手法を用いるということでした。
一方でオープンな開発環境は日々進化し、開発者がより素早く、より安全に、ストレス少なく開発できるようになっています(ちなみにこれらを実現できる仕組みを「モダンな開発環境」と言うことが多いです)。Ruby等のオープンな言語は使用者が多く、それだけに進化のスピードも速いといえます。
おそらくforce.comは、独自言語を用いるデメリットが目立つようになり、このデメリットを埋めて「モダンな開発環境」を提供したいというのが、セールスフォースがherokuを買収した理由のひとつではないかと筆者は思います。
素早く安全にストレス少なく使えることは、利用企業の経営者にも開発者にも歓迎されるでしょう。またRuby, JavaScript, Java等の言語が使用可能であり、独自言語より開発がしやすくなっています。
モダンな開発環境に関連するニュースといえば、先日Oracle(オラクル)がWerckerを買収しました(米国時間2017/4/17)。Werckerは継続的インテグレーション(CI)ツールです。前述の「モダンな開発環境」には継続的インテグレーションが含まれます。このように「モダンな開発環境」導入の動きは大きなトレンドになると思われます。
注「継続的インテグレーション、CI(英: continuous integration)とは、主にプログラマーのアプリケーション作成時の品質改善や納期の短縮のための習慣のことである。特に、1990年代後半以降の開発においては、継続的インテグレーションをサポートするソフトウェアを使用する傾向が強まってきた。(以上、Wikipediaより引用)」
企業買収の視点からRubyについて説明しましたが、以下のような特徴を理解していただけたかと思います。
・Rubyは人気言語であり開発効率がよい。
・Rubyは世界的なトレンドである「モダンな開発環境」と親和性が高い。
とはいえこれはRubyの特徴の、表面のごく一端にすぎません。もしRubyに興味があればぜひ触ってみてください。2日間以上の学習時間を捻出できる方は、Ruby on Rails チュートリアル (https://railstutorial.jp/) をお勧めします。個人差はありますが、2日間で全14章中の最初の1章を習得できるのではないでしょうか。1章だけでもRailsの魅力に触れられるかと思いますので、ゴールデンウィークに挑戦してみてください。
文:鶏肋 /編集:M&A Online編集部