2019 年の雑多な振り返り兼備忘録です。今年で 33 歳になりました。

目次

主な出来事

今年は大きな出来事もなく、わりと平穏な一年でした。

  • 7 月、肩から首にかけて痛みが出て寝返りが打てなくなりました。最初はただの “寝違え” だと思っていたんですが次第に発疹がたくさんでき、病院に行ったところ帯状疱疹だと分かりました。痛みと痒みでこの頃は物事に全く集中できませんでした。
  • 9 月、職場が六本木から渋谷に移動しました。通勤時間はだいぶ短くなりましたが、電車は混んでるのと歩行距離が増えたのが残念。渋谷の大規模再開発を眺められるのは良いです。天気が良いと富士山が見えます。
  • オフィス移転に伴い早朝ジム通いを始めました。主にトレッドミルでゆっくりランニングをしています。アニメ観ながら走るとちょうど良い。12 月は寒くて体調が良くなくてあまり通えなかったので、来年 1 月からまた頑張る。
  • 11 月、出張でアメリカのサニーベールに行きました。いつもは車で移動するんですが、今回は電車移動してみました。

その他、家族と国内の色々なところに旅行に行きました。良い一年だった。

海

ソフトウェアエンジニア活動

Chromium (Chrome) の開発

仕事では引き続き Chromium プロジェクトに参加してウェブブラウザを作っていました。今年私が入れたパッチは 259 個、レビューしたパッチは 385 個でした。ちなみに 2018 年は 181/275 (育休で二ヶ月休み)、2017 年は 240/300 でした。自分の得意な領域を広げながら少しずつコントリビューションを増やせたのは良かった。ただ 2020 年からはまだ不慣れな領域を触ることになりそうなので数が減るかもしれない・・・という予防線を張っておく :p

Chromium CLs

具体的には昨年と同じくウェブのスレッディング API である Web Worker や PWA の要である Service Worker のアーキテクチャ改善を主に担当していました。Chrome 80 から Web Worker (Dedicated Worker) で ES Modules を使えるようにしたことと、Web Worker の内部実装の off-the-main-thread 化を進めることで Service Worker 最大の技術的負債だった WorkerShadowPage を消せたことが個人的ハイライトです。

並行して PlzDedicatedWorker というプロジェクトを進めていたのですが、こちらはあと一歩のところで完遂できなかったので引き続き頑張ります。

あと新たに Blink の core コンポーネントのコードオーナーになりました。core コンポーネントはその名の通りウェブブラウザ実装のコア部分なので、オーナーの仲間入りを果たせてとても嬉しいです。

Blink Core Owner

年間を通してマルチスレッドに起因するバグに悩まされました。マルチスレッド難しすぎる。

技術記事

わずかですが Chromium 関係の記事を書きました。誰かの参考になれば幸いです。来年は自分がやっていることをもう少しまめに記事に残して、あわよくば読んだ人が Chromium プロジェクトに興味を持ってくれたら嬉しいなぁ。

今年は explicit memory allocator の論文をいくつか精読して記事にしました。なぜか explicit memory allocator って心惹かれるんですよね。サーベイ記事みたいなものを書きたいと思っていたら 2019 年が終わってしまいました。

他にも深層学習関連のシステム系論文やウェブブラウザのアーキテクチャに関する論文など色々流し読みしました。が、あまり記事に残せなかったのが残念。書籍の読書ログのようにもっと気楽にツイートしながら読むといいのかな?論文は書籍以上に「精読しなきゃ!」という強迫観念がかかってしまって読書コストが高い。

技術記事ではありませんが、同僚の流れに便乗して「新卒のソフトウェアエンジニアになるまで」という記事を書きました。自分が学生の頃どんなことをしていたのかずらずら書いた記事です。大学で何をやったらいいか悩んでいる学生へのヒントになると幸いです。

昨年二人目の子どもが生まれて以来、子どもと触れ合う時間を減らさずに妻の負担を増やさずに自分のやりたいことをやる時間を確保する方法についてあれこれ悩んできました。早朝や深夜などにまとまった時間を確保することももちろん重要ですが、自分なりの結論としては「わずかな時間であってもやるべきことを少しずつやる。牛歩であることを受け入れそれでも毎日前に進むことが重要」だと考えています。それに関連して「日々の進捗の出し方」という記事を書きました。

