9月に株式会社メルカリを退職していました

表題の通りですが、2022年9月6日付で株式会社メルカリを退職していました。最終出社日は5月末でした。 2014年に入社し、約7年半という長い時間お世話になりました。初期のメルカリの開発、3年間のアメリカ赴任、US Microservice Platform Team の立ち上げ等…

istio-proxyが自分以外のコンテナ終了を待たずに終了するのをなんとかする

TL;DR pod 削除時、istio-proxy と実アプリケーションコンテナの終了は同期されません。そして大抵 istio-proxy のほうが早く終了します。 pod は istio-proxy のプロセス終了後、リクエストを受けると即座に503を返すようになります。 つまり、例えば http …

tcpdumpでistioをデバッグして遊ぶ

kubernetes の周辺で service mesh の話が聞かれるようになってそこそこ経ちました。istio に関して言えば、今年の半ばに1.0もリリースされています。今後 kubernetes と istio という組み合わせはどんどん一般的なものになっていきそうです。 例えば istio …

雰囲気でgRPC,GKE+kubernetes使ってマイクロサービス作る

マイクロサービス構成を作る上で、gRPC でアプリケーションを繋ぎ、それらを GKE+kubernetes で動かすというのは有力な選択肢の一つだと思います。ここでは実際にこの構成で動くAPIを作る手順を書いてみます。作ったコードと kubernetes の設定ファイルは以…

annictでreact-nativeの練習した

react-native の練習のために annict クライアント作りました。 コードここにあります GitHub - gong023/annictApp: annict client by react-native 一応デモもあります。動くといいですね デモ見てもらったらわかるんですが間違ってもストアに乗っけられる…

phpの名前空間をお手軽に変えるライブラリ書いてた

表題の通り php の名前空間をIDEみたいに置き換えられるコマンド書いてました。 https://github.com/gong023/namae-space 実をいうと割と前の話で、社内の勉強会とかでは喋ってたんですが、ちゃんとパブリックで書いてなかったので書きます。あれからちょこ…

php-blt2でLTした

PHP BLT #2 - connpass でLTしてきたので資料貼っておきます speakerdeck.com 普段ほとんどエンジニアの勉強会行かないしLTするのとか多分2年ぶりとかだったと思う。 自分の場合、ついこの前まで卓球ハウスにいたので技術の話する相手や機会には困らなかった…

rust-carbonっていうライブラリ作った

先月ようやく rust 1.0 が出たということで、いじってみるがてらライブラリをひとつ作った。 rust-carbon という名前で、rust で時間の扱いをやりやすくするものだ。 https://github.com/gong023/rust-carbon インターフェイスは php の carbon という有名な…

ctrl-aでDJした

一応備忘録として書いておこうと思う。割と前の話だけど、去る5/28に、秋葉原mograでctrl-aっていうイベントがあって、そこでDJした。 出るきっかけは本当にたまたまで、プライベートで仲良いkazzoneに飲み屋で出る?って言われたからだった気がする。酔っぱ…

goでテスト並列実行させたら楽な気がする

チームにある程度テストがかさばってくると、テストの実行時間が問題になる。せっかくテストを頑張って作っていても、実行時間が10分とか20分になってくるとどうしてもテストを動かすのが億劫になる。 せっかっく開発がノッてきたのに、テストのフィードバッ…

PHPUnitを便利にするライブラリ幾つかつくった

年末年始+αの時間で PHPUnit をちょっと便利にするライブラリを幾つか作ったのでそれぞれ書いておく。 assert_chain https://github.com/gong023/assert_chain PHPUnit で一つの変数について詳しくアサーションをかけたい場合、以下のように書くことがあると…

underscore-rust作ってみた。あとrust書いてみた動機とか

underscore-rust underscore-rust 作った。名前から分かる通り、underscore.js の機能を rust にしたもの。 https://github.com/gong023/underscore-rust ライブラリ自体のドキュメントは上記に入れたつもりなので、必要であれば参照して欲しい。ポイントと…

効果の高いテストについて考える

テストエンジニアという奇異な立場にいる。 普通にプロダクトメンバーの一員だが、プロダクト自体のコードはあまり書かず、品質という観点から良かれと思ったことをする。大体グーグルのテスト本に載っているSETをロールモデルとしている。 テストから見えて…

一日の行動をEvernoteにpostするサイト作った

