ActiveRecordの #or を使うときは、こう考えると良さそう

Rails5で追加された #or について。 (どうでもいいけど、このメソッド、ググラビリティ低すぎぃ)

accepts_nested_attributes_forしたときのchanged?に気をつけよう

TL; DR rails 5.0.2 accepts_nested_attributes_for で子モデルを変更しても、親モデルの changed? は false を返すよ なので、 changed? を見て何らかの処理をフックするようなコードを書くときは気をつけよう relations_changed? メソッドを生やしておくの…

rails asset pipeline JSが、developmentでは動いてproductionでは動かないということはあり得る

滅多にないとは思うが、実際そういうことが昨日起きて、しばらく悩んだのでメモしておく。 「コレが原因でこういう現象が起こるケースがありました」という報告なので、そのつもりで読んで欲しい。 rails 5.0.2

accepts_nested_attributes_forしたときのi18n

Rails 5.0.2 Railsでi18n書くときに、ちょっと複雑になるとYAMLをどう書けばいいかわからなくなる問題。 たぶんソース見るのが一番良い。こことかね。 github.com のだけど、accepts_nested_attributes_forしたときのi18nの書き方だけまとめておく。

ridgepoleで想定外のdiffが出るときに試したい1つのこと

SymbolじゃなくてStringを使う 以下詳細。

DeviseでSign upはさせないけど、ユーザ自身にパスワード変更はさせたい

今日もDevise。 READMEにも書いてある通り、Deviseは機能が複数のmoduleに分かれていて、有効にしたいmoduleを選んでいくわけだが、今回は Registerable について。 Registerable を有効にすると、アカウント未所持ユーザが自ら、自分のメールアドレスを入力…

Gemfile.lockのマージミスってハマった話

結論を言えば、マージ気をつけましょう、以上って感じなのだけど、少し実験する。 ruby 2.4.1 gem 2.6.11 bundler 1.4.16

TerraformでSPFレコードを作る

SPFレコードとは、DNSサーバにTXTレコードとして登録する特殊なフォーマットのこと。メール送信者の認証に用いる。 ご存知の通り、メールをサーバから送信する際、Fromヘッダには自由にメールアドレスを設定することができる(他者のドメインであっても)。…

devise recoverableに入力したメールアドレスが間違っていても同じ画面を表示したい

今回はDeviseのお話。 以下のようなアプリケーションを想定。 Deviseを用いて認証 sign up式のユーザ登録ではなく、管理者のコントロール下でユーザ登録される recoverableを用いてパスワードリセットが可能なようにしたい 「どのメールアドレスがユーザ登録…

rubocopを0.47系から0.48系に上げたときのメモ

やったことある人はわかると思うが、rubocopを0.47系から0.48系に上げると、新しいcopがいっぱい入っていて、めちゃめちゃ怒られる。ついつい「全部 Enabled: false にしてしまえ!」と思いたくなるが、コードの品質を守ってくれる味方だと思ってしっかり対…

ライセンスについて考えよう

たまたま今日、会社のエンジニアじゃないメンバーが、Google App Scriptを使ってSlackを便利にする仕組みを作ったのでブログに書こうぜーみたいな話をしていた(普通に便利だと思うので、記事が公開されるのを楽しみにしていて欲しい)。で、Githubにコード…

Turbolinks + HTTP Redirectの注意

「公式ドキュメントにちゃんと書いてある + 考えてみれば当たり前」なのだが、今日数分消費してしまったのでメモ。 TL; DR Turbolinks-Location HTTPヘッダを出力しよう turbolinks gemを使ってる場合は勝手にやってくれるよ これがないと、Redirectしたとき…

bankenの思想を読み解く

github.com 認可ロジックの居場所を整理するため、bankenの導入を検討するにあたり、READMEを読んで思想を理解したい。

ActiveSupport::MessageEncryptorを慎重に使う

経緯 Rubyを2.3系から2.4.1に上げたら、ActiveSupport::MessageEncryptorを使っているところが壊れた。ちなみにRailsは5.0.1。 key must be 32 bytes /Users/nisshiee/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/activesupport-5.0.1/lib/active_suppo…

Rubyの便利スクリプトをRustで書き直した

nisshiee.hatenablog.jp 昨日↑便利スクリプトをRubyで書いた話をしたのだが、これ、毎日使っていると、0.1秒とか0.2秒(体感)待たされるのが、気になってくるんだよね。 というわけで、Rustで書き直した。 github.com

sublコマンドをちょっとだけ便利にする

僕は普段Mac + Sublime Text 3でコーディングしている。今回はエディタ宗教戦争をしたいわけではない。ちょっとSublime Text 3を便利にしたよというお話。

TerraformでAuroraを立てる

AWS Auroraを構築するにあたり、Terraformでコード化したのでそのメモ。

Turbolinks再考

この記事は、「Speee Advent Calendar 2016」の4日目です。 3日目は、@Kosaku_Hidaより、「Google Spread Sheetに記載した複数URLのPage Speed Insightsの点数をGoogle Apps Scriptで取得する方法*1」です。 今日は、Turbolinksを考え直してみます。 *1:タイ…

3Dプリンタを買ってみた話

ボーナス支給まであと1か月ということで使いみちを考えた Nintendo SWITCH PSVR 3Dプリンタ

Cookpad TechConf 2016 に参加してきました

techconf.cookpad.com 一言でいうと、めっちゃ満足度高かったです。Cookpadのみなさん、本当にありがとうございました! 強いて言えば長時間あの椅子に座っていたのはケツが痛かったですw

第2回Splathonとフェス

第2回Splathon 2016年1月10日、第2回Splathonを弊社のSpeee Loungeで開催しました。 そもそもSplathonとはなんぞや?という話は以前の記事とか見てください。 nisshiee.hatenablog.jp 第1回はセミナールームという、かなり質素な(?)MTGルームで開催したの…

Speeeが開発組織改革を行って、現場に起こった変化

この記事は、Speee Advent Calendar 2015の最終日です。 24日目は、takakazu_matsuyamaより、『【企画者向け】これだけ知っとけばすんなりとWebサービス・アプリの企画できるという知識リスト』です。 Speeeの開発組織改革 Speeeは2015年の5月、開発組織改革…

Splathonが盛り上がった最大の理由

この記事は、Speee Advent Calendar 2015の6日目です。 5日目は id:takanamito より、「シェアの少ないJS殺しブラウザ対応の話」です。

確率の話がしたくなった 2

前回の続き nisshiee.hatenablog.jp おさらい まぁ「前回の記事読んでください」って話ではあるんだけど、ちょっと図なんかを交えながらおさらいする。 \( P(S) = 0.8, P(R) = 0.2 \) ってのは図で表すとこんな感じ。ここまでは特筆すべきことはない。見たま…

確率の話がしたくなった

いきさつ seagull.hateblo.jp モンティ・ホール問題。 とかの話がまた出てきたのもきっかけなんだけど、まぁ最近「人工知能」ってワードがバズってきてるし、確率の話しとかないと、会社とかでも話が噛み合わなかったりするんだよね。 なぜ「確率」と「人工…

はてなBlog使ってみるテスト

なぜ使ってみたか? 気まぐれ。 Bloggerで書くの疲れたんだ。 Qiitaは気軽で良いんだけど、テーマが限られるしな。 続くのか? 続かないだろうなー。 何を書く気? Qiitaに書くには長くなる話 プログラミング以外の話