メモるブログ

技術メモを書いていく所存

2018-05-24

記事紹介

Controllers: the Rails way vs the Hanami way

  • RailsとHanamiの違い。Controller編
  • コメント
    • んーRailsのControllerでもRESTfulやビジネスロジックのモデル・サービスへの帰属をちゃんと考えればThin Controllerにできると思うけどなー。
    • コメントの議論が面白くて「フレームワークにかかわらずDeveloperの知識と経験でpoor codeは出てくるよ」みたいなのがまさにそうだと思った。
    • 大規模開発には確かに向いていない面もあるかもだけど小〜中規模だったり管理画面系であればめちゃくちゃ強みあると思うんだけどなー

A Dive into Ruby CVE-2017-17405: Identifying a Vulnerability in Ruby’s FTP Implementation

  • Ruby脆弱性の話(今は解消済み)
  • FTPでファイル名が”| {command}”だったりするとKernel.open(‘| {command}’)が実行されてクライアント側でコマンドが実行される危険性がある、ということらしい
  • コメント
    • open(‘| {command}’)の書き方を初めて知ったし、これIOクラスが返ってくるのか。readすれば標準出力取得できる。面白い

Dynamically setting Rails default_url_options in Heroku review apps

  • Heroku Review Appのdefault_url_optionsの設定方法について
  • HEROKU_APP_NAMEを使うと良いらしい
  • Review Appだとホスト名動的だから環境変数でやりくりする感じで、そのやりくりする環境変数がHEROKU_APP_NAMEということらしい

Phoenix is better but Rails is more popular

  • PhoenixRailsのいいとこ悪いとこ比較
  • コメント
    • 最後の良いRails, Phoenixエンジニアを探すのは難しい、というのがへぇーという感じだった。日本国内だと良いRailsエンジニアちょいちょい居そうだけどなー
    • Elixir, Phoenixエンジニアは確かに居なそうw

Building APIs with Rails + Protocol Buffers

  • RailsでProtocolBuffersを使う方法
  • protoファイル書く => protocでrubyコードをgenerate => generateされたRubyクラスを使ってprotobufにencode => それをsend_dataする

Timeout::Error "Timeout is Ruby's Most Dangerous API" —Mike Perham