Rubyで日付の計算するならactive_support使っとけって世間で言われてるけどマジだわ

最近、RubyでRailsを使わずに開発をする機会があるのですが、日付に関する計算は結構面倒なことが多く、コードも汚くなってしまいがちです。 しかし、railsでおなじみのactive_supportを使えば、直感的に書けてしまいます。 やはりactive_supportは偉大です…

ももクロとニュータイプとガンダム

先日、かねてから念願だったももクロのライブ 『誰でもカモ~ン!~ただし、ホワイトベレーの方に限ります♡~』 に参戦してきた。 初めてのももクロライブである。ユニクロのTシャツとチノパンで参戦した僕とは違い、9割9分の方はももクロ衣装のコスプレやハ…

SQLiteのinteger型とPostgreSQLのinteger型は違うんですね

railsアプリを開発していてherokuに移行した際、エラーが発生してしまった。 ローカルで動いていたのになぜ... $ heroku logs でログを確認してみると ERROR: operator does not exist: character varying = integer と書かれている。 ググってみるとやはり…

MiniProfilerを使ってパフォーマンスを測定してみました

先日railsで開発しているアプリケーションのパフォーマンスを改善する機会がありました。 パフォーマンス改善の基本、「ボトルネックを特定」をするために、パフォーマンス計測のプロファイリングツールを探していたところMiniProfilerというツールが素晴ら…

railsのpluckメソッドが便利な件

先日、リファクタしている際に知ったpluckというメソッドが素晴らしかったのでメモです。 pluckは引数としてカラム名を渡すとそのカラムの値が配列で返してくれるメソッドです。今までmapを使って書いていた下のようなコードが、 user_ids = Array.new user_…

SSHで接続しようとしたら秘密鍵のパーミッションでエラーが出た

リモートサーバーに公開鍵暗号方式を使用したSSHでアクセスを試みたところ下記のようなエラーが発生。 $ ssh staging @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@…

ruby書けないのに飲み会には行くんですね

新年度になり、世間は歓送迎会で賑わうシーズンになってまいりました。 例にもれず、弊社でも毎週のように歓送迎会が開かれています。 毎週のように酔っぱらって家に帰り、飲み会が面倒だと愚痴をこぼしていた自分に、 同居人の方からグサリと刺さる言葉を言…

kaminariのlink_to_next_pageにtwitter bootstrapのiconを挿入する方法

kaminariのlink_to_next_pageに文字列でなくtwitter bootstrapのiconや画像等を埋め込みたいときがあると思います。 helper methodを使用して書けることがわかったのでメモ。controllerはREADME通り。 class PostsController < ApplicationController def in…

railsのcontrollerでfindメソッドをDRYに書く

railsのcontrollerの中で各action毎に同様のfindメソッドを呼びたいときがよくあります。 そんなときは以下のようにDRYに書くことができます。before class PostsController < ApplicationController def show @post = current_user.posts.find(params[:id])…

rubyでif条件式がtureになる条件

ややこしいタイトルですね。 rubyを書いていて、すごく基本的なところでハマってしまったのでメモ。結論から言うと、rubyでif条件式がtureになる条件は以下の通りです。 ①falseでない ②nilでないつまり、0や空文字列、空配列は真となります。 if Member.find…

Google Maps for iPhone がアップデートされたようです

Google Maps for iPhoneがアップデートされたようです。 レストランやカフェなど13種類のカテゴリから近くの店舗を検索できるようになり、 より検索性に優れたデザインになりました。 早速、明日から使ってみることにしましょう。 楽しみです。 Googleを支え…

2013年3月に読みたい本

最近、サービス開発の方ばかりに時間を使っていて本を読む時間がめっきり減ってしまっている。 今は開発に集中すべき時期なのでそれはそれでいいような気もするが、教養を深めたりよいコンテンツに触れておかないと、よいサービスは作れないとも思っている。…

Gitで複数のcommitを一つにまとめる方法

Git

複数人で開発をしているとよくこんなことがあると思います。 pull requestー! ↓ 師匠「ここ修正してくださーい!」 ↓ 修正は完了したけど、どうリポジトリに反映すれば…? 修正した後のコミットが増えちゃうの嫌だし、一つにまとめたいなぁ。 ブランチを消…

Git初心者が複数人で開発するために覚えるべきコマンド(前編)

Git

最近、知人と3人でWebサービスを開発しているのですが、 その中でGitとBitbucketを使用してソースコード管理を行っています。その際に、よく使用しているGitのコマンドを自分のためにメモしておきます。 まず、ブランチを作成します。 作成した新しいブラン…

コンソールから使えるgitブラウザ、tigをHomebrewで入れてみた

最近gitを覚え始めたのですが、知人のエンジニアの方にtigが便利だよと教えて頂きました。 tigとは、コンソールからgit のコミットログやdiff その他諸々を確認できるgit ブラウザです。 そのときのインストール手順をメモしておきます。 $ brew install tig…

東京Ruby会議3日目に行ってきました

東京Ruby会議3日目に行ってきました。 東京Ruby会議3日目 に行ってきました。 そもそも私、エンジニア界隈の大きなコミュニティに参加するのは 初めてです。 正直、緊張します。ぼっち怖い。。。でも、Rubyの活気あるコミュニティの雰囲気を見てみたい! と…

はてなブログはじめます

以前から、 「コードを書けなければ、誰も説得はできないし、世界を変えることはできない」 ということをヒシヒシと感じていました。 まあ、世界を変えたいなんてのは大げさですが、自分がせっかくこの世に生まれてきた訳ですから、 少しぐらいは世の中をザ…