gRPCのスタブコードを生成するための Dockerfile を作る

以前 PHP 向けに gRPC のスタブコードを生成するための方法についての記事を書きました 。 その中でコードを生成するツールの protoc およびそのプラグインである grpc_php_plugin を Docker を用いて用意する方法を説明しましたが、そのときは最終的に必要…

git の author を最初の commit から修正する

1つ前の記事 を書いたときにサンプルの git リポジトリを作ったんですが、そのときに author の設定を間違えてしまっていて修正したので、修正方法をメモしておきます。 TL;DR git config --local user.name "[ユーザー名]" 、 git config --local user.emai…

PHP から gRPC を叩くときの大まかな流れ、注意ポイント

PHP で gRPC クライアントを実装する機会があったので、大まかな流れや実装時に引っかかったことをまとめておこうと思います。 本記事で紹介する内容のサンプルを↓に貼っておきます。 gRPC サーバーの用意などができてないので、だいぶ雑なサンプルですが…… …

Docker で PHP 用の gRPC スタブを生成する

gRPC のスタブコードを生成するには protoc と protoc プラグインの grpc_php_plugin が必要です。 protoc は mac でも容易に導入できるのですが、 grpc_php_plugin は自前でビルドする必要がある(=ビルド環境を整える必要がある)ため、ローカル環境を汚…

HonKit のデフォルトテーマの箇条書きのスタイルを微調整した

HonKit とは Markdown からドキュメントページや書籍を作成するツールです。 GitBook という Deprecated になった OSS をフォークして作られたものみたいです。 honkit.netlify.app Markdown を書くだけでドキュメントページを作れるので便利なんですが、箇…

Agones Controller がダウンした状態で GameServer を落としたらどうなるか確認する

世の中には Kubernetes 上でゲームの状態を管理するステートフルなサーバ(以下 GameServer)をいい感じに管理する Agones という OSS が存在します。 GameServer を管理するために Agones は Controller というコンポーネントを必要とするのですが、今回は…

エアコンのフィルターを掃除した(えらい)

3月に引っ越して以来やり方を調べるのを含めて面倒で半年以上放置していたんだけど、流石に良くない気がしたので掃除した。 いかにも年末にやりそうなことだけど、年が明けるまで気が向かなかったので、実際に手を動かしたのも年が明けてからになった。 年末…

Go 標準の flag パッケージでも Usage をカスタマイズできる

はじめに Go で CLI ツールを作るときに Go 標準の flag パッケージ を使うとコマンドライン引数でのフラグ(オプション引数)をいい感じにパースして変数に格納できるので大変便利である。 また、 flag パッケージを使うとデフォルトで -h オプションで Usa…

Markdown + VSCode で数式込みの PDF をなるべく楽に作る

TL;DR Markdown は Word とか LaTeX とかよりも楽にカジュアルな文書を作れるよ VSCode を使うと Markdown から HTML を生成できるよ HTML をブラウザで開いて印刷メニューから PDF を作れるよ ただし数式を扱うにはちょっと工夫(拡張機能の追加)が必要だ…

Mendeley Web Importer でダウンロードしたファイルの名前をいい感じにする

Mendeley Web Importer を使うと Web 上に転がっている論文を引用情報つきでお手軽にダウンロードできる. このときファイル名はもとのファイル名と同じなので, Mendeley を経由して PDF を取得し直すと "full_text.pdf" がローカルストレージに量産される…

最速崖奪いの感覚を掴む

はじめに 大乱闘スマッシュブラザーズスペシャル(以下SSBU)では,相手が崖を掴んでいるときに自分が掛けを掴みに行くと相手が崖から手を離して自分が崖を掴めるという仕様が存在する. 崖を奪われた相手が一定時間無防備になることを利用して,空中後攻撃…

いろいろあっていろいろ考えたんだけど結局どうしようもないねってなっちゃった

先日、友人とプロスポーツの試合を見に行った。 友人は幼い頃からこのスポーツ、ひいては観戦するゲームに出場するチームのファンであり、僕は年に1〜2度観戦に誘ってもらっている。 その日は友人の希望もあり試合開始の2時間弱ほど前から会場入りしていたの…

ITerm2の設定をGitHubで共有……できんやんけ!って思ってたけどそうでもなかった

macOS用のシェルアプリの1つとして有名なiTerm2ではシェルのカラースキームや透過率などの設定ができて,この設定を追い込むことでCLI作業のモチベーションが30%くらい上がってくる. 今回MacBook Proをクリーンインストールすることにしたので,この設定の…

YAMAHA AG-06を買った