趣味プログラミング

今年は統計学や天文学などの勉強を優先したため、趣味時間にプログラミングはほとんどしませんでした。昨年の振り返りで

一応プログラミング的なこととしては、年末に LeetCode を始めました。コーディングインタビューを受ける予定は全くないんですが、この手のスキルは時折磨いておかないとすぐに錆びついてしまうし、気分転換になるのでたまに解いています。 (from 2018 年の振り返り - nhiroki.jp)

と書いたんですが、結局今年は LeetCode もほとんどやってないです。

参加した技術系イベント

今年は全く発表をしなかったので来年はどこかで何か話したい気もする。

その他

Misreading chat が好きでよく聴いていました。技術的な視野が広がってとてもおもしろいです。来年も楽しみにしています!

3 月頃はディープラーニング用コンパイラについてサーベイしようとして泥沼にはまって力尽きました。興味ある分野なので来年こそは研究動向が理解できるようになるといいな。

同様にディープラーニング周りのシステム論文を読んでは力尽きるということを繰り返してました。

趣味活動

英語

今年も週一でグループディスカッションのレッスンを受けました。集中的に英語アウトプットをする時間を作るためにもっとレッスンを取れると良いのですが、子どもの世話や他の勉強時間の確保などを考えると厳しい。

あと語彙力をあげようと iKnow! で単語帳を作って (なるべく) 毎日勉強するようにしました。最近英語の検定試験を受けていないので、来年は何か目標を決めて受験してみるのも良いかもしれないなぁ、と考えてます。

天文宇宙検定

昨年落ちた天文宇宙検定 1 級に今年も挑戦しました。残念ながら不合格だったんですが、昨年よりもスコアが上がって準 1 級合格扱いになりました。詳しくは「天文宇宙検定 1 級受験記 (2nd try)」を参照。宇宙大好きなので引き続き勉強しつつ、来年こそは 1 級に合格できるように頑張ります。

準 1 級認定証

統計検定

今年の頭に「2019 年は統計学と機械学習を頑張る」という記事を書いて、統計学と機械学習の勉強をする決意表明をしました。

確率論や統計学をしっかり学んでこなかったことに引け目を感じるようになってきた。このモヤモヤを振り払うため、今年は確率論や統計学を基礎から学び直すことにした。独学する場合は検定試験を活用してまずざっくり全体を学んでいくのが自分にとってやりやすい。調べたところ統計検定という試験があることがわかったので、その 4 級から勉強を始めた。

その一環で統計検定 4 級の勉強から始めて、6 月に 2 級を受けて合格しました。詳しくは「統計検定 2 級受験記」という記事にまとめたのでそちらを見てください。来年は準 1 級と 1 級を受けたいと思っています。

統計検定 2 級 問題 (2019 年 6 月 16 日実施)

一方、機械学習の方はまったく勉強できませんでした。今の感じだと多分来年も機械学習の勉強には力を入れないかもしれない。もっと根源的な科目 (数学など) の勉強に集中したいと思っています。

読書

2019 年に読んだ本は以下の通り。ひたすら統計検定と天文宇宙検定の勉強をしていたのであまり本を読めなかった。リンク先は読書メモです。

現在進行形で以下の本を読んでます。

あと日経サイエンスとか n 月刊ラムダノートとか雑誌系を色々読みました。続々積まれているのでどうにかしたいけど多分どうにもならない・・・。

beatmania IIDX

今年も beatmania IIDX をたくさんやりました。写真は 26 Rootage の最終ステータス。

SP はレベル 12 の各種クリアランプ埋めや AAA 狙いを中心にやっていました。

DP 上達のために以前よりも意識的に DP のプレイ頻度を上げていたんですが、気づいたら SP をプレイしていることが多かったです。そのせい (?) で結局今年も DP 十段は取れず。DP をやってると SP もうまくなるし、来年はさらに DP をやるように心がけたい。

レベル 12 じゃないけど蠍火 (SPH11) をトリコンできたのがめっちゃ嬉しかったです。

