インターンの受け入れとかで忙しくてあんまり振り返れてなかったので久々に振り返り活動をした。

生活について

8月前半ぐらいは理想的な感じで、毎朝ちゃんと起きてテレビを見ながら洗濯物や部屋の掃除をし、朝ごはんをたべてから出社する、みたいな活動ができていたし、夜はちゃんと風呂に入って寝ていた。

最近は疲れてたり酔っ払っていたりでソファーで寝落ち、みたいなケースがかなり増えていた。部屋も順調に散らかり始めている。

インターンの受け入れで忙しかった&飲酒の機会が多かったのが主な要因と思っているけれど、ハチャメチャに忙しいというわけでもないので改善の余地がある気がしている。取り急ぎ、夜風呂に入れないと朝にしわ寄せが行くのでそこからなんとかしたい。

ところで生活がめちゃくちゃになり始めるのと買い物やゴミ出しも失敗し始め、台所の洗い物もたまりがちになっていた。

買い物に失敗するの面白いなって感じで、例えばいまボックスティッシュの予備がなくなってて早く買わないといけなくて、今日を出る時は覚えていたのに帰りはすっかり忘れていた。

渋谷で暮らしていたときも同じ調子だったので、単に生活に慣れてきた (=ここでは手を抜き始めたの意味) 結果なのかよくわからない。

反面仕事中の集中力は前より改善している気がしていて、人間の集中力とか注意力は有限なんだなっていう気もする。しかし有限なら上限を伸ばしたい。

8月ぐらいを振り返ると買い物メモしてちゃんとそれ買えてたんだけど、最近はメモしてもメモを見ないみたいな感じでおわっている。

この辺はうまく仕組みで解決したいところだけどどうするのが良いのか引き続きいろいろ試していこうとおもう。

ISUCON9 予選で Cloud Trace 使った

id:hitode909id:tkzwtks と「ミッシングマグネティックストレージ」チームで出たけど予選敗退となった。最終スコアは5110点で、瞬間最大風速でも6700点ぐらい。

今回は Cloud Trace を投入してあれこれやってて悪くなかったのでそれについて。

f:id:side_tana:20190909205504p:plain

練習のときにつかってみて悪くないねということになったので投入した。Express だと import するだけでそれっぽく使えるのだけれど、8 の予選問題をみたところ fastify が使われているようで、一工夫必要だった。一工夫っていうのは

// setup cloud trace
const tracer = require('@google-cloud/trace-agent').start()
const fastify_connect = function(method: string, path: string, option: Object, callback: any){
  if (process.env['ENABLE_CLOUD_TRACE'] === "true") {
    fastify[method](path, option, async (req: FastifyRequest, reply: FastifyReply<ServerResponse>) => {
        tracer.runInRootSpan({ name: method + ":" + path }, async(rootSpan) => {
        try {
          await callback(req, reply)
        } catch (e) {
          rootSpan.endSpan();
          throw e;
        }
        rootSpan.endSpan();
      })
    });
  } else {
    fastify[method](path, option, async (req: FastifyRequest, reply: FastifyReply<ServerResponse>) => {
      await callback(req, reply)
    });
  }
}

みたいなラッパを用意して、すべてのハンドラをのラッパ経由に書き換える、みたいな感じ。env.sh の ENABLE_CLOUD_TRACE を書き換えることでバイパスできるようにしてある。このラッパはひとでさんがアイデアくれました。

この状態でベンチを回すと Cloud Trace に mysql にクエリを送ったタイミングが記録される。たとえば post /login であれば

f:id:side_tana:20190909210735p:plain

こんなふうに記録すされ、スタックを見ると 2064: const [rows] = await db.query("SELECT * FROM `users` WHERE `account_name` = ?", [accountName])は一瞬で終わっているのにその後の処理でかなり時間を食っていることからハッシュ計算がボトルネックになっていることが推察できる*1

苦しめられた /buy はこんな感じ。

f:id:side_tana:20190909211232p:plain

これは初期状態の /users/transactions.json だったと思うけど迫力ある感じ。

f:id:side_tana:20190909213420p:plain


競技時間中にあまり手をうごかせなかったのが個人的な反省で、なんかもっと手を動かせた気がする。ログイン周りとか MySQLinnodb_lock_wait_timeout短くするのとか気になってたけど結局手を動かさずに終わってしまったのは失敗だったなあとおもう。

*1:当日普通に気が付かなくて僕はもう終わりです

最近またデスクの上に紙の書類が溜まってきた。

書類トレイを導入したので散らばってはいないけれど、税金の書類が埋もれてたりして緊張感が高い状況。

今日も水曜日なので最近の取り組みを振り返ったけれど、いろんな物事が進んでいないことが明らかになった。8月の個人的な進捗がほとんどない。仕事もそこまで成果がでたわけでもなく、あまりよくない。

生活を振り返ると、書類の件もそうだけれど、引っ越し直後の緊張感が抜けていろいろ手を抜いているというか、雑な暮らしになりつつある。6,7月のほうが豊かな暮らしという感じだった気がする。

