tips
2016-07-10 更新 Let's Encrypt を使って取得した SSL/TLS サーバ証明書によって、Rails を動かしている自分の Web サーバを HTTPS 化しました。こんな鍵アイコンが出ていると HTTPS 化されたサーバと通信できています。 HTTPS は次のような利点があります。…
小ネタです。 問題 要素の多い Hash などの中身を確認するために、IRB (irb) を使って、その Hash の中身を表示したいときがあります。 このとき、例えば Mechanize::AGENT_ALIASES を表示するために、コマンドを irb(main):002:0> pp Mechanize::AGENT_ALIA…
テストのために、リダイレクトが絡む HTTP 通信をスタブ化したい場合があります。 例えば、Web スクレイピングをするときに、Mechanize を使うと以下のようにログイン処理を書けます。HTTPS になっていないとかは気にしないでください。 require 'mechanize'…
問題 Rails 4.1 以降のアプリを $ git push heroku master $ heroku open で Heroku へのデプロイとアプリへのアクセスをおこなうと、Internal Server Error が発生し、以下のメッセージが表示されることがあります。 app error: Missing secret_key_base fo…
問題 Ruby でなんらかのメソッドを呼び出しにともなって、特定の処理を実行したい場合、つまり、メソッド呼び出しのフック処理を実行したい状況を考えます。 解決法 エイリアスチェイニングという方法で実現します。エイリアスチェイニングについては、『Eff…
はじめに はてなのサービスの API を自作のアプリケーションなどから叩くためには、OAuth というプロトコルを通じて、そのアプリケーションに適切な認可を与える必要があります。 最近 Ruby を触り始め、Ruby ではてなブログの API を叩きたくなりました。そ…
当たり前の話ですが一応メモ。 Emacs をいまさらながら 24.4 から 24.5 にアップデートしました。アップデートしたあとに Emacs を起動するとこんなエラーメッセージが出て init.el がちゃんと読み込めませんでした。 File error: Cannot open load file, no…
対応した内容をブログにメモしておくのを忘れていたので、いまさらながら書いておきます。 OS X で cron 的なことをするためには、launchd というものを使う必要があります。以前、パッケージマネージャ Homebrew のアップデートを自動で走らせたいと思い、l…
状況 JUnit + Hamcrest で単体テストを書いている。 問題 たとえば、単体テストとして、浮動小数点数を返すメソッドを用いて等値比較をしたいとする。ここで、あるテスト対象オブジェクト sut のメソッド getDoubleValueWithError() は 1.0 を返すが、誤差を…
問題 $ mvn package で、プロジェクトの target ディレクトリ直下に、プロジェクトの成果物として JAR ファイルが作成される。 このとき、例えばマニフェストに Class-Path: ./dependency/foo.jar ./dependency/bar.jar のように指定する。そして、JARをコマ…
問題 Maven で mvn package などビルドコマンドを実行すると、以下のエラーが表示された。 ... [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------…
前回に続いて。 Jackson を使うと、JSON から POJO へデータを格納できる。 基本 以下のような Book という POJO を考える。著者が一人しか設定できないなど、いろいろ問題があるが、例なので気にしないでほしい。 public final class Book { private String…
使ってみる機会があったのでメモ。 はじめに Jackson は Java 向けの JSON 処理用のライブラリである。 FasterXML/jackson ランダムアクセスで JSON からデータを読みたい。今回は、Jackson にある Databind というモジュールを使う。 データの読み込み 外部…
追記:Yosemite 以降では以下の記事を参照してください。 launchd で Homebrew を自動アップデート(Yosemite 編) - kymmt's note Homebrew を使っていて、たまに brew doctor すると、以下のメッセージが表示される。 Warning: Your Homebrew is outdated.…