技術顧問の五十嵐(igaiga)です。今日はクルーバー社内で開催している「パーフェクトRails」の読書会についての話です。
パーフェクトRuby on Rails 増補改訂版とは
パーフェクトRuby on Rails 増補改訂版(以降、パーフェクトRails)は2020年7月発売された、Railsの実践的な技術を広い範囲に渡って解説している書籍です。各筆者が個性を活かして書いています。
目次を見ていただけるとカバーしている範囲の広さを感じていただけるのではないでしょうか。入門よりも実践を重視していて、Railsの書籍の中では難易度が高めの本になります。
私も執筆に加わっており、思い入れが深い本です。
パーフェクトRailsの読書会
読書会は毎週1回、1時間で開催しています。決めておいた範囲を事前に読んでもらって、疑問点や話したいことを参加者の共有ページに書いてもらう形で進めています。その質問をベースに議論をしていきます。質問が多いときはここにたくさん時間をつかい、質問が少ないときは、私から内容の概略を説明したり、書かれていない裏話を話す時間に充てています。
事前に予習してもらうこの方法だと、時間の効率が良いのがメリットですが、忙しいときや難易度が高い範囲は読んで質問を出すのが難しいという問題もありました。これを材料として次の読書会では工夫してみました。(詳しくはまた次回以降のこのブログで)
こんな質問が出ました
出た質問の例です。長い議論をしたものもありますが、まとめてかんたんな回答例も書いてみました。
-
Q. 「設定より規約」は、他の言語でもRailsのような規約が同様にあるものなのか?
-
A. Railsより後に出たWebフレームワークは同様の規約があることが多いと思います。「設定より規約」はRailsの大きな発明でした。
-
Q. migrationファイルのメンテナンスの方法は?
-
A. 何もしなくても良いですし、定期的にファイルをまとめる運用をすることもあります。
-
Q. Railsではデフォルトで動作するRackミドルウェアが複数あるが、Rackミドルウェアを追加したり自作しようとするケースはどんなものがあるか?
-
A. たとえば、認証に関するものや、リクエストやレスポンスのヘッダを元になんらかの処理するものなどがあります。Railsアプリ全体に対して実行する処理はRackミドルウェアに向いているかもですね。
-
Q. Gemの選定のコツなどありますか?
-
A.更新されているか(超大事)、やりたいことに対して大きすぎないか、Gemを使わないで書くことはできないか、Gemをつかうのとどちらが楽か、といったところを私は考えて選んでます。
パーフェクトRailsをより楽しめるポッドキャスト texta.fm
著者の1人であり、ピクスタ株式会社CTOでもある後藤優一さんが、同社技術顧問の和田卓人さんと話しているポッドキャストtexta.fmを公開しています。Railsアプリの設計は一般的な設計論と比較するとどのような位置づけであるのか、Railsアプリとして良い設計とはどういったものなのかを書籍よりも踏み込んで、かつ、とてもわかりやすく解説している、とても良いポッドキャストです。
パーフェクトRailsを読み終わった方は、こちらを聞くとさらに理解を深めることができると思います。私も聞いた後でRailsについての捉え方と理解が一段深くなったように感じました。お勧めです。
次の読書会
4月にスタートしたパーフェクトRails読書会は8月に約20回開催して完走しました。次の本として現在は「エラスティックリーダーシップ」の読書会をやっています。こちらの様子もまたブログに書きたいと思っています。おたのしみに。
クルーバーでは一緒に開発するメンバーを大募集しています!