プログラミング

2ヶ月の独学で自作のRailsアプリを公開できるところまで来たので振り返る

 

先日、自作のアプリを初めてオンラインに公開しました。

 

ありがたいことに、多くの方から”いいね”をいただくことが出来ました。

 

使用言語はRuby(on Rails)です。肝心のアプリはセキュリティ対策のため削除済みですが、内容を簡単に述べると、いわゆる「Q and A サイト」です。

 

閲覧者が質問をブラウザ上に入力できたり、その質問に対して別の閲覧者が回答を入力できる、といった機能を持ったものです。なぜ、そのようなアプリにしたのかは、後述しています。

 

勉強期間は2ヶ月、スクール等には通わず、独学のみです。

 

ひとつの区切りとして、振り返りの記事を書きたいと思います。プログラミング初学者の方の参考になれば幸いです。

Progate+ドットインストールで基礎固め

 

まずは、この二つから学習を始めました。言わずと知れた、初学者向けのプログラミング学習サービスですね。

 

私はこれらのうち、ゲーム感覚で楽しめる、動物たちが可愛い等の理由で、Progateの方から先に手を付けました。具体的に学習を行ったコースは、以下の通りです。

 

①HTML&CSS

Webエンジニア必須の言語。Webエンジニアには様々な言語を扱う人たちがいるが、これを知らない人はいない。基礎中の基礎。

 

②Javascript

とにかく世の中の色々なところで使われている言語。最初はやっていると「これWebサイトとなんか関係あるの?」という気になってくるけど、やるべき理由は次です。

 

③jQuery

HTML&CSSだけでは表現できない動的な演出(アニメーション等)を行うためのツール。jQueryはJavascript言語で動くので、②の学習が必要になる。

 

ここまでの知識だけでも、阿部寛のホームページくらいなら作れるようになるはずです。(知らない人は是非ググってみて欲しい。シンプルイズベスト、を体現したサイト)

 

これらに加えて、さらに以下も学習しました。

 

④bootstrap

HTML&CSSを速く書くためのツール。こちらはProgateにはないので、ドットインストールの方を視聴。真に使いこなせると、マジで爆速で書けるようになりそう。

 

 

 

さて、ここまではWeb系エンジニアの一般教養(共通科目)かと思いますが、ここからどうするかが悩みどころです。

 

具体的には、PHP、Ruby、Pythonあたりのどれから手を付けるか、という選択です。

 

私は「Ruby on Railsなら爆速でアプリが作れるよ!」という先人の声を参考にして、まずはRubyを触ってみることにしました。

 

⑤Ruby

再びProgateに戻り学習。Ruby on Railsという最強ツールを動かすための言語。Javascriptに似てるからあんまり苦労はしなかった。

 

ここまでは順調でした。このまま、ProgateのRuby on Railsもやろう!と思ったのですが…

 

Railsムズすぎワロタ(プチ挫折)

 

ProgateのRails講座は、それまでの講座と比べ、一気に難易度が上がります。

 

Railsは、実際にアプリ開発を行うために使用されている、Ruby用フレームワークです。そのため、必然的にこれまでよりも実践的な講座となります。

 

英語で言うなら、今までの講座は単なる「文法のお勉強」ですが、Rails講座は「自由英作文」のようなものです(分かりにくい)。

 

Progateで講座を進めてみても「???」といった感じでして。

 

このままではまずい!と思い、少し角度を変えた教材で勉強をしてみようと思いました。

 

ドットインストールでもよかったのですが、Twitter上で「UdemyのRail講座がよかった!」という意見を聞いており、「Udemyとはなんぞや?」という興味もありましたので、そちらを試してみることにしました。

 

UdemyのRail講座で一皮むける

 

Udemyとは、ベネッセが運営している「動画学習型Webサービス」のことです。

 

プログラミングに限らず、数多くのジャンルの講座が含まれているサービスで、ユーザーは視聴したい講座を”講座単位で”購入します(月額○○円、とかではない)。

 

ここで私は、『よくわかるRuby on Rails入門-RubyとRailsを基礎から学びWebアプリケーションをネットに公開しよう』という講座を購入しました(リンクは貼って良いのかが分からないので、貼っていません)。

 

選んだ理由としては、

 

・いくつかあるRails講座の中でも評価が高かったこと(☆4.4/5)

・Progateをやりながら常々疑問に思っていた「で、どうやって自分の作ったアプリをインターネットに公開するの?」という点が解消されそうだったこと

・定価\16,800がセールで\1,600になっていたこと(90%オフ!)

 

 

だいたい最後の理由が大きいですけどね。1600円なら本一冊買うのと同じですので、特に躊躇なく購入しました。

 

そして視聴してみたのですが…これが本当によかった!自分が思っていた以上のものを得ることができ、大満足でした。

 

学んだ内容について、まとめておきます。

 

・Rails

これは講座の趣旨なので当然です。もちろん、一発で全てが理解できたわけではありませんが、手を動かしながら繰り返し聞くことで、だんだん腹に落ちてきました。

この講座を通じて、ProgateのRails講座が分かりにくかったわけではなく、そもそもRailsが初学者にとっては難しいもの、ということを認識しました。

ただ、Udemyは動画型コンテンツなので、復習をするのがとても楽です。オフラインに落とすこともできるので、電車や新幹線の中でも気軽に視聴することができます。

この「復習のしやすさ」はUdemyの長所の一つであり、そのおかげもあって、無事Railsも理解することができました。

 

・クラウド開発環境(AWS Cloud9)

単語だけは聞いたことがあった「クラウド開発環境」なるものを自分で使えるようになりました。最近のイケてるWeb系企業では積極的に活用しているサービスらしく、この機会に学べて良かった。

 

Amazonが単なる物流の会社ではないこともここで知りました。やっぱりAmazonはすごい。

 

・Heroku

自作アプリをインターネットに公開できるサービス。上のCloud9と合わせて、「で、どうやって自分の作ったアプリをインターネットに公開するの?」というところがひとまず解消されました。

 

意外と簡単に公開できるんだ、という感想です。先人の皆様に感謝ですね。

 

そしてこの講座を通じて、冒頭に述べた「Q and Aサイト」を公開することができました。まあ、要するに講座通りに手を動かしただけなんですけどね笑。

 

なので転職時のポートフォリオとして出せるものでは決してありません。しかし、「どんなポートフォリオを作成するか」という土俵に立つところには来られたのかな、と思います。

 

おわりに

以上が、振り返りになります。

 

ほぼ日記のようなものではありますが、プログラミング初学者に対して何か参考になれば幸いです。

 

このようなアウトプットは、自分自身のためにもなりますので、今後もやっていきたいと思いますので、よろしくお願いします。