an odd fellow

仕事のメモ

技術

locustのNUM_CLIENTSとHATCH_RATEについて

背景 GAEで作ったAPIサーバーを本番反映するに当たり必要なリクエスト数さばけるのかを確認する必要があった。先輩社員がlocustを使っていたので自分もlocustを使ったが、NUM_CLIENTSとHATCH_RATEの挙動が分からな過ぎた。NUM_CLIENTSとHATCH_RATEの関係が分…

docker multi stage buildを試す

背景 reviewdogのDockerfileについて先輩社員にレビューもらうと、dockerのmulti stage build使うと幸せになれるよと教えてもらった。 レビューをもらったDockerfileは以下。pythonのdockerイメージにgoをインストールしてからgo getでreviewdogを入れている…

IntelliJでproject painとかをショートカットでリサイズする

背景 IntelliJと書いたがPyCharmもRubyMineでも同様。 Command+1でプロジェクトペインが開けるが、windowをガチャガチャリサイズしたあとだとプロジェクトペインのサイズが以上にデカかったり小さかったりする。マウスでサイズ調整してたが、キーバインド割…

docker runでローカルのgoファイルを実行する

背景 RealWorldHTTPを読み始めた。goでサンプルのHTTPサーバを立ててcurlで色々オプションを付けてリクエストを試しながら挙動を確認していくようだった。 それで、サンプルのHTTPサーバーを書いたんだけど、dockerで実行したくて以下のようにした。 $ docke…

drone.ioでdocker run -vしてハマった

背景 drone.ioでreviewdogを使いたくてこんな感じで書いた。 Dockerfile.reviewdog FROM python:3.6 USER root ENV HOME /root ARG WORK_DIR WORKDIR ${WORK_DIR} ENV APP_ROOT ${WORK_DIR} # install Golang ARG GO_VERSION=1.8.3 RUN mkdir /tmp/go && \ c…

GCPでprojectをまたいだ権限の設定方法

背景 読み飛ばしてOK。自分用メモ。 AppEngineからBigTableを読み込みたかったが、BigTableはprdにあり、AppEngineはdev,stg,prdに立ち上げる予定で、devのAppEngineからprdのBigTableを読み込むとい うprojectを跨いでアクセスする必要があったが、やり方が…

terraform init が s3 の認証情報が違うと言ってコケるとき

備忘録 問題 terraform init で -backend-config を指定すると以下のように怒られた。 $ terraform init -backend-config="key=prd/gcp-terraform.tfstate" Initializing the backend... Error configuring the backend "s3": No valid credential sources f…

男の着エロ画像をランダムで表示する slack bot を Python で作る

https://github.com/roronya/skinybotgithub.com 大学に六年も通って出来るようになったことが此のようなくだらんことでは、君のお母さんは泣いているぞ。 以下を見たら1時間で作れた。 PythonでSlackbotを作る(1) – ビットログ このライブラリが強かった。s…

jupyter に themes を適用する

最近眼精疲労がヤバイのは jupyter notebook の背景が白いせいだと思ったので themes を設定した— ろにゃ (@roronya) 2016年12月3日 jupyter に themes を簡単に設定することができる jupyter-themes を紹介する。また、jupyter-vim-binding と併用する際の…

【逐次更新】SQL でよくやる処理を pandas でやるときのメモ

github にまとめた github.com

【Symfony2】DoctrineFixturesBundle で作ったフィクスチャを phpunit から呼びたいとき

機能テストをするときにテストデータを DoctrineFixturesBunle で作った LoadHogeData クラスを使いたいとき LoadHogeDataクラスが ContainerAwareInterface を実装しているときどうするか LoadHogeData が外部キー制約で怒られるときはどうするか について…

doctrine:fixtures:load で外部キー制約で怒られるとき

[Doctrine\DBAL\Exception\ForeignKeyConstraintViolationException] このエラーが出る。 結構調べたんだけど、結局データベースごと作りなおすしか無さそうでした。 というわけで、僕は以下のコマンドを叩いています。 php app/console doctrine:database:d…

楽観的ロックと悲観的ロック

ロックについてあんまり気にしたことがなかったけど、必要になったので調べた。 ページを開いて何か変更して更新ボタンを押すシチュエーションを考える。僕が変更を加えている間に、他の誰かがそのページで別の変更をしたのを、僕が更新ボタンを押すことで上…

Emacs から Atom に乗り換えた

エディタを Emacs から Atom に乗り換えた。 最近は jupyter notebook でざっと書いて Python スクリプトに清書することが多いんだけど、効率的が悪いし何か良い方法は無いかと色々探していたところ Atom に hydrogen という良いプラグインを見つけたので良…

slackin のバグでハマった

slackin 0.8.3 には SLACK_CHANNELS を空にしてデプロイすると invite 出来ないバグがある。 github.com slackin でメールアドレス入力して 「GET MY INVITE」押しても PLEASE WAIT から一生進まない症状で悩んでる人がいたらこのバグです。このときブラウザ…

tramp で su とか踏み台