思い返すと、6,7月はゲームとかをはじめても15分ぐらいで「こうしちゃおれん」となって部屋の掃除とか勉強とかしてて偉い感じだった。一方で緊張していたというか、普通ではない状態だった気がする。朝も異常に早起きで、その分わりと睡眠不足寄りだった気がする。

最近もまだ睡眠不足よりだけど当時よりはマシ。ゲーム始めるともうちょっと、、、みたいになり簡単には切り上げれない。リラックスしているといえばそうなのだろうけど、もうちょっとバランスを取りたい。

あと8月はよるソファで寝落ちする回数が多かった。

傾向として飲酒して帰ってきた日は値落ちしがち、缶ビール2本までならセーフなことが多いが、それ以上だとだいたいアウト。日本酒ならグラス2杯ぐらいだと思う。なので、酒量を調整するのが1つ目のトライ。

そうじゃない日も値落ちするケースが有り、これはだいたいソファに横になった結果、起き上がるのが面倒になり、そのまま寝落ち、というケース。ソファに横になる前に寝る支度をしておく、というのを二つ目のトライにしたい。

これを書いたら書類を整理する。

都会の高速道路が好き

東京に住んでた時は気分転換に車を借りて首都高を走ったりしてた。渋谷と六本木の間にある入り口から入って六本木ヒルズのあたりで鋭角に曲がり、東京タワーをチラ見しながら走っていく。そのままレインボーブリッジを渡って葛西臨海公園へ向かうのが定番のコースで、帰りは下道をトロトロ帰ってくる、みたいな感じ。

このルートだとレインボーブリッジから東京の高層ビル群を一望できて、それが特に気に入っていた。

首都高は街中をうねうね走っていて、狭くて運転しにくいけど、すぐそばまでビルが迫っていて他ではあまりない風景なので楽しい。

防水になったKindle Paperwhite買った

この前の Prime Day に防水になった Kindle Paperwhite 買った。これまで使ってたのは2010年とかのモデルだったはずなので、久々の買い替え。(ちなみにまだ壊れてないので、こっちはこっちで使うつもり)

防水になったので、そのまま風呂に持ち込める。もっぱら風呂での読書に使っている。温めのお湯にゆったり浸かりながら本読めるのなかなか良くて気に入っている。


一点困っていて、本体下部にある電源ボタンが押しやすくなったために、壁に立て掛けると勝手にボタンが押されてしまうという問題がある。結果として電源オフと軌道を繰り返すことになる……。
壁に立てかけておきたいときは意識して逆向きにしたり横向きにおかないといけない。

リゾーッ

f:id:side_tana:20190811155322j:plain

いつも快適さんが昔書いてた記事のこと思い出しながら作ってる。

kaiteki.hateblo.jp

結構素朴なので適当に作れて良いんだけど、適当に作りすぎてて味が結構ばらつく。


以下はメモ。

米ユニット

  • 米 1/2 カップ
  • にんにく1片
  • とうがらし
  • オリーブオイル 大さじ2〜3ぐらい
  • ピザチーズ すきなだけ

スープユニット

  • しめじ 100gぐらい? 好きなだけ
  • 人参 1/4 ぐらい? 好きなだけ
  • 玉ねぎ 1/2
  • ハム 2枚
  • コンソメ 小さじ1(キューブなら 1/2)
  • 鶏ガラスープのもと: 小さじ半分ぐらい(?)
  • 牛乳 50ml ぐらい?

つくりかた

  • スープ
    • 玉ねぎをみじん切りにして炒める
    • f:id:side_tana:20190811155551j:plain
    • 人参としめじも炒めておく
    • 様子を見て水 400ml ぐらいとコンソメ、鶏ガラスープ、牛乳を入れる
    • f:id:side_tana:20190811155528j:plain
      これは牛乳を入れる前
    • 煮立ったら完成、火を弱めてふつふつさせとく
    • オリーブオイルにスライスしたにんにくと唐辛子をいれ、弱火でゆっくり加熱
    • にんにくから泡が出てきたらいい具合、もうちょいながめる
    • https://gyazo.com/21bb09c9fbe111c75701536856512308
    • 満足したら米を入れて中火に
    • 米が茶色〜白っぽくなってきたらスープをお玉1,2杯いれる
    • f:id:side_tana:20190811155907j:plain
      • 元気よく蒸発するので注意
        • 落ち着くまで蓋をすると飛び散りが多少防げる
    • スープが無くなってきたら足す
      • 食べれるな〜って思うまで繰り返す
    • 最後にほしければピザチーズを入れる
    • 皿にもって胡椒と乾燥オレガノ振って終わり

京都.なんか #5 やります! 来てくれ!

kyoto-nanka.connpass.com

今年も 京都.なんか#5 をやります!僕自身過去に2度ぐらい発表している勉強会ですが今回はなんと主催側、まさかこのようなことになるとは...

ところで登壇者と参加者を募集中です。お時間のある方もない方もぜひ。

例によってKyoto.なんか翌日八瀬ビール2019 : ATNDもあります。夏の京都を楽しみましょう!