理系学生日記

おまえはいつまで学生気分なのか

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

Stubby4JにおけるJSONでの正規表現、あるいはリクエスト中の特定のフィールドでレスポンスを変更する

Stubby4J を使用したテストにおいて、API リクエストとして送る JSON の中の値によって、レスポンスを切り替えたい場合がある。 もうちょっと具体的にいうと、 リクエストの JSON の中の特定のフィールドの値によってのみ、レスポンスを切り替える 他のフィ…

15分でWebSphere MQの環境を構築しメッセージの読み書きを行う

WebSphere MQ の実験するんだったら Docker 使うのが一番楽だと思います。 調べてたら、IBM が公式に WebSphere MQ v8.0 の Docker Image を作ってくれてて、これあったら 15 分くらいで WebSphere MQ が使える環境が整います。便利な世の中ですね。 https:/…

MacでIMEを切り替えるキーバインド

Mac の IME として AquaSKK を使っているんですが、AquaSKK は Eclipse などとの相性が非常に悪くて、特定の文字が表示されないとか、Ctrl+J でモードを切り替えようとしたら改行コードが入力されてしまうとかで、ぼくは日に日にストレスを溜め込んでいます…

MQMDおよびMQIの整理

WebSphere MQ なんて聞いたこともなかったんだけど、なんかまぁ特定エリアではよく使われているらしい。 以下、WebSphere MQ と RabbitMQ とかと比較するのは比較軸としてふさわしくない気がしないでもないけど、Google Trends の結果としては以下のようなか…

GitbucketのDBからレビュー指摘を抽出する

GitBucket 上で Pull Req とかやりとりしているんだけど、いろいろと評価をするために、これらのレビュー情報を定量化する必要に駆られました。 こういうのを手で数えたりしていると日が暮れるし、何が生産性だ腹を切って死ねということになる。GitBucket で…

Maven Assembly Plugin でできるファイル名がクソダサかった話

Maven Assembly Plugin でできるファイル名がクソださかったのでなんとかしたかった話。 descriptorRef 要素で jar-with-dependency 指定してたら、hoge-0.0.1-SNAPSHOT-jar-with-dependencies.jar とかいうフザけた名前になってて、あまりの衝撃に手足が震…

Maven Assembly Pluginで実行可能jarをつくる

maven assembly plugin maven 力も Java 力も貧弱なのだけれど、依存性を 1 つにまとめた実行可能 jar を作る必要性に駆られたので、ちょっと調べてた。 maven の plugin で実行可能 jar を作ろうとすると、以下の 2 つがメジャー。 Maven Assembly Plugin M…

Stubby4JをJUnitから利用する

