for...of 文を使わずに Promise を直列実行するための TypeScript 向けユーティリティ

はじめに 「iterators を使わずに Array の各メソッドや Object.keys を使おうね」とか「Array に対する非同期処理の直列実行は reduce で書けるよね」とか、もう 2017 年ぐらいに十分話され尽くした話だとは思います。 しかし、reduce による Promise の直…

BigQuery の課金額で泣かないための UserScript

はじめに BigQuery を利用する上で、うっかり高額なクエリを投げてしまったことはありませんか?また、「BigQuery を利用したいけれど課金額が分からないと破産しそうで怖い」という方もいるのではないかと思います。 qiita.com そこで、BigQuery のエクスプ…

それでも .env を env したい

はじめに 様々なやんごとなき事情によって、手元でささっと source .env もしくは env $(cat .env) foobar したくなる時はありませんか。 私はあります。 しかし、以下の記事にて指摘されている通り、 .env ファイルのシンタックスは、Bash や Zsh などの Bo…

Go コンパイラのコードを読んでみよう

はじめに 本記事は、 DeNA Advent Calendar 2020 の 11 日目の記事です。 突然ですが、「コンパイラのコードを読んでみよう」なんて言われても、「どうせ巨大で難解で複雑なロジックを理解しないと読めないんでしょ?」と思いませんか。 コンパイラの構造を…

ISUCON10 予選敗退の記録と反省

はじめに 2020/09/28 に開催された ISUCON10 で予選敗退。 とても楽しい問題でしたが、無残にも敗れ去りました。 来年に向け、事前準備および当日にやったことを振り返ります。 なお、チームメイト @genya0407 の参加記は こちら になります。 記録 「ここに…

二者間交渉ゲームにおける交渉解の比較

はじめに 本記事では、二者間交渉において、交渉解として著名な、ナッシュ交渉解、カライ・スモルディンスキー解、均等解(カライ解)を紹介する。 注意書き カライ・スモルディンスキー解および均等解は、二者間交渉の場合と、三者以上による交渉の場合で…