どうも、たくチャレ(@takuchalle)です。

会社のお昼休憩時間にのんびり Rails Tutorial を進めて、ついに一周しました。

勉強時間としては、1ヶ月半で20時間程度でしょうか。

なぜ勉強しようと思ったか

ちょっとしたアイデアをすぐに形にできるために技術がほしかったからです。

僕は普段仕事ではデバイスドライバなど比較的レイヤの低い部分のプログラミングをしています。もちろんこれは面白いし興味があるので、仕事には不満はないのです。 ただ、このまま定年まで同じ会社で仕事し続けることはできないと思っているので、他のレイヤの技術も勉強しておこうと思いました。

では、なぜ Rails Tutorial なのか。

最近いろんなオンライン学習サービスがあります。その中で Rails Tutorial を選択した理由はいくつか挙げるとこんな感じです。

  • 無料
  • Ruby は簡単なスクリプトは書いたことがあった
  • REST API についても学べそうだった
  • テストにも言及があった
  • heroku へのデプロイもあった
  • 大学の同級生の会社が翻訳してる1

進め方

基本的にチュートリアルの通りに進めました。演習も一通り行いました。分からない演習があれば検索してでも解くようにしました。

チュートリアル通りにやらなかった部分が2点あります。

  • GitLab を使って CI/CD を実施した
  • git の commit の粒度を細かくした

チュートリアルではGitbucketを使ってると思いますが、僕はGitLabを使いました。CI/CD を使いたくて、ひとつのサービスに完結してるのが楽だと思ったからです。CI/CDに関して別の記事に書いたので参照してください。

チュートリアルでは章が終わるときに全ての修正をgit commitしてマージしていましたが、僕はもっと粒度を細かくしました。機能の実装の区切りやテストを追加した時などのタイミングで行いました。たぶん本当の開発でもそうするはずで、あまり大きな粒度のコミットは推奨されてないからです。

いずれも本当の開発を意識して工夫してみました。業務で Web 開発をしたことないからもっといろいろあるのかもしれませんが、おいおい勉強していきます。

やってみた感想

REST API に則ったサービスの考え方を理解でき、単体テスト・結合テスト・デプロイまで含んだ開発の流れを学ぶことができてとても良かった。 段階的にサービスが育っていくのが楽しくて、どんどん進められました。僕は会社の昼休みに進めてましたが、ちょうどいい粒度で章立てされていて進めやすかったです。

Rails のコマンドが強力で、コマンドを打つだけで様々な機能の枠組みが生成されてテンポよく開発ができて楽しかった!逆に Rails のコマンドが強力すぎて、中身がブラックボックスになってる部分が多々ありました。多分レールに乗ると楽に開発できて、それに外れるようなことをしようと思ったら大変なんだろうなあと感じました。

勉強し始めた動機である、自分で0から設計して作っていくにはまだまだスキル不足であるとは思うけど、これを拡張していく方向でスキルを伸ばしていくことは可能だと思います。

あと、開発環境は Cloud9 を使いましたけど便利ですね。家でもどこでも同じ環境で開発ができるって最高じゃないか。

今後

Tutorial を一周したけど、Rails でなにかを作るかわからないですね笑 Web サービスの開発方法がわかったので、もちろんこの Tutorial が無駄になるとは思いません。

サーバレスとか Microservice とかも気になるし、興味が赴くままに色々やってみたいと思います。


  1. ほとんど接点なかったけど笑

同じカテゴリの記事