初めに
今僕はRailsのエンジニアとして生活しています
どんな感じかというと
Webアプリケーションを作って広告をつけて稼ぐ
といった具合
ちなみに今は独立というのか会社には所属しておらず家でやってます
ブログ等でこういう風に稼ぐ人もいるのですが僕は残念なことに文才がなくすぐにネタ切れになるタイプなのでアプリケーション開発をしようと思いました
その際に選んだのがRailsです
Railsってなに?
プログラミング言語の1つという認識で大丈夫です
厳密には少々違いますがややこしくなるので割愛しますが
国産プログラミング言語であるRubyのパワーアップアイテムと思ってください
ものすごくざっくり言うと
Webアプリケーションを簡単に作ってしまおうぜ!
って能力に長けています
Webアプリケーションとは?ってなる方も多いと思いますので例を挙げてみましょう
・Youtube
・ツイッター
・掲示板
・ククパッド
こう言うものです
ホームページではなくWebで何かしらできるものって認識でOK
Railsって何が便利なの?
上記で僕は
Webアプリを簡単に作ってしまおうぜ!
と言いましたよね
どう簡単に作れるのかを解説します
読んで字の如く
Railsってその名の通りレールの上を走らせる感じです
色々と自動でやってくれるのでそれに沿ってプログラムを書けばいいです
そのレールをどのように走らせるか、は自分で考えながらですがある程度規則に沿うのであまり困ることが少ないです
gemの存在
ほぼこれがメインで書きたいこと
gemとはプログラムの集合体
って思ってください
例えばSNSを作りたいと思いログイン機能が必要だと考えたとします
ログイン機能って作るのめっちゃ大変なんですよ
でもログイン機能を持っているgemをRailsにインストールするとあら不思議
ログイン機能が実装されちゃいます
開発効率を一気に上げることができますね
例えるなら
ピザって作るは大変だけどデリバリーすれば簡単だよね?
って感じ
CRUDアプリが簡単に作れる
ここも結構重要
CRUDとは4つの単語の頭文字です
Create、Read、Update、Delete
メモアプリに例えてみましょう
・Createは新規メモ投稿
・Readはそれを閲覧
・Updateは投稿した質問を編集
・Deleteは削除
こういう一連の流れをもつものを作りやすいです
この流れは大手質問掲示板である「知恵袋」などと同じですね
Railsをやってみたい!と思ったら
ここまでダラダラ書いた記事に付き合っていただきありがとうございます
もし興味を持っていただけたら嬉しいです
何が作りたいかざっくり決めておこう
これは目標があったほうが楽しいからです
例えば動画投稿サイトを作りたい
新たなSNSを作りとかでもOK
え?すでにあるサービスじゃん
と思うかもしれません
いいじゃないですか
吉野家があるけど松屋もすき家もある
レブンイレブンがあるけどファミマもローソンもある
大きな括りは一緒ですがその中で自分なりの特徴を出せばいいと思います
動画投稿サイトなら「動物動画に特化した」とかでもなんでもいいです
事前知識
さて、Railsを勉強するのには事前知識が必要です
HTML/CSSは抑えておきたいですね
Web関係をするならこの二つは必須
できればJavaScriptも!と言いたいですが簡単なアプリケーションならなくても大丈夫
そしてRubyも必須
あくまでもRubyのパワーアップアイテムがRailsです
勇者(Ruby)がいないのにアイテム(Rails)を使っても効果ないですもんね
学習方法
https://qiita.com/rails_kaname/items/e85f9f3672b0910986af
ここに記載しています
僕はこの方法でやりましたが個人差があるのであくまでも参考程度に
まとめ
さぁ今回もダラダラと書いてしまいました
申し訳ない
要はRailsはWebアプリ作るのには便利だよ!
と言いたいのです
学びやすいですしね
そして疑問に思われる方のためにちょっと補足
僕みたいに自分でアプリ作ってそれだけで飯を食えるようになるって言うのははっきりいって稀です
みんながみんなそう言うわけにはいきません
数でいえば結構な人がいると思いますがそれを目指す母数はかなり多いのでやはり稀でしょう
どうやって作ったアプリを使ってもらうかとか運とかも関係してきます
運を掴むにはまずは開発、運用ですね
その中で少しでも話題になったりすれば一気に軌道に乗ります
どうすれば話題になるかここが重要ですね
月100万!とかそんな大金ではないですが田舎で妻と娘を養える程度は稼げてます
贅沢はできませんけどね・・・。
実力も必要ですが運も必ずついて回ります
僕は運が良かったから今の生活が出来てます
だから初めは趣味のプログラミングでお小遣い稼ぎできたらな〜
という小さな目標から始めて徐々に大きくしていけばいいと思います
何事も初めからうまくいきません
継続することが大事だと思います