2013-01-01から1年間の記事一覧

iPadのSafariでオレオレSSLクライアント証明書を使っていると動画再生できない

イントラ案件だけどiPadで動画を見たいという話があったので、videoタグを使ったHTMLページを作り、Safariから動画を視聴できるようにした。 動画自体は社外秘ではないのだけど、サイト内の他のコンテンツは社外秘なので、SSLクライアント証明書を配布してSS…

JMeterのリモート実行機能をNAT環境で使う

JMeterをNAT環境で使う機会があったので設定方法まとめた。というかほぼ以下のサイトに書いてあった通りにした。*1 Distributed JMeter Testing Through SSH 今回は接続周りの設定の話しかしないので、インストール方法、テスト計画の設定方法、サーバ上での…

PDT(PHP Development Tools)で複数行ペースト時に次行のインデントが変更される

仕事でPHPのコードを編集することがあるのだが、自分が頻繁に使う「トリプルクリックで行選択→ドラッグで数行選択→コピー→別の箇所にペースト」という操作をおこなうと、なぜかペーストした行の次の行のインデントが変わってしまうという現象があり、不便を…

Scala 2.9でパターンマッチでコンパイルエラー

Scalaはパターンマッチ内で正規表現を使ってマッチするかどうかの判定及びマッチした箇所の抽出が出来る。 val regex0 = "(.*)hell".r val input = "nutshell" val result = input match { case regex0(p) => Some(p) case _ => None } assert(result == Som…

不変オブジェクトで循環参照をつくる

お題: 新しい状態を作るにはcopyメソッドで新たなインスタンスを作ります。 そうすると結局お互いに保持している参照が古い状態を指していることになるので、参照を新しいものに付け替えなければなりません。 先の例ではvar属性だったため、再代入することで…

同じ名前のメソッドを持つクラスに対するimplicit defを2つ定義してimportした場合のコンパイルエラーがScala2.9と2.10で異なる件

「同じ名前のimplicit defを2つ定義してimportした場合の挙動がScala2.9と2.10で異なる件 - xuwei-k's blog」みて思い出したので確認してみた。Scala 2.9.1 + scalaz 6.0.3で下のようなコードを書いてコンパイルすると "reassignment to val" エラーになる…

JavaでOutOfMemoryErrorを出す方法

お題: 結合テスト中のシステムで、OutOfMemoryErrorが発生しました。UT後ソースコードの変更はしていません。ヒープメモリは足りているようです。原因として何が考えられますか?(筆記解答) 8つの質問で、Java SI業界の現状を知る - レベルエンター山本大…

Blocksで不動点関数(Re: リークしない再帰blocksの書き方)

お題: Sometimes, you want a block to be able to call itself. That means it needs a reference to itself. And that means you have a wonderful opportunity to create a strong reference cycle that will endure till the end of time, or at least t…

Play2.0でパラメータを型安全に受け取る

アクションに渡すときはパスやクエリストリングはアクションの引数の形に変換する必要がありますが、その変換ルールを定めているのが PathBindable[T], QueryStringBindable[T] といった implicit object です。conf/routes では例えば Int などはではデフォ…

はてなブックマークの新デザイン

みんな怒ってるのは、使い勝手を変更したからでもオシャレだからでもなくて、端的に使いにくいからだと思うんだよね。 新着エントリのタイトルを1日1500件分ぐらい流し見している程度のユーザとして感想と希望*1を書いていくよ。 ちなみに我慢して使ってたら…