2022-12-28
2022 年の振り返りと 2023 年やりたいこと
2022 年いろいろあった。振り返る。
大学生業
今年は2度目の3年生を頑張っていた。4月時点では進級に残り27単位必要だったわけだが、なんとか研究室配属も決まり、進級の見通しが立っている。🎉
卒業要件という観点では、必修科目である線形代数Bと微分積分Bに果敢に挑んだが、敢えなく不可となった(3回目)。これは来年最も頑張らなければならないことである。
サークル活動も引き続き頑張った。4年目にもなると相対的に年長側になってきて、先輩としての立ち回りを会得するのに苦労した。
当然の如く力学はパソコンをやりまくる方向に働いているわけだが、宮古島に行くなどしてパソコンと物理的距離を取ることで改善した。また、後述する引越しの影響で自宅に人が集まることが増え、サークル活動とパソコンを同時に行いやすくなったのも大きい。集まっている中でパソコンをやりまくるのは気が引けたが、サークルにおいてもパソコン人間としてのブランディングを行なってきたため、自然に導入することができた。
労働
今年も元気に Ubie で働いていた。仕事内容は昨年とガラっと代わり、技術戦略の策定や内製認証基盤への移行などを行なっていた。
技術戦略は、周りが経験豊富な凄腕エンジニアばかりの中で、果たして自分がやって良いのかという葛藤があった。自分の技術選定に対して、フィードバックはたくさんもらいつつも大きな異論がなく、これも自信につながった一方で不安を加速させた。そのことを社外のこれまた尊敬するエンジニアと話していたところ、「ヤバそうな時にブレーキかけるのが周りの手練たちの仕事だから、若者は伸び伸びやるといいよ」と言ってもらえて吹っ切れた。吹っ切れてブログ記事を書いたら無事炎上したわけだが。
内製認証基盤への移行は、すでに 1000万ユーザー以上を抱える Firebase Auth からの無停止移行をしていて、かなりタフな仕事だった。結果的にはうまくやりきれて、2022年の僕的ベストワークになった。
総じて、今年は一人で主導して一人で手を動かす仕事ばかりだったので、来年はもっとチームで仕事したいなと思う。
それから、副業もはじめた。アプリ開発を丸っと請け負うタイプで、全ての裁量が効くので、いろいろな技術を試す場にできていて良い。UX を自分の力だけでゼロベースで考えるのも良い経験になった。年始くらいからやっていて、11 月ごろにようやくリリースできてよかった。
副業は色々良いことあったけど、普通に本業と大学生業と両立するのしんどいので、ガッツリ手を動かす系はしばらくやらないと思う。
技術
昨年末の振り返りでは Rust やるとか書いてたけど、ほぼやらなかった。代わりに、フロントエンド開発における設計とかバンドルサイズについて考えることが多かった。
OSS
今年は31個のプルリクエストを投げた。あまり満足はしていない。
特に Chakra UI のバンドルサイズ削減活動を行なっていて、大きめの設計変更提案 (chakra-ui/chakra-ui#6368) などもしていた。コミュニティの反応は悪くなかったように思うが、Chakra UI としては Zag ベースへの移行という大きな変更を控えていることもあり、マージには至らなかった。
今年は Chakra UI, NestJS, Prisma とバラバラにやってしまったので、来年はもう少し腰を据えてまとまった貢献をしたいと思う。
工作
今年は小さい工作をたくさんしたのでここで供養する。来年は長く育てていける個人開発サービスを1つ持つのが目標。Adventar 的な。
eslint-plugin-chakra-ui
名前の通り、Chakra UI 向けの ESLint プラグイン。プロパティのソートとかをやる。これは結構スターが伸びて嬉しかったので、TypeScript の更新についていく最低限のメンテナンスを継続している。
protoc-gen-nestjs
最近出た protobuf-es というのがあり、これは Protobuf から ECMAScript や TypeScript のコードを生成してくれる。protoc-gen-nestjs は、そのコードに含まれる型をベースに、NestJS のコントローラーの型定義とかを生成する。
ts-proto で同じようなことができるけど、protobuf-es エコシステムは Protobuf の型生成と RPC ハンドラ&クライアント生成が分離していて、取り回しやすいと思う。
gather-notification-extension
Gather でチャットや Ring が来たらデスクトップ通知を出してくれる Chrome 拡張。Ubie で Gather を使っていて、話しかけられても気づけなかったので作った。Chrome Web Store に出していたら思ったより社外の人も使ってくれていて良かった。
結局 Gather は使わなくなったのでアーカイブ済。
fastly-purge-action
GitHub Actions から Fastly のキャッシュをパージする君。どう考えても Next.js のロールアウト前にキャッシュパージしたいと思うんだけど、みんなどうしているんだろう。
delete-source-map-action
GitHub Actions で Source Map を消すやつ。単純に *.map
を消す以外に、 *.js
側の sourceMappingURL
コメントも消す必要があって、毎回書くのめんどいので作った。
Sentry とかは webpack プラグインで Source Map をアップロードしてから消したりするけど、バンドラーのワークフローにそういうの入れたくないから、Actions でやるようにしている。
logrocket-action
↑ の文脈で、GitHub Actions で LogRocket に Source Map アップロードできるようにした。
gh-ranking
GitHub の Org 内でレビューした数とかのランキング出す CLI。Rust 勉強で作ったやつで、それ以上でもそれ以下でもない。
ブログ
今年は会社のテックブログも含めて 5 記事しか書けなかったが、どれもまあまあ伸びてよかった。
特に Ubie は Go と Node.js の会社になります は良くも悪くも反響が大きかったように思う。題材的に覚悟していたけど、読み返すと前提の説明とかが甘くて誤解を与えうることが多く、反省点の多い記事となった。
Zenn の Publication の体験をとても気に入っているので、来年は仕事でのことも含めて、もうちょっと雑に小さい記事をたくさん書けたらいいなと思う。
イベント
会社の文脈で2度登壇をした。
- 「とりあえず打った施策」のアンチパターン ~ 一旦はじめてみたけれど、うまくワークしなかった打ち手をぶっちゃけ公開 ~
- “変化に強いシステム”を実現するためにテックリードが行った取捨選択–意思決定ポイント、苦労したことと乗り越え方-
また、今年は何度かオフラインで集まれる機会があっていろいろな人と話せた。特に、界隈を牽引してきた人たちの空気感を知れたのが大きい。
なんというか、一昔前はもっとみんなが特定の技術にポジションを張っていたように思う。一方で、自分を含めて今の若者たちは「俺は XX がこれから来ると思う」「俺が YY を流行らせていく」みたいなポジションを張った発信が少ない。
コミュニティにおいてはポジションのぶつかり合いのほうがおもしろいと思うので、来年は物おじせずにポジションを張って発信していきたい。
その他
引越し
つくば市内で引越しをした。仕事部屋と生活区域を分けるのが主目的だったが、結果として宅飲みとかをやりやすくなって良かった。
真上の部屋に友だち兼同僚が住んでいるのもおもしろい。どのくらい音を出すと聞こえるのかテストができて大変便利だった。
少なくとも卒業するまでは住み続けると思う。来年はもっと住環境に課金していきたい。
音楽
NUMBER GIRL が解散した。とっても悲しいけど、生で見ることはできないと思っていたのに 4 度も見れて、RSR’22 やラストライブといったイベントに立ち会えて良かった。
アコースティックギターは継続している。来年はそろそろエレキギターをやろうかな。ぼっち・ざ・ろっく!見ちゃったし。
オルタナ(特にシューゲイザー寄り)と青春ロックをよく聴いた。
まとめ
つまるところ来年は以下をやる。
- 卒論、微分積分、線形代数
- 個人開発サービスを出す
- 1 つの OSS にまとまった貢献をする
- ポジトーク
- 課金