前に gem 作ったんだけど、せっかくなので他の人でも使えるように web アプリにした。いくつかの web サービスのアクティビティをまとめて evernote に上げる。 例えば twitter 認証をすればその日のつぶやきを集めるし、github 認証すればその日のコミット…

クソgemできた

これ http://rubygems.org/gems/everlog https://github.com/gong023/everlog 最近、自分が何をしていたのかわからなくなる。 一ヶ月、二ヶ月前ははるか昔のように思うけれど、一年前を思い返してみるとあまり今と変わっていないように思う。 例えるなら水の…

アノテーションとAPIレスポンスをアサーションできるライブラリ作った

概要 アノテーションと API レスポンスをアサーションできるようにするPHPのライブラリを作った。 gong023/swagger-assert アノテーションは、swagger のフォーマットを基準にしている。 swagger の説明は別に書いた ので、必要であれば参照してほしい。 イ…

アノテーションからドキュメントを作れるswaggerの使い方

swagger の概要と、基本的な使い方をサンプルを交えて書く。 なお、終始 PHP なので気をつけて下さい。 swagger の概要 開発ドキュメントをどうやって書くかという話題は常々ある。そして一番素直なアプローチを取ると、大抵 wiki みたいなアプリケーション…

京都旅行行ってきた

三泊四日で京都旅行行ってきた。 何も考えずにぶらぶらして、かなりスッキリした。 一日目 二日目 三日目 四日目 連休が取れたらまた行きたい。 宿で見ていたラブライブが一周できなかったことだけが悔やまれる。 ほのえり最高

書きなおしたけど

https://github.com/gong023/nicoaudio 昔に書いたやつだけど、ちょっとひどかったのでまた書きなおしてみた。けど、設計とか色々うまくいかなかった。 Readmeの画像だけ差し替えてて楽しかった。

下目黒でシェアハウス始めた

パーティを11時で終わらせるな という言葉があって、確かソーシャルネットワークだったと思うが、僕は割とこの言葉が好きです。 ところで、この7月から新しいシェアハウスに移ってみた。 http://r7kamura.hatenablog.com/entry/2013/07/02/013533 http://na…

ニコニコ動画のランキングから動画を落とす&mp3にするスクリプト作った

作りました。 https://github.com/gong023/nicoaudio もちろん全部の動画落としてくるわけじゃなくて「歌ってみた」とかそのへんのmp3にする価値があるやつを狙って変換します。あと、処理が終わったらtwitterのDMで処理にかかった時間と成功or失敗をお知ら…

ニコニコ動画のランキングからmp3を自動抽出

タイトルの通りですが、ニコニコ動画の総合ランキングから適当な単語を抽出してそれをmp3に自動変換してくれるスクリプトを作りました。 ただしあんまり完成度は高くないので、しばらく個人で運用して使い勝手とか高めていきたいなーと思っています。 糞糞糞…

PHPUnitが意外と入らない

pearのPHPUnitって意外とすんなり入ってくれないですよね。 という訳で必要な最小限のコマンドだけメモ。 sudo pear upgrade -Z pear pear channel-discover pear.phpunit.de pear channel-discover components.ez.no pear channel-discover pear.symfony-pr…

5分で作るナウでヤングなvim環境

なんだこのタイトル。 vimのバージョンアップからプラグイン(unite.vimやunite.grep,vimprocなど)の導入まで所要時間5分、コマンド3つぐらいでいけるようにしてみたので書いておく。 複数の端末でvimを扱わなければいけないなんてことはよくある話なわけで…

まるちゃんに特定のリプライが来たらリストに入っている人に拡散させるようにした

ギークハウス高円寺の住人まるちゃんに「all」「みんな」という単語を含めてリプライをすると、住人全員にそのリプライを拡散してくれる機能を作りました。 rubyでStreamAPIなんてもうとっくに市民権を得ているのでぶっちゃけ書くことはないのですが、スクリ…

クックパッドコンテストのお題二人で三つリリースしてみた

今までなぜ僕ははてなブログをかたくなに拒否していたのかというと、なんとなくカッコつけてて嫌だったからだ(本筋とは関係ない話) 昨日、クックパッドコンテストに参加してきました。 クックパッド本社ではオフィスを開放してシェフ呼んでうまいランチと…

とりあえずはてなブログ始めたよ!テストだよ!