2022年振り返り
2022/12/31
振り返り
2022
1年の振り返りの記事がTwitterに流れてきて、なんとなく書きたくなったので書いてみる。
1年の流れ
1月
就活周りでゴタゴタしていたっぽい。
まだ面接とかのゴタゴタから1年経っていなかったのかという気分になっている…
結局院進したので来年もう一度就活しないといけないの考えたくない…
ただ、なんだかんだで一度就活したことで自分の基準はかなり明確になったので、無駄ではなかったと思っている。
基準に完全にそうところ探そうとすると日本から出ないといけなくなりそうなので、英語どうにかするのかなりの急務…(TOEIC 670点)
他には、大学の授業のチーム開発演習やっていたらしい。
完成物はOne Poll。
気軽にポチポチ答えられるアンケートアプリ。
シンプルなアプリケーションだけど、anke-toの経験を活かして短期間でクオリティの高いものができたと思っていて、結構気に入っている。
2月
就活がまだ続いていたらしい。
カレンダー見ると最終面接の予定とか入っていた。
後半に入るとGenORMの開発を始めている。
GenORMの「型がしっかりつくORM」という思想はかなり前、具体的には2020年の5~8月に作っていたtitech-cpp/sqlboilerの頃から持っていた。
でも、Genericsが入る前のGoで実現しようとするとかなりの量のコードを生成する必要があって、メンテナンスを続けていける実装が思いつけずにいた。
それが1.18でGenericsが入るのが決まったことで一変したので作ることを決めた。
型のつき具合はともかく「Genericsを使ってORM作る」は結構多くの人が考えるんじゃないかと考えていた。
先にやられるとインパクトが薄れてしまうので、思い切ってbetaが出た段階で実装開始し、1.18リリースとほぼ同時にリリースした。
実装始めてから1.18が出るまでは食事中とかも含めて常にGenORMのこと考えるか実装するかしていた気がする…
1.18リリースに合わせるためにGoのリリースサイクルとかについて調べたり、milestone毎日確認していたりしたのも結構良い経験だったように思う。
結果的にこの記事を書いた時点ではstar数30ぐらいで止まってしまったのは、公開時の発表の仕方が悪かったのとかが結構あったんじゃないかな、と思っている。
あと、意見として言われた「ORMという結構帰るのが大変な部分で、よく知らない開発者が作ったメンテナンスが続くかわからないもの使うのは厳しそう」というのはかなり納得してしまった。
確かに自分でもこの状況でGenORM使うと言われたらだいぶ躊躇う気はする。
自分自身では本気でGORMやentに並ぶか倒すかするつもりでそれらより良いツールを目指して作っていたので、かなり悔しい。
2023年も春休みにGenORMの拡張に加えて、結構大きめのツール実装を考えているので、その時にはこの経験活かして実際に使われるツールにしていきたいなぁ…
3月
GenORMの詰めと公開。
中旬に公開してからはかなりドキドキしていた。
3/27にtraP LTがあったので、そこでGenORMの実装時に考えていたこととか話した。
資料はhttps://slides.mazrean.com/trap-lt/。
traPがLTという時は大抵Long Talkの印象がある。
時間押していたのもあって焦ってしまいあまりうまく話せなかったと反省している。
話すのうまくなるの、どうすればいいのかな…
4月
4/1に研究室が決まった。
本当は3月末発表のはずだったのだけど、大学側のミスで一旦取り消しになるとかいうことがあり、4/1までずれ込んだ(そんなことある?)
こっちにとってはかなり重要なことでかなりドキドキして結果待っていたので、そういうのは頼むからやめてほしい…
研究室が決まってからは研究室の説明とか研究内容の理解とかをしていた。
とは言ってもそこまで厳しい研究室ではないので、かなりのんびりしていた気はする。
他にはCPCTFの問題を1問だけ作ったりしていた。
作問者writeupは https://trap.jp/post/1572/。
GenORMの思想の由来の1つでもある、GORMに対するSQLi周りの問題。
ノーヒントで解けた人が確かいなくて悲しかった記憶。
SQLiでPrepared Statementに対応しないといけないの、難しいよね、はい。
普段開発メインでやっている人間が作るのだから、せっかくだし現実で気づかず起きそうな問題出したい、みたいな意図があったりしたけど、初心者向けの問題ではなくなっていたなぁ、と反省している。
作問、難しい…
5月
特筆することはなかった気がする。
強いていうなら院試が近づいてきてソワソワしていたかも。
あと、Docker Conを見て「拡張機能でDocker Desktopが便利になっていくの楽しみ〜」とかしていた。
実はGenORMがあまり広まらなかったのがまあまあ効いていて、GoのHTTP Routerライブラリ作ろうかと思ったけどやる気が出ず結局作らなかった、みたいなのもしていた気がする。
GitHubの草がこの辺り目に見えて薄くなっているんだよな…
6月
ISUCONの準備を始めた。
ISUCON12予選参加記で書いているツールは大体この辺りで作った気がする。
今回は1人で競技を楽しみたかったので、1人参加前提でツール類を準備している。
チームで参加するとガチるとどうしても多少はぶつかってしまって、純粋に楽しめないなぁ、と感じていたので…
7月
前半は引き続きISUCON12予選の準備。
色々ツール作っているのって楽しいんだよね。
ところが、7/15に院試のA日程で敗北して全てが変わる。
A日程は基本大学内部の人が受けられる成績勝負のやつ。
成績で勝っていれば面接だけで合格もらえる。
これで負けてB日程になると試験で勝たないといけなくなるので一気に大変になる。
成績で勝てそうな感じはしていなかったのに、「A日程で受かるかもしれないしISUCONの準備してていいや」みたいなことしていた(どうして…)
情報工学系は結構人気で倍率3倍オーバーとか。
当然ちゃんと勉強しないと院にいけなくてまずいので、ISUCONの準備やめて一気に試験勉強に切り替える。
そして、直前に準備やめてしまったのでISUCONは予選敗退しました…
研究室があるキャンパスが遠くて、移動時間を潰すためにKindle Unlimitedに入ったのもこの時期らしい。
結果、読書(と言ってもラノベとかが多いけど)量が増えて結構良い買い物だったと思っている。
8月
前半は7月後半から引き続き院試勉強。
ギアが大学受験の時とかほど入り切らないのに焦りつつ試験を迎える。
結果的に希望の研究室に行けてよかった…
8月末にはtraPの合宿に行った。
久しぶりの合宿楽しかった。
9月
虚無。
カレンダー真っ白で笑ってしまった。
院試突破したことで安心したんだろうなぁ…
10月
やっと研究のテーマが決まったので研究を始める。
のんびりと論文読んで既存研究理解したりしていた。
11月
研究。
11月後半あたりからは実装周りに入れて楽しくなってきた気がする。
12月
研究。
手法の改善周りに着手できて、改善がきくといい感じに結果が良くなるので楽しくなっていた。
そろそろ卒論書くの考えないとなぁ…
趣味周り
百合周りが結構好きで、アニメ、漫画、小説ともにその辺り中心。
アニメ
今年はClover Worksが良かった。
「明日ちゃんのセーラー服」は今でもよく見返しているけど、話の構成がかなり良くて、今でも最終回見ると泣いている。
漫画
今年は小説読む量が増えた分漫画は読む量減ってしまった感じがある…
くずしろ先生の「笑顔の絶えない職場です」が良かったので、他のくずしろ先生の漫画読んだりしていた。
小説
去年までは全然読んでいなかったけど、今年はかなり読んだ。
最初はラノベだったけど、ここ数ヶ月ラノベ以外にも手を出し始めた。
特に百合の場合、漫画以上に小説だと現実の性的マイノリティの人たちとの関わりについて真剣に考えているものが多い印象で、「今までの自分が百合を純粋に楽しんでいたのが果たしてそれで良かったのだろうか?」という悩みが生まれたりもした。
正直まだ答えは出ていないけれど、少なくともこれからも考え続けていくべきなのだろうとは思っている。
綾加奈先生の百合小説にはかなりハマって、Kindleで売られているもので足りなくなって、pixivとか片っ端から漁ったりしていた。
苦悩や羨望とかの暗めの感情の描写が上手くて好きで、Kindleで売っているのだと、「それでも幽霊は人生を諦めない」「姉の娘と正しく在りたい世界の私」「花束から一輪の幸福を」あたりが好き。
pixivで公開されているのだと、「来世のための物語」「あの日の銃声が今もなお」「折れた翼すら目障りだから」とかおすすめ。
それ以外だと、「夢の国から目覚めても」がかなり刺さった。
反省
技術的な面であまり新しいことに触れられていないなぁ、という印象。
その分これまでに得た知識が体系的に整理できたとは思うけど、来年は流石に新しく何か技術に触れないとまずい気がしている。
良かったことを挙げると、しっかりGenORMを完成させられたこと。
これまで結局完成させられなかったものがかなり多いので、しっかり完成させられたのは大きいと思っている。
他には活字の摂取量が増えたことで語彙が増えて、思考は間違いなくまとまりやすくなった気はする。
まとめ
前半はGenORM開発、進路周り、後半は研究の1年だったのかな、と感じた。
来年はもうちょっと新しい技術に触れられるようにしたい。