2018-05-16
記事紹介
Ruby’s New Exception Keyword Arguments
- 概要
- Ruby 2.6でKernel.systemとかInteger(xx)とかでexceptionのオプションを入れられる。falseの場合はエラー時にraiseしない
- rescueすれば今までも何とかなったけどパフォーマンスの問題があった
Google Chrome 68 introduces HTTPS as the new security must-have
- 概要
- Google Chrome 68でhttpのサイトはNot Secureと表示される
- HTTP/2とかの話もあるのでSSL化良い
6 Things to Share Before Outsourcing Your Rails App
To Sleep, Perchance to Dream: Rails Ruby Bench and Sleepy GC
- 概要
- GCをRubyのidle時間に起動させようというアイデアの話?
- https://bugs.ruby-lang.org/issues/14723
Deprecating Paperclip
- 概要
- PaperClipがdeprecateしてActiveStorageに切り替えてください、とのこと。
- コメント
Functional Programming in Ruby — Closures
- 概要
- RubyでFPやる話。
- コメント
- 関数型馴染みがない…
- callが[]や.()で呼べるの好き
The biggest Rails code smell you should avoid to keep your app healthy
- 概要
- コールバックはちょっと可読性悪いし不具合出しやすいので外に出すのはどうですか?という話
- コメント
- わかる。けど小さいうちはコールバックでも良いのでは?という感じもする
- メール送信系とかは怖いのでフォームやサービスにラップして扱いたい
Domain Events over Active Record Callbacks
- 概要
- コールバックは毎回飛ぶので飛ばしたくないケースに出くわしたとき色々大変。
- あとデータの整合性の話でafter_saveなのかafter_commitなのか、など色々と注意すべき点がある。
- なのでイベントのpub/subでコールバックを外に出していい感じに分離しつつ柔軟に設定できるのではないか?という話
How To Remove Argument Order Dependency In Ruby
- 概要
- 3rd partyライブラリのイニシャライズのインターフェースがいけてなくてハッシュのargumentじゃなかったのでラッパー=Factoryの層を噛ませて良い感じにした話
How to mitigate DDoS using Rack::Attack
- 概要
- Rack::Attackの使い方
gem
baweaver/pry-macro
- pryでマクロ(=コマンド列)をカジュアルに試せるやつ
- これ良いかも!と思って試してみたけどうまく動かない…?
browserslist/browserslist-useragent-ruby
- ユーザーエージェントがブラウザーなのか?とかoutdatedじゃないか?とかを調べるgem
RailsEventStore
- イベントpub/subでActiveRecordのcallbackをなくそう、というモチベーションのgem
- ドキュメント見てると blockで処理を囲ってlistenerとlistenするイベントを指定してcallするとコールバックする仕組みっぽい。これならserviceじゃなくてcontrollerに入れても良いかも。
- コールバック忘れ問題はあるんだけど、subscribeしなかったらワーニングとかが出来るのであればより良さそう(仕組みとしてはできそう…?)