Ruby

`each_with_index` が使えるのになんで `with_index` が使えない?

with_index は Enumerator のメソッドだから、ただ Enumerable を継承しているクラスからは使えない。 map をかませると、Enumerator のオブジェクトが返ってくるから使える module Enumerable (Ruby 2.3.0) CSV::Row でインデックスを1から始めたいんやが…

Ruby の `Enumerable#all?` が empty array にたいして `true` を返す

[].all? => false が返ってもヨサソウなのに・・という疑問 チャットで聞いたりググったりして、数学的に正しい方向に倒している結果、今の挙動である true を返していることがわかった。 ruby's "any?" and "all?" methods behaviour on Empty Arrays and H…

Redcarpet の辛いところ

TOC(Table Of Contents) を生成する機能があるのだけど、 見出しに日本語が含まれていると、完全にスルーされてしまう点。 ## これは概要です これを redcarpet のレンダリング処理にかませると・・・ <h2 name="">これは概要です</h2> といった具合。 ## This is overview だ…

Mac (El Capitan) で nokogiri のインストール @Ruby 2.3.1 でハマった

いつものように $ ~/.rbenv/plugins/ruby-build $ git fetch origin $ git rebase origin/master $ rbenv install 2.3.1 $ rbenv global 2.3.1 $ gem install bundler $ rbenv rehash ここまでは全く問題なし。 つづいて Rails ディレクトリへ、 $ ~/projext…

久しぶりに Wercker で新しいRailsアプリのビルドを実行してみたら、ビルドが途中でこける問題が発生

こんなエラーがでて死んでた /cache/bundle-install/ruby/2.2.0/gems/execjs-2.5.2/lib/execjs/runtimes.rb:48:in `autodetect': Could not find a JavaScript runtime. See https://github.com/rails/execjs for a list of available runtimes. (ExecJS::Ru…

Rails メモ

rails g migration create_xxxs hoge:integer{8} みたいなやつに null falseとか渡せないか 結論: できるのは Rails 4.2 以降で、しかもreferenesかbelongs_toの場合のみ コード:https://github.com/rails/rails/blob/v4.2.0/railties/lib/rails/generator…

Rails メモ

インスタンスをsaveすると、 https://github.com/rails/rails/blob/master/activerecord/lib/active_record/validations.rb#L58 で context がActiveModelのvalid? に渡る https://github.com/rails/rails/blob/master/activemodel/lib/active_model/validat…

6/3 気になった記事

iPhone AC 番外レポート : スマホゲームニュース:iTunes ランキングへの工作・操作広告について 2015年5月の、これだけは押さえておきたいWeb関連の動き | Stocker.jp / diary waifu2x honoka 良さそう ソフトウェア開発で得た教訓22箇条 | 開発手法・プロ…

突然 rails s しようとして warning: already initialized constant APP_PATH と言われるようになった

セキュリティFIXのOSXアップデートをかけた後の話。 OpenSSLにまた重度の欠陥、修正アップデートは3月19日にリリース:CodeZine これの対策かな?OpenSSL辺りでなにか死んでるっぽかったので、 Rubyを再インストールして解決。 nyangry:app(27m|implement_ho…

ActiveRecord Association がメモリに乗っているか確認する

ActiveRecord::Associations::AssociationProxyのloaded?メソッドを叩けばわかる。 class User < AR has_many :favorites end 4.1.9@2.1.5 (main)> User.first.favorites.loaded? SQL..................................... => false 4.1.9@2.1.5 (main)> lo…

send vs method.call

個人的には method.call が明示的な感じがして好み でも場面で使い分けるべきもののような気もする・・? パフォーマンスは確かメソッドの方が高かったような・・2009年ぐらいの記事で見た記憶・・ sendはプライベートメソッドも問答無用で呼べる method…

12/15 気になった記事

rbenv を使っているなら rbenv-gem-rehash を使おう やべえ・・知らなかった・・・情弱すぎた・・・

12/5 気になった記事

気になった記事 エンジニアの評価観点について 挑戦し続けるために意識していること其の二:新しいことを学ぶときに最初のハードルを下げる2つの考え方 #vgadvent2014 プロトタイピングと仮デザイン指針 CSS Stats [rails][activerecord] 環境チェックに使え…

Mac(Yosemite)でRuby 2.1.5 インストール

$ ~/.rbenv/plugins/ruby-build $ git pull remote: Counting objects: 12, done. remote: Compressing objects: 100% (11/11), done. remote: Total 12 (delta 3), reused 0 (delta 0) Unpacking objects: 100% (12/12), done. From git://github.com/sstep…

Ruby 2.1.4 libv8

MacのローカルでRuby2.1.3から2.1.4にあげてみた。 ~/.rbenv/plugins/ruby-build git pull rbenv install 2.1.4 rbenv global 2.1.4 rbenv uninstall 2.1.4 gem install bundler で行けるかなーと思ったら、Railsプロジェクトのbundleコマンドで死んだ。 $ b…