写経した。 「パーフェクトに」というのは、6章から8章までのひととおり全部を、ということ。
- https://github.com/a-know/awesome_events
- アプリケーションのコード
- https://github.com/a-know/server_awesome_events
- サーバー周りのコード
6章は「イベント管理アプリケーション」を Rails で構築してみる、というもの。7章はテスト。8章で Rails のインフラ・運用周り。
感想とか
写経を終えてみて、やってよかったと心底思っている。
今の職場でも、この本で扱われているような
- Rails アプリケーションの開発
- TDD の実施
- CI
- DevOps
- Chef でのインフラの構成管理
- Capistrano デプロイ
- インフラのCI
といったようなことには普段から接しているのだけど、とはいえ DevOps のあたりは、"有り物" に手を加える形だったり、メインはインフラエンジニアさんにお願いしたりという形(自分はどちらかというアプリの人間なので)が、お仕事では多い。 でも本当は、その殆どを1から全部、自分の手でやってみたい! という思いがあった。
で、「パーフェクト Ruby on Rails」の写経は、その気持ちの大部分をスッキリさせてくれた。こういうのはやっぱり、自分の自由にできる環境で、自分の手を動かしていろいろやってみないと、ほんとのほんとに "腹落ち" することはできないんだよなー。
まぁ、とにかく楽しかったのだ。w
で、実はまだまだやりたいことがたくさんあったりする。今後はこのコード・アプリケーションをベースに、
- Hubot + slack による ChatOps
- Travis による アプリ/インフラのCI、push-to-deploy
- fluentd + BigQuery でのログ解析
- heroku にも乗っけてみたい
- heroku ボタン!
- 各種バッチを出してみたい
...といったあたりをやっていきたいと思っている。ここまであれこれ自由にできるのは、自分のリポジトリ・趣味コードだからこそ。
「写経」について
今回の写経で、上で書いたような「色んなことを試すための土台」ができたのも、本当に良かったと思っている。 別に、これぐらいのことは "Hello World" 程度のコードでも十分なんだろうけど、でもなんかそれだとイヤなのは、まぁ、僕のヘンな拘り(ある程度作りこんだものに対して試したほうが、より面白そう!)、ってことで。w
僕はよく何か新しいことを身に付けるときに「写経」というスタイルを選択するのだけど、それは「写経」が好きだから。なぜ好きかっていうと、今回の「土台が出来た」っていうようなことを含め、僕は「写経すること」の有用性をひしひしと感じているから。だから、「何かを習得するための手段としての写経」が、好き。
僕が感じている写経の有用性ってのは、例えば下記のようなものだ。僕はこれらのことに、助けられまくっている。
- コードそのものが手元に残る
- 再利用や、テンプレートなどにできる
- 「そういや、そういうコードを書いたっけなー」っていうインデックスが、頭のなかにできる
- 全てを完全に記憶できる脳みそを持ちあわせていないので、重宝してる
- これも一種の「他人のコードを読む」経験のひとつ
- 「あ、こういう書き方、できるのね」という気付きもときどきある
写経に関しては、ソニックガーデン・倉貫さんの有名すぎるエントリもありますね。
写経で身につけるプログラミングの基本 | Social Change!
ちなみに、僕の写経のやり方について
ちなみに、これだけのボリュームの写経を一日二日では当然やりきれないんだけど、 その日一日の作業をPR化してやる のは、すごく良いやり方かも!と思った。
https://github.com/a-know/awesome_events/pull/1
- 最初のコミットと同時にPRを作成
- コミットを重ねていく。途中での気付きとかつまづいた点があったら随時コメント(場合によってはインラインコメントでもいい)していく
- 今日はどこまで出来て、次はどこからやる、とかも書いとくと便利
- その日の作業が終わったらセルフマージする
- 後々、好きなときに見返すことができる
- 「なんでこうしてたんだっけ」とか
- 「また同じような実装をしたいんだけど、ハマりポイントとかあったっけ」とか
もしかしたら一般的なやり方なのかもしれないけど、オススメ。Contributions に草も生えるしw。ぜひ、お試しあれ。
- 作者: すがわらまさのり,前島真一,近藤宇智朗,橋立友宏
- 出版社/メーカー: 技術評論社
- 発売日: 2014/06/06
- メディア: 大型本
- この商品を含むブログ (8件) を見る
- 作者: すがわらまさのり,前島真一,近藤宇智朗,橋立友宏
- 出版社/メーカー: 技術評論社
- 発売日: 2014/10/31
- メディア: Kindle版
- この商品を含むブログ (1件) を見る