Stubby4J を Junit で起動できればだいたいの HTTP 要求に関するテストはできる。 だいたいこんな感じでテストを書きたい。 public class Stubby4jTest { @ClassRule public static Stubby4jServer server = Stubby4jServer.fromResource("com/kiririmode/bl…

RestEasyとHttpComponents、そしてConnectionManager

RestEasy client を使用した HTTP 要求を行うと、TCP コネクションが長時間にわたり残存する問題が発生することがあります。 RestEasy の公式ドキュメントを読めば「HTTP コネクションは適切に release し、適切に close しなければならない」ということは分…

MacBook AirでもRetinaディスプレイ並の高解像度を実現したい

むかしは一年に一台ほど Mac 買ってたけど、2012 年以降はまったく買ってなくて、ひさしぶりに Mac 系の PC 買った。MacBook Air の 13 inch 買った。 これまでは MacBook Pro 15 inch の Retina で、Air もまぁ Retina だとタカをくくっていたのだけれど、M…

コマンドラインでの16進数変換

バイナリを hex encoded で表現するというケースが最近増えてきて、たとえば CBC の初期ベクトルを hex encoded で表現するとか、鍵を hex encoded で表現するとか。 16 進数というと hexdump があって、たとえば 0aA は 16 進数で表現すると 306141 になる…

パスワード等の秘匿情報をKeyStoreで保持する

DB 接続用のパスワードだったり、Basic/Digest 認証のときに使うパスワードだったり、世の中にはパスワードが溢れていて、もうパスワードを個別にして記憶しておくとか絶対にムリ、ムリムリムリムリかたつむりであるから、みんなどの Web サービスのアカウン…

イノベーションのジレンマ

イノベーションのジレンマ、どこに行っても評判よくて、いつか読みたい読みたいと思っていたんだけれど、いつの間にか Kindle で購入してて、いつの間にか読んだ。 イノベーションのジレンマ 増補改訂版 (Harvard Business School Press)作者:クレイトン・ク…

Maven管理下のリソースファイルの値を実行時にプロパティの値で置換する (Resource Filtering)

ここ半年くらいジャバジャバしていて、maven とかの実力不足を痛感している今日このごろで、勉強しているといろいろなことができるんだなぁというのを発見したりします。 一例として Maven には、動的にリソースの特定の値を置き換える機構が存在していて、…

コマンドラインで簡単にAES暗号化、または Java での AES 暗号化

Java で AES 暗号化とかやってて、コマンドラインで簡単に試せれば良いのになぁとか思ってたら、openssl 使ったら余裕で暗号化できることに気付いた。 例えば、AES/CBC の 128 bit 鍵長で暗号化したい場合は、以下のようにすれば良い。 -e は暗号化、-d は復…

curlでメールを送る

curl はどうも HTTP 用と思われている節がありますが、実は様々なプロトコルに対応しています。 たとえば SMTP にも対応しているので、がんばったら gmail にもメールが送れたりします。 $ cat <

Javaアプリから共有ライブラリが読み込めない問題(java.library.path と LD_LIBRARY_PATH)

なんか良くわからないエラー (no [ライブラリ名] in java.library.path みたいなヤツ) が出てきたのだけれど、解決方法が java.library.path の設定ではなく、LD_LIBRARY_PATH の設定だったりした。この手のエラーに苦しめられ続けており、そのあたり、ちょ…

重力とは何か

ひさしぶりの physics タグのエントリ。 ここ最近、物理クラスタだけでなく一般ニュースレベルで、重力波発見のニュースが盛り上がりました。 電磁波はちょっと頑張ればシールドできる一方で、重力波というのは防ぐことはできません。逆にいうと、重力波とい…

git branchをpecoで選択する

git で checkout する branch だとかを選択するとき、branch 名とか逐一覚えてられないから毎回 git branch を打って確認してたけど、そろそろダルくなってきたので、zsh + peco で branch を選択できるようにしたら結構快適になりました。 function peco-gi…

iPhoneの低電力モードを最短時間でONにしたい

iOS 9 から iPhone では低電力モードっていうのが利用できるようになりました。 基本的には App のバックグラウンドでの更新だとか自動ダウンロードだとかが OFF になったりしてバッテリの持ちが良くなるっていうモードで、ぼくとしては積極的に活用したいん…

モックサーバStubby4jの性能

モックサーバに Stubby4j というのがある。 一緒に働いている方に紹介してもらったんだけど、これすごく使いやすい。 使い方は README にわかりやすく書いてあるからそれを読んでもらえばよい。 この Stubby4J、性能テストにも使いたいことがあるから、どの…

maven と git-flow を使用したリリースフロー

ぼく自身、git-flow を利用するのは始めてで、Maven 力も低い。 そういう人間がリリース時にどうしようかとか考えても仕方がないので、先人に頼るかーと思っていたら、ちょうどいいエントリがあった。 Why I Never Use the Maven Release Plugin - DZone Jav…

Kindleのセール情報をスマフォ通知する、あるいはリマインダ登録する

app

Kindle のセールはいつの間にか始まりいつの間にか終わっていたので、ネット情報に目を凝らしていないと買い忘れるようなことも多かったのですが、以下の通り、先月末に Kindle のセール情報を検知する方法が見つかりまして、それが RSS 配信される流れとな…

helm-find-files でタブ補完を効かせる

前から helm のミニバッファ上で Tab 補完が利かないのが何とかならんもんかと思ってた。 Emacs での補完の考え方と helm の補完の考え方は別にあって、helm を使う場合はミニバッファ上で補完をさせるのは邪道みたいなかんじになってる。 Emacs' default mi…

AppStoreのアプリをAnsible Playbookからインストールする

Mac で AppStore からのインストールやアップデートをコマンドラインから実行できるようになりました。 mas-cli - Mac App Storeのシンプルなコマンドラインインターフェイス | ソフトアンテナ コマンドラインから実行できるのであれば、当然 Ansible の Pla…

Mac の zsh で PATH を zshenv に設定するとハマる

zsh だと PATH 設定を $ZDOTDIR/.zshrc で定義していたんですが、調子にのって .zshenv に定義するようにしたら PATH の挙動がおかしくなりました。 期待してたのは以下のような順番だったのですが、実際には /usr/local/bin、/usr/bin、/bin、… が先に来る…

明示的に指定した場合にのみ Ansible のタスクを実行する

Ansible でタスクを実行する場合に、「明示的に指定をしない限り、このタスクは実行したくない」というケースがあります。 タスクとしては定義しておかなければいけないけれど、playbook を実行する人に無意識に実行させたくないようなケースですね。 このた…

Java に関する最後の雑誌?Java Magazine の購読

最近はもっぱらジャバジャバしているので、Java の雑誌でも読んで動向をウォッチしとかないとなぁなどと思っていた。 が、JAVA PRESS が死に、JavaWorld が廃刊になったこのご時世、雑誌としてはどうやってウォッチすれば良いのかなぁと思ったら Oracle が J…

Maven力の低い自分に送るMaven良い感じドキュメント

Maven 力が低くて、会社の人に迷惑かけている感じある。 Maven、基本的に 公式ドキュメント 読みにくいし全体像つかみにくいし、本読んでもなかなか詳細が分からないし何とかならんものかと思ってた。 Apache Maven 3 クックブック - 理系学生日記 思って探…

ローカルプロキシサーバFiddlerでリクエストヘッダを改竄できそう

フロントエンドのシステム間通信を行うにあたり、間にプロキシサーバが介在しており、そのプロキシサーバが HTTP ヘッダを操作しているというケースがあります。 このような場合のテストをシンプルに行う場合、開発者のローカル PC に同様のプロキシサーバを…