Steinberg CI 2+のヘッドホン端子が壊れて音が聴けなくなってしまったので,新しいオーディオインターフェースが必要になった. 10分くらい調べた結果,なんとなく評判が良さそうだったので表題通りYAMAHA AG-06を買うことにした. 小型版のAG-03でも良かっ…

macOS Mojaveにアップデートした

rootログインができるのヤダー!とかなんとか言ってHigh Sierraをスルーしてたらいつの間にかモジャヴェが出ていた. 後輩のアップデート報告を聞くなどしたら段々乗り遅れている感を感じてきて嫌だったので,土日を使ってSierraからMojaveにアップデートした.…

VSCodeで保存時にESLintがfixしてくれるようにする

前提 ESLintなどがプロジェクトに入っている VSCodeを使っている やりかた ESLintのプラグインをVSCodeに入れる settings.jsonに "eslint.autoFixOnSave": true を追記 settings.jsonで "files.autoSave" を afterDelay 以外にする 参考: https://marketplac…

今更だけどdockerめっちゃいいなって思った

discordのbotを作って動かしてみた ところ,いい感じだったので自宅サーバで動かしていつでも使えるようにしようと思った. このときにせっかくなのでdocker + docker-composeを用いて環境構築することにした. 成果物は github に上げているので気になる人…

discordのbotをrubyで作るときに任意個の引数を受け取る

最近友人や後輩とdiscordで通話をしながらスプラトゥーン2のリーグマッチをやっている. いつもは2人や4人で集まることが多いので問題にならなかったが,3人で集まったときに「誰がやるよ?」というのが問題になった. そこで「人数と名前を入れるとランダム…

モニタにHDMI接続できなくて詰んだと思ったら意外なところに罠があった

ラップトップからモニタにHDMI接続出来なくて原因を究明したお話

キータに記事を書いた

qiita.com 自室引きこもり生活のためにうまく動いて欲しい.

ffmpegで画像の切り出しにめっちゃ時間がかかってたんだけどその原因が冗談みたいだったおはなし

注意事項 この話に新規性は一切ない。あと、ffmpegのバージョンが2.8.11と若干古い。 何が起きたか なんやかんやあってffmpegで動画から画像を切り抜く必要が生じた。 それ自体はよくある作業なので、以下のようなコマンドですぐにできる。 $ ffmpeg -i [inp…

研究室のマシンのUbuntuを14.04→16.04にアップデートしようとしてまたつらかった話

何回つらくなるんだよって話ですね. TL;DR ubuntuのアップデートは基本こうやるんやで /etc/apt/apt.conf とかにプロキシ設定が書いてあると詰むから消すんやで 古いリリースだったら /etc/apt/sources.list 編集せなアカンで http://us.old-release.ubuntu…

Qiitaに記事書いた

qiita.com 検証できたらまた書き直します(決意)

Headless Chromeをいい感じに扱ってくれるpuppeteerで特定ドメインのウェブページのPDFをパシパシ取ってみた

qiita.com にコピペして公開し直しました(雑) Qiitaとブログの使い分けについては考えていきたいと思います.

Dockerで(HTTPSではなく)HTTP通信をする

実験環境などでDockerを使うとき,LAN内にプライベートなレジストリを建てて云々,としたいときにはSSL/TLSの設定などが面倒でHTTPSを使いたくない場合がある. そういうときにHTTP通信をする方法を調べた. 結論,この通りやればよい. qiita.com Ubuntuな…

ネタがなさすぎるのであまりにしょうもないことを書く

できごと 昨日,研究室のサーバにUbuntu 16.04 LTSをクリーンインストールした. 12台くらいマシンがあるうちの10台は14.04 LTSからのアップグレードで済んだんだけど,残りの2台はなぜか14.10になっていて,16.04にアップグレードできなかった. できないな…

ちょっと前のUbuntuのバグを踏んでつらかった話

きっかけ Ubuntuで何かしらの作業を担うサーバプロセスをいくつか回してたら,メモリが6GiB/8GiBくらい余ってるのに死神ことOOM killerさんにプロセスを殺されていた. 原因 Ubuntu 16.04の4.4.0-58〜4.4.0-62に存在していたOOM killerが仕事してほしくない…

Git + GitHubで不要になったブランチを認識・削除する

主に趣味でGitやGitHubを使うことがある. 開発の過程でブランチを切ってはマージし切ってはマージし,といったサイクルを回すことになるが,マージしたブランチについては不要なものとなる. 不要なものは削除したほうがゴミが少なくて気分が良いので,適宜…