33歳になった May 7, 2025
昨日33歳になった。1年後の自分がゲラゲラ笑うかも知れないので、ぼんやり考えていることを雑に残す。
「年を取ると一年が早くなる」とよく言われるが、個人的にはそんなことはない気がする。一年が早くなるのは、おそらく年齢を重ねるごとにイベントごとが少なくなりがちだからだろう。ここ一年はいろいろなところに出かけたり、美味しいものを食べたりといった思い出がたくさんあるので、密度の濃い充実した一年を過ごせた気がする。これからもそういう思い出をたくさん作っていきたい。このあたりの考え方は
DIE WITH ZERO の影響を強く受けている。
プライベートは充実しているが、仕事はどうだろうか。社会人になって8年ちょっと、Webエンジニアになってもうすぐ6年になる。エンジニアとしてできることはたくさん増えてきたが、ここ最近はできることを淡々とやっている感覚があり成長実感が薄くなっている。いわゆるキャリアを考えるというやつか。
それでいうと、個人の能力を高めることはもちろん大切だけれど、チームとしてより高みを目指すことも大事だなとここ一年で強く思うようになった。一人で出来ることは限界があるが、チーム、組織ならもっといろいろなことが出来る。これを表現するのはマネジメントといった世界になるのだろうか。
そんなことを考えながら、お祝いですき焼きを食べた。めちゃくちゃ旨い。
group_by を group + array_agg で高速化する(PostgreSQL) April 28, 2025
こういうパフォーマンス改善もあるよメモ
ユーザーと記事があり、ユーザーは記事をお気に入りできる。お気に入りには種類がある。お気に入りの種類ごとに記事のidの配列を取得するような処理を考える。
{
"like_name_1" => [ 1 , 2 , 3 , 4 ],
"like_name_2" => [ 5 , 6 , 7 , 8 ],
}
最終的にはこんな感じのデータを取りたい
group_by を使う Like
.where( user_id: user.id)
.select( :name , :post_id )
.group_by(& :name )
.transform_values { |v| v.pluck( :post_id ) }
group_byでDBの結果を取得しtransform_values以降をRailsで処理することになる。数が多い場合はパフォーマンスが気になる
group + array_aggを使う NULLも含めてすべての入力値を収集して配列に格納します。
Like
.where( user_id: user.id)
.group( :name )
.select( :name , "array_agg(post_id) as post_ids" )
.to_h{ |g| [g.name, g.post_ids] }
こうすることでgroupの処理をDB側に寄せることができる。ただし、可読性の低下や、PostgreSQLに依存した実装になってしまうためそのあたりのデメリットは考慮すること。
Cline使ってみたメモ April 24, 2025
深夜に「AIエージェントをちゃんと使ったことがないな」とふと思ったので試してみたメモ。
Cline Bot Inc.社が開発
CLIとエディターを使用できるAIアシスタント
なんかもういろいろやってくれる
AIプロバイダーと共に使う
導入 Clineの導入 拡張機能を入れる
(データの扱いはどうなんだという話がありますが、今回は個人開発のレベルなのであまり気にしないことにしました。)
プロバイダーのAPIキーを設定する
トークンの購入 DeepseekでAPIを呼び出すのにお金がかかるので、トークンを買った。お試しで$2。
購入した以上のコストが掛からないのは安心。
使ってみる シンプルなhtml + cssのページの改修を依頼。身内の思い出を時系列で並べている単純なhtmlがあり、基本的に同じようなタグ構造が並んでいるもの。
対話型で作業が進む。小さく作業の方針を確認して、それに同意したら作業を進めるようなプロセスを繰り返す。作業中、エディタでコードが生成されていくところが未来感あってテンション上がる。
まずはAIくんに、良い感じにしたいんだけどどうすればいい?と聞いてみた。「中身をjsonに切り出し、ビルドスクリプトを作って静的ファイルを生成する仕組みを作る」のはどうでしょう?と提案、試しにお願いしてみると少し大げさすぎるものが出来上がった。
何回か対話を行い、最終的に「中身だけをjsonに切り出して、JavaScriptでjsonを読み込んでそこからDOMを生成する」方式に決定。
なんだかんだ対話を1時間ぐらいしていたが、最終的にやりたいことができて大満足。コストは$0.17
感想 シンプルに便利
やりたいけどめんどくさいみたいな作業をとりあえずお願いするのに向いているかも
一部指示から外れたhtmlがあり、それをjsonに落としこめなかった(無視した)ところがあったので、出てきたものをチェックするのは人間の仕事だなと
トークンの関係なのか、60個ぐらいの置き換えをするのに複数回に分けて作業をしていた。もしかしたらもっとうまいテクニックがあるのかも知れない?
個人開発だからのびのびとトライできたけど、これらを業務で使うとなると慎重になる気持ちもわかる。積極的に使いますと意思決定ができる組織って改めてすごいなと思う。
AIプロバイダーやモデルの選択がたくさんありすぎて、逆に困ってしまう。高いモデルも今度ためしてみるか..?
深夜テンションで始めたことだけど学びが多かった。今後も使っていきたい。
インプラントの手術を受けたメモ April 20, 2025
前歯のインプラントの手術をした。複数回手術を行う。せっかくなので記録を残す。
骨を足す手術(0回目) 2023年の9月に実施。お値段は19万円。インプラントの基本的な流れとして、骨にインプラントを埋め込むためのボルトをいれる手術を行い、その後にインプラントをいれる手術を行う。自分の場合は骨がとても薄く、まずその骨を増やす手術から行った。
手術を行ったが結果あまり骨がくっつかず、最終的に今のお医者さんを紹介してもらった。(なので0回目にしている)この人の手術が一番痛かったし、術後の出血がえげつなかった。今思うと、無駄とまでは言わないけど最適解ではなかったのかもなーと思っている。(そもそも、インプラントをどこで受けるべきかがわからなすぎ問題がある。)
骨を足す手術(1回目) 2024年の10月に実施。お値段は37万円。
手術をする前に全身麻酔オプションの案内を受けた。全身麻酔すると完全に寝ている間に終わってしまうらしく、せっかくの手術体験を逃す気がしたので全身麻酔なしにした。医者に「強いっすねw」って言われた。
前回は動物の骨を使ったらしく、(いろいろな選択肢があるらしい)その結果骨がくっつかなかったのではという見解。今回は自分の骨を使って骨を増やすことに。
右下の顎から骨を採取し、その骨を前歯の土台となる骨に追加した。手術自体は部分麻酔もしてもらい快適(?)だった。術後の話で言うと、出血が一切なかった。名医すごい。前歯の腫れもひどかったが、採取源のあごの腫れのほうが長引いたししんどかった記憶。
ここまでは記憶を元に書いているためかなりざっくりしているが、ここからは詳細に記録していきたいと思う。
骨を足す手術(2回目) 2025年の4月に実施。お値段は44万円。
前回の手術で骨は増えているものの、インプラントの土台を埋められるかどうかは開けてみないと判断できないとのこと。1回目と同じ手術を行い、行けそうなら土台を埋めちゃう作戦らしい。
今回削るのは左下の顎。天気がとても良かった。
手術を行う前に血圧などの測定を行う。医者に「手術の場でここまで安定している人は初めてみました」と言われる。ポーカーで謎のメンタルがついているのかもしれない。
今回も全身麻酔はやらないが、部分麻酔は行う。強い麻酔のようで、麻酔した直後に心臓がバクバクする。そういうものらしい。こんな即効性のある薬がこの世に存在すること自体が面白くなる。
手術自体はやることがないし、麻酔も効いているのでただ横になっているだけ。麻酔が効いているとはいえ、振動や匂い、血の味などは全然感じるので、「今切られているんだな」とか、「めっちゃ顎の骨削られている」とか、そういうのをダイレクトに感じる。これは確かに苦手な人は全身麻酔したほうが良いかも。
手術中はまじでやることがない。口を開ける、大きく開ける、舌をどかすぐらいしかオプションがないし、大部分は口を開けるためのつっかえ棒が入っていたので本当にやることがなかった。手術中に何度か寝てた。医者に「さすが。ありがたい。」と言われた。
やることがなさすぎて、どうでもいいことをひたすら考えていた。これまでの人生を振り返ったり、ちょっとした走馬灯のような感じもした。久しく会っていない人に会いたくなった。
手術自体は3時間半ぐらいかかった。
手術後はちょっと腫れているくらい。術後の説明を受け、ヘロヘロになりながら帰る。まだ麻酔はきいているが、痛くなりそうな予感がある。麻酔で感覚がないのと、唇が張っているため口を閉じにくい。マスクをしてマスクの中で口を開けながら帰宅した。
帰宅後は基本的に横になっていた。
タブレットスタンド とBluetoothリモコン を使って、寝ながらコンテンツを享受していた。
食事はビーフシチューを食べた。
術後翌日 出血はなし。ただ全身がだるいので基本だらだら過ごした。YouTubeを見て過ごした。
食べたもの:プリン、ビーフシチュー、Oikos
2日後 出血なし。全身のだるさもなくなった。腫れはひどい。普通に仕事ができた。リモートワークありがたい。
痛み止めはまだ飲んでいる。切れて来るとじわじわと痛みが来る。痛み止めを飲むと治る。
食べたもの:ビーフシチュー、ドライフルーツ、ドーナツ、鍋、ヨーグルト
3日後 出血なし。だるさなし。腫れはピーク過ぎたかも?
痛み止めは継続して飲んでいる。6時間に一回は飲んでいる。
上唇の腫れが引いてきたので初めて裏側を見た。血餅と言われる白いぶよぶよができていた。
そうめんはなんとか食べられたが、炭酸はしみる
4,5日後 腫れはかなり治まってきた。ただ下顎の方が固くて動きにくい感じがする。顔を動かすと痛い。
喋ったり笑うととても痛い。引きつってしまう。
食事もずっと右側だけを使っている。
しばらく家を出ていないのでボルダリングが鈍ってしまうのではないかと心配。
6日後 上側の腫れはほぼ治まった。下顎はまだ動かすと痛いし、ブラッシングも避けている。
痛み止めもまだ飲むが、一日2,3回ぐらいに頻度は下がってきた。
12日ぶりにボルダリングをした。当然いろいろ弱くなっていた。
7日後 奥歯の方を抜糸。奥歯が膿んでいるので抗生物質追加。
前歯のブラッシングは柔らかいブラシで解禁された。
食事も比較的自由に食べられるようになった。
奥歯は痛むので痛み止めはまだ飲む。
8日後 痛み止めはまだ飲む。上唇裏の歯茎が少し裂けている気がするけど、血も出ていないので様子見。
2~3週間後 奥歯のしこりというか腫れはまだある。お酒飲んじゃった
3~4週間後 上部の抜糸をした。
奥歯はしこり感あるが、医者いわく問題は見られなくて自然経過で治るとのこと。
(腫れが引くまでは以降更新する予定)