RubyとRuby on Railsは、初心者の方にもおすすめされるプログラミング言語とフレームワークになっているため、名前を知っている方も多いかと思います。しかし、それぞれの特徴や作られたサービスなどは、ご存じない方もいらっしゃるのではないでしょうか?
そこでこの記事では、それらの情報に加え、Rubyの情報コミュニティについてもご紹介しています。ぜひともご確認ください。
Contents
Rubyの特徴
Rubyは日本人のまつもとゆきひろ氏が、1995年にリリースしたオブジェクト指向のスクリプト言語です。オブジェクト指向とは、『役割を持ったモノ』を組み合わせ、全体を開発していく概念(考え方)のことをいいます。オブジェクト指向の言語は、モノを定義し役割を与えることで効率的な開発をすることができるようになっています。
スクリプト言語とは、コードの記述やプログラムの実行が簡単にできる部類のプログラミング言語の総称です。スクリプト言語に厳密な定義はありませんが、プログラムの実行をする際、コンパイルというコードを機械語に翻訳する手順が不要で、プログラムを順々に実行していくものが多くなっています。Ruby以外のスクリプト言語には、JavaScriptやPHP、Pythonなどが該当します。
また、実際にプログラミングをする際は、『変数』という値を入れておく箱のようなものがあり、たとえばRubyでは、 name = TechReach という変数を定義すると、 puts nameと出力した際に TechReach と表示されるようになります。変数を利用しないで TechReach と表示させたい場合には、その都度 puts “TechReach” と出力しなければならないので、 name = TechReach という変数を定義することによって、同じ処理を繰り返しおこなう手間を省くことができます。
加えて、Javaでは変数を利用する際に、String型やint型といった『データ型』と『変数名』、『;』が必要になり(例 String name ; )変数を扱う際はこれらのような『変数宣言』をしなければなりません。しかし、Rubyは変数宣言が不要になっているため、Javaに比べると簡単に変数を利用することができるという特徴があります。
開発案件ではRuby on Railsがよく用いられる
Rubyが世界的に利用されるようになった背景には、Ruby on Railsという効率性の高いフレームワークが起因しています。(フレームワークとは、開発をするために必要な枠組みが用意されているもので、プログラミング言語をそのまま利用するよりも、素早くシステムを作ることが可能になります)
そのため、Rubyの開発案件では、Ruby on Railsのスキルを求めるものが非常に多くなっており、Ruby案件全290件のうち217件、約75%がRuby on Railsが関係してくるものです。(2022年10月現在)
また、RubyやRuby on Railsの案件についてまとめている記事もありますので、よければこちらもご確認ください。
関連記事:RubyやRuby on Railsの案件数・特徴・単価相場について
Ruby・Ruby on Railsでできること
Ruby・Ruby on Railsでできることを3つご紹介します。
業務用アプリケーション開発
業務用アプリケーションとは、企業の業務を効率的に管理をするために開発されたアプリケーションのことをいいます。営業管理や在庫管理、人事給与のシステムや、社内専用のSNS、スケジュール管理ツールなど、開発できるものはさまざまです。
RubyやRuby on RailsはWebアプリケーションの開発が得意になっているため、Web上で動作をする業務用アプリケーション開発もすることができます。
CMSやECサイトの構築
CMS(Contents Management System|コンテンツ管理システム)とは、WordPressやDrupalといったWebサイトを簡単に作成できるシステムのことをいいます。WordPressとDrupalはPHPで作られたCMSですが、RubyでもCMSを作成することが可能です。実際に、RefineryCMSやWheelhouse CMS、NestaといったRubyで作成されたCMSも存在しています。
ECサイトとは、インターネットを使ってモノやサービスを販売しているサイトのことをいい、AmazonやYahoo!ショッピングなどのモール型と、UNIQLOや無印良品のように自社商品を販売する自社サイト型があります。Rubyは、上述したようなCMSやECサイトの開発もできるプログラミング言語です。
Javaライブラリの利用
Rubyでは、『JRuby』というフリーソフトウェアをダウンロードすることでRubyのソースコードをJVM(Java Virtual Machine|Java仮想マシン)で実行することができるようになります。JVMは、OSやソフトウェアなどに依存しないクロスプラットフォームになっているため、Rubyで作成したプログラムは理論上、JRubyを使えばどこでも実行できるようになる、といった具合です。
また、JRubyではRubyで実装されたコードにJavaのライブラリを利用することもでき、JavaとRubyのコードを双方向に利用する、Javaと同じようにコンパイルをして実行する、といったことも可能です。加えて、JRubyではRuby on Railsも使えるようになっています。
Ruby・Ruby on Railsで作られたサービス
Ruby・Ruby on Railsで作られたサービスを7つご紹介します。
GitHub
出典:GitHub
GtHub(ギットハブ)とは、『Git』というバージョン管理サービスを利用したツールで、『リポジトリ』という機能を利用してバージョン管理をしたり、自分で作成したソースコードを公開するなどして、SNSのように利用することもできるようになっています。GO言語やJavaも利用されているようですが、主な機能はRuby on Railsで開発されています。
また、GitHubについては以下の記事で解説していますので、よければこちらもご確認ください。
出典:GitHubを転職時に有効活用するには。評価ポイントや注意点を解説
Shopify
出典:Shopify
Shopify(ショッピファイ)は、オンラインストアなどのECサイトを簡単に作成できるプラットフォームです。自社オリジナルのECサイトを開発する際は、プログラミング言語を利用してシステムを開発し、ECサイトの情報を提供・管理するためにWebサーバーや、Webアプリケーションサーバーを準備する必要がありますが、Shopifyはそのようなことをせずとも自社のECサイトを作ることができます。
また、Shopifyの開発にはRuby on Railsが利用されています。
Kickstarter
出典:Kickstarter
Kickstarter(キックスターター)は、米国のクラウドファンディングサイトです。Kickstarterのクラウドファンディングを通して3Dプリントやレーザー刻印、CNC彫刻ができる複合プリンター型の『Snapmaker』や、サイコロ型デスク玩具の『Fidget Cube』といったサービスが生まれました。KickstarterもRuby on Railsで実装されています。
Twitch
出典:Twitch
Twitch(ツイッチ)は動画配信(ライブストリーミング)用のプラットフォームです。配信者はゲーム、エンターテインメント、スポーツ、音楽などを主なコンテンツとしています。開発当初はRuby on Railsで実装されていましたが、現在はGO言語やJavaScriptライブラリのReactが利用されています。
Soundcloud
出典:Stream and listen to music online for free with SoundCloud
SoundCloud(サウンドクラウド)は、ドイツの音声ファイル共有サービスです。ユーザーは、音楽やラジオ(ポットキャスト)を投稿でき、他のユーザーはそれらを聴くことができます。日本ではあまり知られていないかもしれませんが、世界的に利用されており、有名ミュージシャンも曲を公開しています。また、SoundCloudも、Ruby on Railsで実装されています。
Couchsurfing
出典:Couchsurfing: Meet and Stay with Locals All Over the World
CouchSurfing(カウチサーフィン)とは、カウチ=ソファでサーフィンをさせてもらうという意味で、旅先で無料でホームステイをしたい人と、ホームステイ先のホストになりたい人を、マッチングさせるサービスです。世界各地の20万以上の都市で、1400万人を超える登録者がおり、『まだ会ったことのない友人と家を共有したい』という考えのもと創設されました。CouchSurfingも、Ruby on Railsで実装されています。
Decidim
出典:Decidimは市民参加のためのデジタルプラットフォームです
Decidim(デシディム)は、スペインのバルセロナで2016年におこなわれた市議会の自治体行動計画を、市民参加型の共同設計にするために開発されたデジタルプラットフォームです。
Decidimでは、投票や討論、協議、自己組織化などの政治プロセスを市民参加型でおこなうことにより、柔軟で透明性のある民主主義のシステム構成を実施できるよう配慮されています。世界の30を超える自治体で利用されており、日本では、兵庫県加古川市が国内で一番最初に市政に導入をしました。また、DecidimもRuby on Railsで実装されています。
Rubyの情報共有コミュニティ
Rubyの情報共有コミュニティとして、メーリングリストと日本Rubyの会をご紹介します。
メーリングリスト
Rubyを利用してプログラミングをする人たちが、情報交換をするためのメーリングリストです。 プログラミング時の疑問点についての相談や、Rubyを利用したアプリケーション、ライブラリなどのリリース情報、Ruby関連イベントの紹介などがおこなわれています。
日本Rubyの会
出典:日本Rubyの会とは
日本Rubyの会とは、RubyやRubyライブラリの利用者・開発者を支援する一般社団法人で、上記画像にあるような活動をおこなっています。なかでも、 『RubyKaigi』は、世界最大級のRubyの国際カンファレンスとなっており、2022年9月8日~10日におこなわれた『RubyKaigi 2022』では、 Rubyを開発した、まつもとゆきひろ氏の登壇や、上述したShopifyのエンジニアによる講演会もおこなわれました。
また、日本Rubyの会はメーリングリストへ登録をすると、会費徴収なしで会員になることができるようになっています。
まとめ
最盛期に比べると、Rubyの案件数が減少していることは否めません。しかしながら、まだまだ求人は多くある状態です。また、本記事で紹介した『Ruby・Ruby on Railsで作られたサービス』は、そのすべてにおいてRuby on Railsが利用されており、求人内容を見ても、Ruby on Railsを覚えていないと応募できる仕事が大幅に狭まってしまします。
そのため、Rubyエンジニアを目指している方も、現役のRubyエンジニアの方も、Ruby on Railsは覚えておいたほうがよいでしょう。また、Rubyには、Ruby on Rails以外のフレームワークも存在していますので、気になった方は以下の記事も参考にしてみてください。
関連記事:Ruby言語のフレームワークはこの5つを押さえよう【2022年版】
フリーランスの案件をお探しの方はTechReachにご相談ください。
TechReachを運営する株式会社アールストーンはIT・Web業界特化で15年以上の実績がございます。
そのため、高単価・高品質な数多くの案件紹介が可能です。
また一人のコンサルタントが企業と求職者様の担当を行う「両面型エージェント」を採用しているため、あなたの希望に合う案件がきっと見つかるはずです。
TechReachを活用して、理想の案件を見つけましょう!