ruby
先月、heroku の推しサーバが unicorn から puma に変わったという発表がありました。unicorn だとスロークライアントの影響を受けやすいというのが理由なようです。 もう少し詳しく調べてみましょう。 そもそもスロークライアントってなに その名の通り遅い…
第19回目の ginza.rb ミートアップを開催しました。 Ginza.rb 第19回 だれが一番?Railsアプリサーバ徒競走!&Ruby2.2について話そう - Ginza.rb | Doorkeeper raptor と rhebok のパフォーマンスをみる 第17回ミートアップ で、Rack サーバの比較をしまし…
@miyohide さんの協力により、ランダムで日本人の名前を返す gem Gimei が住所に対応しました。次のようにすると、それっぽい住所を返します。 address = Gimei.address address.kanji # => 岡山県大島郡大和村稲木町 address.to_s # => 岡山県大島郡大和村…
みなさんはどうしていますか。個人的には、ローカルの開発環境であればグローバルにインストールしちゃっても問題ない気がしてきています。 ずっと習慣で bundle install —path vendor/bundle ってしてたけど、別にグローバルな感じでインストールしちゃって…
bundle install で nokogiri のインストールに失敗して、そこからやったことのメモです。 とりあえず libxml2 と libxslt 入れる。 brew install libxml2 libxslt これでもダメだったのでNokogiriのドキュメントを見ると、「libiconv をソースから入れろ」と…
gem search rails とかすると、部分一致で検索されて結果がたくさんでます。完全一致したgemの情報のみ欲しいときは次のようにします。 gem search ^rails$ しかし毎回^や$を打つのはだるいですね…。そこで簡単なシェルスクリプトを書いてみました。-dは詳細…
HTML2Hamlとかあるけど、いちいちURL開いてコピペして…とか面倒ですよね。次のコマンドで自動変換できます。zip納品されたHTMLをHamlに直すときなどにどうぞ。 前提条件 Mac gem i html2haml pbpaste | html2haml --unix-newlines | pbcopy
僕が作った gem の中で、ダントツにダウンロード数が多い rake_shared_context という gem のバージョンを 0.2.1 に上げました。0.1.0 にバージョンアップしたときから8000ダウンロードくらいされてるみたいなんですが、その間何かあったんですかね…。 0.2.1…
rake_shared_context という、rake タスクをテストする際にべんりな shared context を gem にしたものがあります。これをバージョンアップしました。 バージョンアップしたときに RubyGems.org を確認したら、地味に 2000 ダウンロードされていて驚きました…
gimei をバージョンアップして、0.1.0 にしました。2celebさんから pull request を投げてもらい、それに合わせて API を整備。主な変更点は下記のようになります。 サンプルデータを拡充(約14000行のYAMLに!) 男女を指定して名前を返すAPIを追加 コード例 …
gimei という、ランダムで日本人の名前を返す gem を作りました。 似たようなライブラリに faker があります。faker は人の名前だけではなく、住所やメールアドレスやユーザ名や電話番号など、たくさんのジャンルのダミーデータを返してくれるすごい gem で…
Tokyo Rubyist Meetup (trbmeetup) seeks to help bridge the Japan and international ruby and ruby on rails community. ということで、海外の技術者とミートアップできるコミュニティ Tokyo Rubyist Meetup に初参加しました! 今回のミートアップでは、…
新しい地域Rubyコミュニティ、ginza.rb を始めます。 第0回目のミートアップを 6/18(火) にやりますので、気になった方はぜひ申し込みください! Ginza.rb 第0回 - Ginza.rb 第0回では Rails 4 での新機能をチェックします、次回からは Rails 4 のソースコー…
東京Ruby会議 の3日目に参加してきました。既に自分の分の発表は終わっているのでリラックスしながら発表を聞くことができました。 以下箇条書きによる感想です。 joker さんの話を聞いてDDD熱が高まる DDD本読まないと… 安川さんの話を聞いて沖縄旅行したい…
以前、bundler で管理している gem のソースをすぐに読み始める方法 としてbundle openを紹介しましたが、今はもっぱら hibariya さん作の reditor を使っています。 bundle openと比べての利点は、標準添付なライブラリも開けるところと、正確な gem 名が分…
ruby1.9.3-p374 がつい先日リリースされましたね。最近テストが謎の segfault で落ちまくっていて困っていたのですが、このリリースでそのあたりが解消されているらしいのこと。なので早く brew upgrade したかったのですが「brew だと ruby-build の変更が…
みなさん、 timecop 使ってますか?timecop は、テストで時間を扱う時に必須と言えるライブラリです。テスト中の時間を止めたり(Timecop.freeze)時間を移動させたり(Timecop.travel)できます。似たようなライブラリとして delorean があります。RailsCasts …
rbenv をさくらのサーバに system wide にインストールする手順のメモです。 インストール準備 ruby のインストールに必要そうなものを yum でインストールします。 sudo yum install libyaml libyaml-devel zlib zlib-devel readline readline-devel openss…
昨日 @bekkou68 さんに「前島さんってどうやってRubyやRails関連の情報を収集しているんですか?」って聞かれたのでまとめてみます。とりあえず海外のブログ限定で。日本ブログ編は気が向いたらやります…。 RailsCasts 有名すぎて説明不要かもしれませんね。…
これまで rand(2) == 1 みたいに書いてたけど、RailsCasts を見ていたら [true, false].sample のように書いていて、こっちのほうが若干読みやすさで上回っていていいかもと思いました。他にもっといい書き方があるぜ!という方いらっしゃったら教えてくださ…
札幌Ruby会議2012に参加しました。予約してたホテルが一週間前にホテル都合で予約キャンセルになったり、行きの飛行機の時間を間違えてしまうトラブルがありつつもなんとか3日間フルに参加することが出来ました。 予約してた札幌のホテルが設備故障で休みに…
ずっと行ってみたかった yokohama.rb に初参加しました。 Bu: Yokohama.rb #24 Rubyレシピブック読書会→もくもく→行きつけの中華屋で懇親会という流れ。僕は Ruby 2.0 の refinements を手元で試したりしていました。 参加してすごく “コミュニティ感” の強…
僕はこれまで下記のようなインデントで ruby のコードを書いてきました。 SuperLongClassName.super_long_name_method(hoge: 'fuga', foo: 'bar', baka: 'aho') 理由は、Emacs の ruby-mode による標準インデントが上記のような形になっているからです。今ひ…
gem install -> gem i gem list -> gem li など、gemのコマンドは他のコマンドと衝突しない範囲で省略できる。これまで gem install xxx としてたけどこれからは gem i xxx として生きていこうと思います。
ぐぐってもエントリがみつからなかったので。to_s や to_i に引数を渡すことで変換できる。 10進数から2進数への変換 255.to_s(2) # => "11111111" 2進数から10進数への変換 "11111111".to_i(2) # => 255
5から9までの整数をランダムで返すような処理を書くとき、1.9.2までは rand(5) + 5 もしくは r = Random.new r.rand(5..9) のようにする必要があります。でも1.9.3だと rand(5..9) のようにできるようになっています。少しのことですけど嬉しい改善点ですね…
初めてチャレンジしてみました!以下感想。 分野別 Web Game と 一人ゲーム をやりました。Web Game は jquery の click メソッドでなぜかクリックできなくてハマりました(イベント周りの知識不足)。また試しに CoffeeScript を使ってみたら慣れてないせいで…
githubで使われているMarkdown用ライブラリRedcarpetが後方互換性のない version 2 になるみたいです。現時点のバージョンは 2.0.0b3 で、まだ本リリースではないようですが、これから使うなら2の方を勉強しておくべきだと思うのでまとめます。基本的にいつ…
RubyKaigi2011に当日スタッフとして参加してきました!前回のRubyKaigiは仕事でフルに参加することができず悔しかったです。 次回はちゃんと全部参加したいです><それかスタッフで参加するか。 Rubykaigi2010に参加した - おもしろWEBサービス開発日記 今…
the rspec book - Chapter 12 Spec::Example その1 - おもしろWEBサービス開発日記 the rspec book - Chapter 12 Spec::Example その2 - おもしろWEBサービス開発日記の続き。 BDD BDDのゴールの一つは正しい言葉を得ること。技術的なことのわからない人と…