emacs で ssh するときは tramp 使うんだけど su とか 踏み台とかも出来ます。24.3 以降ならいい感じにシンタックスも導入されてていい感じに使えます。 例えば vagrant で開発環境作ったときとか vagrant ユーザで ssh して su で他のユーザに移りたかった…

ユースケース駆動開発実践ガイド を読んだ

年明けからバイト先の同僚とユースケース駆動開発実践ガイドの読書会をした。 ユースケース駆動開発実践ガイド作者: ダグ・ローゼンバーグ,マット・ステファン出版社/メーカー: 翔泳社発売日: 2016/01/28メディア: Kindle版この商品を含むブログ (1件) を見…

Recruit の Winter Internship 行きました

書こうと思っていたけど長野戻ってきてから忙しくて1周間も経ってしまった…。 データアナリストコースに行きました。まさか選考に通ると思わなくて、案の定行ってみると東大京大東工大早稲田慶応のオンパレードで地方国立なんてボクだけでちょっと恥ずかし…

Centos7 で NFS サーバを立てて Ubuntu からマウントして使う

サーバの設定変えた時メモっとかないと忘れるので面倒くさがらずメモすることにしました サーバ側(Centos7) # yum -y install nfs-utils # vi /etc/idmapd.conf Domain = gekogeko.org # vi /etc/exports /home/user/share 192.168.0.0/24(rw,all_squash) # …

Heianzon を更新しました。 #nseg

この記事について NSEG Advent Calendar 2015の 14 日目の記事です。そっと見ていたのですけど、今日で途切れていたので書くことにしました。 おまえだれよ たーまに NSEG に行ったりぎーらぼに行ったりしている学生です。 Heianzon 長野県民には馴染みの深…

VoyageGroup のインターンに行きました

Sunrise に行きました。コードを書かない〜という触れ込みだった気がするけど普通にコード書きました。公式にも書いてあるけど、「プログラミングができる」から「サービスが創れる」になるために必要なことが学べました。ボクは一応サービス作って運営して…

pyenv で BUILD FAILED

> pyenv install 3.4.3 Downloading Python-3.4.3.tgz... -> https://www.python.org/ftp/python/3.4.3/Python-3.4.3.tgz error: failed to download Python-3.4.3.tgz BUILD FAILED (Ubuntu 14.04 using python-build 20151105-2-g12ad6f6) こうなったら/tm…

人工知能ハッカソンに行った

人工知能ハッカソン~益々盛り上がる人工知能技術を活用したサービスをハックしよう~ ubic 主催のハッカソンに行きました。ubic が提供する 人工知能 API を用いて何か新しい事業ができそうなプログラムを開発しましょうという企画でした。何か研究のネタと…

強化学習入門した

強化学習作者: Richard S.Sutton,Andrew G.Barto,三上貞芳,皆川雅章出版社/メーカー: 森北出版発売日: 2000/12/01メディア: 単行本(ソフトカバー)購入: 5人 クリック: 76回この商品を含むブログ (29件) を見る 指導教官から昔渡された本↑を時間ができたの…

YaTeXをMELPAに登録しました

YaTexいまだにpackage.elで入らないのうーんというかんじ— ろにゃ (@roronya) February 18, 2015 @roronya おお、必要は発明の母ですね。 入れてくださいますか。— HIROSE Yuuji/広瀬雄二 (@hiroseyuuji) February 19, 2015 入れました。 Add yatex by roron…

インターナショナルオープンデータデイ2015参加してきました。

今日はインターナショナルオープンデータデイで、オープンデータの活用促進を目的に世界各地でオープンデータを使ったハッカソンが行われました。Twitterのハッシュタグで#OpenDataDayを見ると、世界中のひとたちがハッカソンしている様子が見れて結構楽しい…

SQUARE ENIX のインターン

もう2週間前だけど、行って3日でゲームを作れって言われてぎゃるげを作りました(終わり)。 ゲームやるの楽しいけど、作るのってどうなの?ちょっとやってみよかなーくらいの気持ちでいったらゲーム開発ガチ勢多すぎて死亡したでござる。サウンドもグラフィ…

DebianでVagrant

$ vagrant init chef/centos-6.5 A `Vagrantfile` has been placed in this directory. You are now ready to `vagrant up` your first virtual environment! Please read the comments in the Vagrantfile as well as documentation on `vagrantup.com` for…

Symfony2でmp3などの音楽ファイルや画像ファイルなどの静的コンテンツをユーザに直接ダウンロードさせる

/getMusic とかにアクセスした瞬間ダウロードさせるあれ。公式のドキュメントを参照すると静的コンテンツを直接ダウンロードさせるには BinaryFileResponse を使うのが良いということです。 use Symfony\Component\HttpFoundation\BinaryFileResponse; use S…

SQUARE ENIX AI アカデミー 第1回

SQUARE ENIX の AI アカデミーに行ってきた。行くためには小論文の選考を通さなければならず、普段から思うゲームのエネミーの振る舞いの不満を書き連ねたところ参加できた。やったー。 全部で5回あるのでがんばって長野から毎週通うことにする。 第一回は A…