morimorihogeです.お久しぶりです.リリースからの課金額を計算したら15,500円でした.ケッコンカッコカリの影響はやはりでかかった.
最近社内+個人的な知り合いエンジニアの範囲でCrafting Rails 4 Applicationsの読み会を始めました.
この本について
作者のJosé ValimはPlataformaticの中の人です.DeviseやSimple FormなんかはRailsエンジニアなら知らない人はいないんじゃないでしょうか.
この本は前書きの中に
Who Should Read This Book?
If you’re an intermediate or advanced Rails developer looking to dig deeper and make the Rails framework work for you, this is your book. We’ll go beyond the basics of Rails; instead of showing how Rails lets you use its built-in features to render HTML or XML from a controller, I’ll show you how the render() method works so you can modify it to accept custom options, such as :pdf.
ともあるように,初心者〜中級者向けの本ではなく,中級者〜上級者向けの本です.Railsでアプリを作ることは普通にさらっとできるけれども,Railsの中の動作を具体的に知りたい,Railsそのものを拡張したいといった人が読む本ですね.
参考までに各章タイトルを見ていくと,
- Crafting Out Own Renderer
- Building Models with Active Model
- Retrieving View Templates from Custom Stores
- Senging Multipart Emails Using Template Handlers
- Streaming Server Events to Clients Asynchronously
- Writing DRY Controllers with Responders
- Managing Application Events with Mountable Engines
- Translating Applications Using Key-Value Back Ends
となっています.なかなか歯ごたえがありそうですね.
読み会について
今回の読み会を企画したのは僕です.実は,この本の前身(Rails3版)にあたるCrafting Rails Applicationsを以前買ったのですが,内容がヘビーすぎて途中で読む気力が無くなってしまったという背景があり,いつかリベンジしてやるぞと思っていました.
# 正確には一度流し読みレベルでは読んだのですが,途中からはコード書いて検証とかはしておらず,内容をきちんと理解したレベルに達するほどの読み込みはしていませんでした.
そんな思いを胸に秘めていたらいつのまにかRails 4版が出ていましたので,今回一人で読むのは最初から諦めて複数人で手分けして読み進めようと思ったわけです.人は学習する生き物なのです(キリッ
今回の読み会は試験的にTechrachoなどの媒体での声掛けはせず,社内と個人的に参加しそうな知り合いにのみ声をかけて募集しました.人数を集めてワイワイ交流,というよりも,読み会中に生のRailsソースコードを皆で眺めながら設計思想や実装内容について深い議論をしていきたかったからです.最終的な参加者は僕を含めて4名となりました.
読み会の形式は,各参加者に担当章を割り当て1章あたり30分として発表資料を作って発表・議論を行うというものです.発表者は担当章については内容に関する質問が出たら回答できるように深めに読み込み,発表者以外も前もって当該章を読んだ上で参加することとしました.
これは結構参加者への負担が大きいのですが,自分の担当部分以外を読まず参加してしまうと当該章について基本的な理解をするのに発表時間を消費してしまい,内容の深い議論をする時間が取れなくなってしまうという問題が出てしまいます.内容的にも難しめの勉強会をする場合には,このような参加障壁は上がる代わりに議論のクオリティを上げる工夫をしてみるのも良いのではないでしょうか.
# この辺りの事情もあり,参加者を身内に絞りました
第一回資料
そんなわけで第一回の担当は僕だったので,資料を以下に上げておきます.発表時はRubyMineでRailsのソースを追いかけつつ諸々間に議論を挟みながらやっていました:)
第二回以降の資料は各担当の人達が上げてくれると思います;)
- 第一回:Crafting Out Own Renderer
- 第二回:Building Models with Active Model
- 第三回:Retrieving View Templates from Custom Stores
- 第四回:Senging Multipart Emails Using Template Handlers
- 第五回:Streaming Server Events to Clients Asynchronously
- 第六回:Writing DRY Controllers with Responders
- 第七回:Managing Application Events with Mountable Engines(このページ)
- 第八回:Translating Applications Using Key-Value Back Ends