terraform コマンドのバージョンをプロジェクトごとに明記しておいても、それぞれのプロジェクトごとに都度指定のバージョンのバイナリを落としてくるのはちょっと面倒くさいので、 それを docker をつかって解決できないか考えてみました。以下のものを使い…
調査しやすいロギング環境について社内勉強会で発表したやつをまとめたやつです。 問題が起きたときなどにログを調査することはよくあることだが、ここでは調査しやすログとはどのようなもので、どうやって構築していくかについて述べる。 何も考えずにロギ…
とあるRailsアプリケーションでアップロードされたファイルをウィルスチェックしたいというのがあって、実装したのでメモ。 方針 ClamAVというオープンソースのアンチウィルスエンジンがあるのでこれを使う。各種言語にクライアントライブラリ(Rubyはclamav-…
先日あやまって、topic branch を master にマージしてしまったので、 マージコミットを revert しました。のちほど再度 merge しようとしたのですがうまくマージされませんでした。この場合は、git revert したときにできた revert commit に対して git rev…
Unity でイベント処理などが複雑になってきたので、どうにかできないかと思い UniRx を試しました。 github.com UniRx とは イベントを時系列に並んだシーケンスと捉え、それらを filter したり map したりすることでイベント処理を行うものです。 たとえば…
最近、楽譜学習アプリを作っており楽譜を描画する必要があるので、なにか便利なライブラリがないか調べていたら VexFlowというJavaScript製のライブラリがあることを知りました。 このライブラリは、JavaScriptで五線や音符を操作するAPIを呼び出すことでSVG…
去年の4月から1日1コミットを目標にしていましたが、先日全部埋めることができました。 正直いって結構しんどかったですが、常に進捗を意識できたのと、コミットの単位を短くなるようにできたのは良かったと思います。 しかし、体調があまり良くない時は正直…
前回のエントリーで cpp-netlib の client をモックにすげ替えることに成功しましたが、 任意のレスポンスを返すためにはどのようしたらいいか、という点は述べていませんでした。 このモックは、Ruby の WebMock のような設計にしようと考えているので、 We…
C++でネットワークプログラミングをするときは、cpp-netlib という Boost.Asio をベース としたライブラリを使っているのですが、モックがほしいことがあります。 例えば下記のコードで、http://www.boost.org に実際にアクセスするのではなく任意のレスポン…
FirefoxのアドオンをCUIから管理するツールを作ってみたで紹介したFirebrewのAnsibleモジュールを作ってみました。GitHubにて公開しています。 インストール方法 このモジュールを使用したい Ansible Playbook があるディレクトリ直下にlibrary/ディレクトリ…
先日、Firebrewというツールを作成し、RubyGemsにて公開しました。 Githubにて開発しています。 コレは何? FirefoxアドオンをCUIからインストールしたりアンインストールしたりできる、いわゆるパッケージマネージャーと呼ばれるものです。 これを用いれば…
Vimにはインデント階層を可視化してくれる indentLine というプラグインがあります。 このプラグイン、便利なので僕も使っているのですが、ひとつ問題点があります。このプラグインを導入すると、YAMLの構文強調がおかしくなるのです。 Fig. 1 indentLine無…
はじめに Vim標準のYAMLのインデントルールが気に入らなかったので、Vim script の勉強がてらにプラグインを作ってみました。 YAMLの構文は、YAML Ain’t Markup Language (YAML™) Version 1.2 を参考にしています。プラグインのソースは、 Github: mrk21/yam…