PlayStation VR

家庭用 VR の今を体験しようと Amazon の初売りセールで PlayStation VR のセットを買いました。

PS VR

以前新宿の VR ZONE で VR 体験 (機種忘れた) したときは解像度の低さが気になったんですが、PlayStation VR は予想よりも解像度が高めに感じられて良かったです。

最初は同梱されていた PlayStation VR WORLDS をやりました。これには VR 入門的なゲームがいくつか入っています。その中の Ocean Descent (海を潜っていくライド風のゲーム) でなるほどと思ったのが、海の中って現実でも水中ゴーグルをかけるから VR ゴーグルに違和感ないし、水中ゴーグルで視界がぼやける感じなので若干解像度が荒くてもそれが逆にリアルに感じたところでした。

その他にシューティングコントローラーを買って Farpoint という FPS ゲームをやりました。これが最高に面白くてしばらく睡眠時間を削ってプレイしてました。

マインクラフト

長男 (4 歳) にマインクラフトをやらせてみたら大ハマリし、毎日のように一緒にやっていました。最初は慣れないコントローラー操作やユーザインタフェースに困惑していましたが、あっという間に上達して今では私よりも上手に操作し、私よりも色々なことを知っています。サバイバルモードよりもクリエイティブモードで自由に作るのが好きで、色々な建物や装置を作って見せてくれます。そのたびに創造力や発想力に驚かされています。

マイクラが好きすぎて特に教えていないカタカナも読めるようになりました。マイクラすごい。

マイクラを通して地学や工学にも興味を持ってくれました。

ただし知識に偏りが生じています :p

アニメと映画

アニメが好きなのでジムでのランニング中や深夜に観ています。今年の新作で一通り観たアニメは次の通りでした。

  • 進撃の巨人 Season 3
  • ワンパンマン Season 2
  • 盾の勇者の成り上がり
  • とある科学の一方通行
  • ありふれた職業で世界最強
  • コップクラフト
  • バビロン
  • まちカドまぞく
  • Dr.STONE
  • この世の果てで恋を唄う少女YU-NO
  • 甲鉄城のカバネリ 海門決戦
  • ダンジョンに出会いを求めるのは間違っているだろうか II

旧作ですが以下のアニメも一通り観ました。

  • 機動戦士ガンダム 逆襲のシャア (二回目)
  • アルドノア・ゼロ (二回目)
  • 最弱無敗の神装機竜 (二回目)
  • きかんしゃトーマス とびだせ!友情の大冒険
  • それいけ!アンパンマン ブルブルの宝探し大冒険!
  • ソード・オラトリア ダンジョンに出会いを求めるのは間違っているだろうか外伝

実写映画は次の通り。飛行機に乗ったときに観ています。

  • パイレーツオブカリビアン/最後の海賊
  • 踊る大捜査線 THE MOVIE 3 ヤツらを解放せよ!
  • トゥームレイダー ファースト・ミッション
  • アイ・アム・マザー

今年買ってよかった物

PlayStation VR

上述。

Sony WF-1000XM3

Sony WF-1000XM3

Sony WF-1000XM3 というノイズキャンセリング付き Bluetooth イヤフォンを買いました。初めてのワイヤレス、初めてのノイズキャンセリングで、この価格帯のイヤフォンも初めて (以前は SHURE SE112 で 5000 円くらい) なので比較評価しにくいですが、控えめに言って最高でした。付属イヤーピースでもかなり満足なんですが、私は COMPLY TG-200 に交換して使っています。密着感が強く遮音性が高まり、細かい音までしっかり聴こえます。これをつけて作業してるとかなり集中できます。

Chromebook

Chromebook を買いました。元々は長男のオンライン学習教材用に買ったんですが、最近は次男が YouTube を観るのによく使っています。親のデバイスを貸すと何をされるか分からない (SNS で勝手にいいねボタンを押されてたりする) ので、子どもが自由に使える専用デバイスがあると安心。

科学のなぜ?新辞典

子どもに新しいことを教えてあげるきっかけづくりに買いました。おすすめです。

今年の言葉

まとめ

総じて今年も幸せな一年でした。来年もみんなで楽しく健康に過ごしたいです。