こんにちは。開発チームのtaiki-tです。*1前回の記事は、Rails 5 の足音 - Misoca開発ブログ でした。
今回は、プログラマーとしてのスキルアップのために有料のオンライン学習サービスを使ってみた感想を書きたいと思います。*2
Upcase
今回は、Upcaseという学習サービスを使ってみました。Upcaseはthoughtbotが運営している月額$29のサービスです。
想定されている主なユーザー層は初級Railsエンジニアです。ただし、Railsエンジニアでなくとも役立つ情報もたくさんあります。
サイトのトップには、次のように書いてあります。
Let’s get that “junior” out of your title
Upcase turns junior Rails developers into ass-kicking name-takers.
(訳:『肩書きから、「初級」をとっぱらおう!』)
内容紹介
進捗管理
以下のようなダッシュボード画面があり、どこまでコースを終わらせたがか分かるようになっています。
コース一覧
- コーディング
- Regular Expressions
- Ruby Challenges
- Refactoring
- テスティング
- Testing Fundamentals
- Test Doubles
- Ruby on Rails に特化したコース
- Test-Driven Rails (RSpecとCapybaraを用いたテスト駆動開発を学ぶ)
- Intermediate Ruby on Rails
- UIデザイン
- Design for Developers
- データ分析
- Analytics for Developers
- ワークフロー(tmux)
- Vim
- その他
- The Playbook: Video Edition (Webアプリケーションの計画からローンチまでを一通り)
後半のUIデザインやデータ分析などは、Railsエンジニアでなくとも十分に役立つと思います。
コースの形式
コースにはいくつか形式があります。
コーディング系のもの(Refactoring, Test Doubles、他)などは、この3つめの、相互レビューをする形式で進んでいきます。実際に手を動かしフィードバックをもらえるので、とても良いです。
コース以外のコンテンツ
段階を踏んで学んでいくコースの他には
- 参加者が相談するフォーラム
- Flashcardsという単語帳形式のような簡単な問題集
- Weekly Iterationという毎週追加される動画のコンテンツ
があります。Weekly Iterationはどれも最初の数分を見ることができるので、 のぞいてみると良いかも知れません。
The Weekly Iteration: a show by thoughtbot | Upcase
感想
使い始める前は、$29と言えども、なんか払うのは勇気がいるなぁ? と思ったのですが、使い始めてみた結果、$29を払うことに関してはとても満足しています。 これだけの内容を誰かに教えてもらおうと、絶対にこの金額では教えてもらえません。
このUpcaseサイト自体のアプリケーションコードも見れるようになるので、実際に動いているサービスのコードをみれます。特に、mockを多用するspecの書き方、サービスオブジェクトの切り出し方などは、とても勉強になりました。
動画系のコンテンツは字幕がなく、英語を聞き取るのがネックになります。
TL;DR
良かった点
- コスパがよい。Upcaseの内容を、誰かに教えてもらおうと思うと月額$29では済まないと思う。
- 実際にお金を払っているので、その分やらなきゃ!という気持ちに毎月なる。
- 同じ課題に対する他の人のいろいろなアプローチが見れるので、勉強になる。
- 実際に運営されているサービスのコード、PRが見れる。Upcaseそのもののレポジトリをみれるようになるので、おもしろい。
- 英語の勉強にもなる。
良くなかった点
- コードレビューの質が高いとは言えない。課題に対して自分が提出したコードをレビューしてもらえるが、レビュアーも同じような参加者だったりするので…
- ただ、自分のコードには大したレビューがつかなくても、他の人のコードに良いコメントが付いていたりするので、いろいろ見ると勉強になる。
- 英語の勉強にもなっちゃう。(メリットととるか、デメリットととるかは、あなた次第…)
- 動画系コンテンツに字幕があれば、尚良かった
こんな人にお勧め
- Railsエンジニアなら、使ってみて損はない感じ。
- Railsエンジニアでなくとも、Vimとtmuxで開発環境を整えてみたい人。
- Design for Develpers や、Analytics for DevelopersというコースはそれこそRailsに限定されていないので、そういうところ興味がある人。
- 実際に動いているサービスのコードや、PRを見てみたい人。(ディレクトリ構造や、specとか見るだけでも勉強になる)
- Upcaseのspecはmockistアプローチだと思うので、mockをバリバリ使う感じのspecを見てみたい人。
参考リンク: 他の学習系サービス
Upcaseを選ぶ前に検討した学習サービス一覧を簡単に紹介します。自身に合うものを見つけることができれば、有料、無料問わず、効率良いスキルアップに繋がるのではないでしょうか。
その他の有料学習サービス
国内のサービス
講義を配信しているサービス
MOOCと呼ばれるインターネット上で講義を配信しているサービスです。大学の講義相当の内容が多いです。
- Online Courses and Nanodegree Programs to Advance Your Career - Udacity
- Coursera - Free Online Courses From Top Universities
- edX | Free online courses from the world's best universities
- Stanford Online
Railsに特化した内容
学習サービスではないですが、以下のサイトで自習するのがよいと思います。