2024年にやってたこととかのふりかえり
何も思いつかないままアドベントカレンダー投稿の当日になってしまった。まじで何も思いつかないままキーボードを叩いている。
ネタを求めて、今年撮った画像をみても、これまで書いた文章を呼んでも、何もピンとこない。つまるところ、今年はまるで記憶に残るようなことがなかったのかもしれない。
マジでネタがないので、今年の振り返りでお茶を濁していく。
本業
去年から不動産投資会社でITエンジニアとして働いており、社内アプリを作っている。
1つの社内アプリを作り続けており、他の部署で使ってもらっている。最初の頃はユーザーは「ふーん」って感じだったが、最近は下手なことをすると、ユーザーからちゃんと苦情が飛んでくる。機能追加の要望も山のように飛んでくる。使われている証なので、これほどありがたいことはない。
偉い人からの要望があって1つウェブアプリを作ったが、私としては久々にスマッシュヒットな感じになった。いい仕組みを作ることができた。偉い人からも「ええやん」という感じで、ウケが良いのを感じる。今年のボーナスに期待がかかる。
一方で人手が足りない。コード生成AIを導入したりしてなんとかしようとしているが、速くはなっても楽にはならない。だれか助けて欲しい。
社員旅行
今年の社員旅行幹事の一人に任命されたため、こう、いろいろやっていた。無事に死人が出ずに終わった。今はホッとしている。
社員旅行で夜遅くまで 騒ぎたい 飲み会をしたい人たちの、強い意欲を舐めており、すごいことになった。飲み部屋に連れさらわれた結果、営業部の人達と交友ができた。翌朝は眠かったが、結果としては非常に良かった。
社員旅行幹事をやると、大量の情報を処理する必要があるわけだが、情報が多すぎて頭に入り切らなくなった。ある情報を頭に入れると、頭から別の情報が出ていくといった具合。そのため、3日前に私が完了させたタスクについて忘れており、「いや、まだやってない」と強弁するシーンがあった。タスク管理システムを見ると、私が完了させたことが記録されており、同僚氏からは心配された。介護状態だった。
正直、元々やってる仕事と並行して社員旅行幹事もやるのは、無理があったと思う。副業までやっていたので、かなりアホだったと言うしかない。
副業
去年から縁があってやっている。お客様からは好評を頂いており、ほぼほぼ切れ目なく案件を頂いている。
税金の関係で本業の手取りと副業の手取りが、大体同じぐらいになっており、お時給で考えると副業を本業にしたほうが良いんじゃないかという気持ちがないではないが、多分本業にすると税金でアレだし、本業は本業で楽しいので続けたいという、欲張りなことをやっている。
ずっと一人でシステム開発する感じだったが、最近になって人数が増えた。速くはなったが、楽にはならない。
大学
去年から縁があって大学の研究室で客員研究員をしている。論文を出すと博士になれるらしい。
とはいっても本業と副業でほとんどの時間をつかっているので、週に2,3時間程度しかこちらには使えていない。研究室の人と話すと、知識量が段違いで、私は全然知識が足りていないことを実感する。もうちょっと研究の時間を増やしたい。
インフレ
インフレがやばい。会社の周りの飯屋がガンガンに値上げしていく。ラーメンの価格は1.3倍ぐらいになった。自炊の弁当へ移行することを検討している。
インフレ前に調子に乗って持株会にフルスイングしたら、本業だけでは毎月の収支が赤字となった。副業でなんとか糊口をしのいでいるが、副業に依存するのは不健全なので、本業の給料が物価なりに上がってくれると助かる。
宅地建物取引士
宅地建物取引士の勉強を始めた。不動産の知識ゼロで今の会社に入ったが、その場その場で調べるのでは厳しくなってきたし、知識があれば役立つという実感が出てきた。
忙しすぎて、勉強するまとまった時間はまるでないので、「一日に一ミリだけでもいいから勉強をする」というスタンスでやっていっている。毎日チマチマ勉強するのが、タイパが良い気がする。
知識が目的なので、資格を取る必要まではないので、ゆるゆるやっていく。
キーボード
今年に入って2枚ほど生えてきた。
REALFORCE R3HI17
言わずとしれたREALFORCEの、スペースキーが分離したタイプ。フルサイズで、押下圧は45g。
REALFORCEでスペースキーが分離したものは、後にも先にもこれっきりだろう、守護らなきゃ、という気持ちになって買ってしまった。
正直、手に合わない。前に使っていたNiZの静電容量式キーボードの押下圧は35gだったため、45gはメチャクチャに重たく感じる。フルサイズでマウスが遠くなるため、右手が忙しい(でも右手を高速にシャカシャカしてるとちょっと楽しい)。スペースキーの分離も有効活用はできておらず、うーんといったところ。
そのうち手放すかもしれない。
KEYCHRON K1 SE aloe軸
KEYCHRONは最近目に入るようになったキーボードメーカーで、見た目が良いキーボードが多く、気になっていた。
実家に帰省するときに持っていく薄型のキーボードが欲しいなと思って色々探していたときにKEYCHRON K1 SEが目に付き、軽率に「KEYCHRON K1 SEほちぃ!」と投稿したところ、なんと山川さんからゆずって下さるというありがたい申し出があったので、お言葉に甘えて譲り受けた。感謝しかない。
押下圧37g(?)のAloe軸に換装されており、ロープロファイルというのもあって、ハチャメチャにタイピングが軽く感じる。楽しい。
これをもらってから毎日タイピングゲームをしてしまっている。手が疲れないので、止めるものがない。
2, 3回ほど会社に持っていったが、REALFORCEよりはカチャカチャ音がして周りに迷惑でないかが気になるので、最近は持っていっていない。静音リングをつけたので、また持っていきたい。
ちなみに社長はエルゴノミックなキーボードを派手にバチバチいわせてタイピングしている。たまにすごい速度でバチバチいっていると、こちらも楽しくなってしまう。やはりキーボードの打鍵音を聞くのが好きだ。
英字配列からJIS配列に変えた
元々NiZの英字配列を使っていたわけだが、今年、JIS配列に完全移行した。Macに追従してなのか、Windows10あたりから変換・無変換でIMEが切り替えられるようになったので、英字配列よりもJIS配列のほうが日本語入力で有利となったためである。NiZの静電容量式が7年も使っているのにまるで壊れる気配がなく、切り替える機会がなかったわけだが、キーボード(JIS)をもらったのでこれ幸いとばかりに切り替えた。NiZの方は押入れ行きとなった。
株
新NISAが始まったのをきっかけにして株を始めた。
株を始めたところ、政治経済のニュースへの関心がハチャメチャに強くなった。お金が関わると脳が活性化するようだ。今までまるで興味を持てずにいたので、良い傾向だ。
積立ではなく、自分で選んだ株を買っている。マイナスにはなっていないものの、日経平均には負けている。初心者なのでしゃーない。積立にしたほうが良かったかもしれない。
財産の三分割法的に考えると、次は不動産に手を出したい。せっかくそういう会社にいるし。
まとめ
書き出してみると、いろいろやりすぎている。「今年はまるで記憶に残るようなことがなかった」とはなんだったのか。常に何か仕事めいたことをやっている気がする。流石に心身ともにもたないため、来年はもう少し余裕のある年にしたい。
あれ
AIにコード書かせてる間にコーヒー淹れるみたいな、豊かな労働環境になってきた。
AIにコード書かせて、AIにレビューさせて、AIに修正させてる。
俺いらん。
リアルな体感として、MacBookで動くLLMだと、今年前半はプログラミングを10%やってくれてる感じだった。今は少なくとも30%はやってくれてる。
LLMが書くプログラムが十分に使い物になるならば、金さえ積めば仮想的な開発者10,000人を瞬時に召喚することさえできるようになる。
サービスの顧客全員に、専属の仮想的な開発者をはりつせるようなことだって可能になる。
全顧客に同じソフトウェアを使わせるようなみみっちいことをせずとも、全ての利用者がそれぞれにテーラードされたソフトウェアを使うことが可能になる。利用者が要望を出した5分後には、カスタマイズが完了している。ということができるかもしれない。
「AIで楽になったわーい」とか言って安穏としてると、マジで淘汰されるので、AIを使ってより良く、より速く開発できるようにしたい。
労働者は技術で楽にはなれん。速くなるだけで。「どれだけ練習しても、走るのは楽にならない。ただ、速くなるだけだ。」というわけだ。
あれ
コード生成AIにプルリク作らせるやつやりたい。
コード生成AIでのコード補完もいいんだけど、人間がボトルネックになっててけしからん。
あれ
自動テストを回していると、CPUが100%に張り付いてしまう。コードを書いている時もコード生成AIがGPUをぶん回している。より性能のよいコンピューターがあれば、より速くソフトウェア開発が進むだろう。
ソフトウェア開発は手工業から機械工業へ移行しつつあると感じる。コンピューターはプログラマーにとっての道具を超えて、生産機械となりつつある。
仮説:2024年、あるいはその近未来において、AIは自己改善が可能である
waifu2xのような高画質化AIに見られるように、学習データを自動生成できれば、AIの学習に便利である。
- 人間が学習データを作成する手間が大幅に削減される。
- アノテーションされていなくとも、元となるデータがあれば、ソレを元に半自動的に学習が進行する。
AI(LLM)は、プログラムのソースコードの説明文を作成する能力を有する。ただしソレは間違い含み得る。
LLMは説明文からプログラムのソースコードを作成する能力を有する。ただしソレは間違い含み得る。
以下のように記号を定義する
S: 元のプログラムのソースコード(Source Code)
S.D: Sの説明文(Description)
S.D.G: S.Dから生成したプログラムのソースコード(Generated)
S.R: Sを動作させた結果(Result)
S.D.G.R: S.D.Gを動作させた結果(Result)
S.RとS.D.G.Rが一致するようにAIを学習させることで、AIは半自動的に、正しく動作するプログラムを生成するように、プログラミングを学習しうる。
プログラムは実行速度を自動で評価できる
AIはプログラムである。
AIは自身のプログラムの、その実行速度を改善しうる。
AIは自己改善が可能である。
少なくとも、コード生成AIについては、かなりお手軽にその精度が向上しうる(実験はしてないのであくまで仮説)。
「やりたいことを書いたら、十分実用可能なプログラムが作られる」という状況が1〜2年以内に来る可能性は十分ある。
ただ、突然に「プログラミングは不要、プログラマーは全員解雇」となるよりも、「プログラマー」の裾野が広くなり、既存とは別個のソフトウェア開発(あるは今とは全く異なる何か)の業態が起こる。コンパイラーがある今も、アセンブラーや機械語を理解できる人間は必要とされている。はず。
もうすでに論文があってもおかしくなさそう。思いつきを書きなぐったのでまだサーベイを全くしてない。
良いことを思いついた時、本当にソレが「良いこと」だった場合、誰かがすでに思いついてて発表してる可能性が極めて高い。
あれ
AIが予測入力を頑張ってくれるので、高いキーボード無くても行けそうになってきた。
コード生成AIは腱鞘炎予防に良い。
あれ
VSCodeの拡張機能のContinueと、Ollamaを組み合わせると、ローカルのLLMがコードを書いてくれるようになるぞ。
ただし品質と生成速度はLLMモデル並びにそれを動かすPCのスペックで決まる。