最新 追記

いがいが日記


2020-07-16 [長年日記]

_ Ruby Associationの法人協賛会員になった

Ruby AssociationはRubyを使う企業と個人が集まった団体。毎年グラントとして採択された人へ開発支援金を支給したり、イベントを開催したりしている。

特に開発支援金は良いプロダクトづくりに活かされているなと毎年感じているので、活動を応援したいと思い2年前から5000円の個人会員になっていた。今年は会社をつくって黒字も出たので、ガーネットテック373株式会社として10万円の法人協賛会員になった。今後も稼いでもっと上のプランの協賛会員を目標にしたい。推し言語Rubyを推していきたい。

https://www.ruby.or.jp/ja/sponsors/list/


2020-07-21 [長年日記]

_ パーフェクトRails 増補改訂版

2020年7月25日に パーフェクトRails 増補改訂版 が発売されます。私も執筆チームに加わってこの本に携われたことを嬉しく思います。

パーフェクトRails初版も素晴らしい本で、読み込んでかなりRails力を上げてもらった記憶があります。特にrack, rack middleware, railtie, engineといった話題は他の日本語の本では触れられてる本は少ないのではないでしょうか。(今回の増補改訂版ではほぼ0からの執筆で構成も大きく変わったため残念ながらこの一部はなくなってしまったのですが、rack, rack middlewareは引き続き解説してあります。)

そんな良い本であるパーフェクトRails初版は2014年発売で、Rails4.1をベースに書かれていました。良い本だが、いかんせん古いので「改訂しないかなー、してくださいよー、まだですかー?」としつこく筆者陣をつついていたところ、執筆チームへの加入を打診され、きれいにブーメランが決まったと言えます。

しつこく改訂を促していたのには理由があり、この本が必要だったからです。私は企業で新人研修をやっていたり、スクールのお仕事もお手伝いしていますが、このレベル感の本が必要なのに、存在しなくて困っていました。Railsの基礎を学んだ人たち(Rails Tutorialや現場Rails本、黒田さんのRails本などはできるようになった人たち)が、「何やら知らない世界がまだあるようだが、それらは何なのだ?」という世界を知るための本です。Railsの書籍には入門書を超えるレベルで網羅的なものがなく、昔はレシピブックもありましたがobsoleteになってしまい、ここ数年はWEB+DB PRESSの記事くらいでした。

パーフェクトRailsは必要な本であるし、初版でとてもお世話になったので、これはぜひ世の中に出したいと思って去年の年末にjoin、半年程の執筆期間で無事に世の中へ出すことができそうです。前からいた人たちはきっと2年以上書いていたのだと思います。本当におつかれさまでした。

「ゼロからわかるRuby超入門」とは書き方が全く違って、パーフェクトRailsはまた違った執筆のたのしさを味わうことができました。日々の仕事とのリンクが強く、また執筆チームとレビュアー陣が凄腕のみなさんだったので勉強になることもたくさんありました。成長できてありがたやです。超入門とパーフェクトRailsの執筆中の思考の違いは9月にある とちぎRuby会議09 でも少しお話しできたらいいなと思います。(まだ内容を考えてないのでうまくまとまれば・・・)

私の担当は5章、7章、9章で、印象に残っているのはminitestかrspecかを選ぶところで、みんなrspecしか書いたことないのでrspecを選ぶのが無難ではあったのですが、現状だとminitestの方がメリットが大きかろうということでminitestを選びました。Railsアプリのminitestの資料はまだ少ないので、参考にしてもらえたら嬉しいです。書いててたのしかったのは5章のActiveJobやActiveStorageなどのRailsが提供する機能ですね。Railsのコードを読んで、こんなに丁寧にドキュメントがコード内に書かれているのかと(api.rubyonrails.orgの元になっているものです)驚きながら読み進めるのが楽しかったです。

それと、9章で紹介しているGitHub Actions、書き終わったあとにシステムテスト失敗時のスクショを取れると便利と分かったのでここに書いておきます。あと1ヶ月早く気づいたら載せられたのに・・・申し訳ない・・・。

また、koicさんがRuboCopのアフターフォローを書いてくださっていますのでこちらもご活用くださいましたら。

GitHub Actions上で実行したファイルの取得

  • たとえばsystem testが出力したスクショをダウンロードする方法
  • 直接アクセスできないので、upload-artifactアクションを利用してアップロードして、ブラウザからDLします
    • .github/workflow/ruby.yml に以下を追記
...
    - name: Run test
      run: |
        ...

    - name: Upload
      uses: actions/upload-artifact@v2 # 利用するアクションを指定
      if: failure() # 失敗したときだけ実行
      with:
        name: my-uploads
        path: tmp/screenshots/ # uploadするパス(Rails rootからの相対パス)

ほかの方のブログ


最新 追記