1115
なんかボンヤリした日だった。GitHub Actionsを盆栽したりしていた。まさか進捗それだけか?まさかな。
近所に比較的最近できた居酒屋に行った。すこし割高だけどおいしかったので、これはアタリかもしれない。
寝ます。今日はなんもしてないなあ。
なんかボンヤリした日だった。GitHub Actionsを盆栽したりしていた。まさか進捗それだけか?まさかな。
近所に比較的最近できた居酒屋に行った。すこし割高だけどおいしかったので、これはアタリかもしれない。
寝ます。今日はなんもしてないなあ。
最近守りに入ってばかりでよくないな〜と思ってるんですよ〜みたいなことを1on1で上司に相談したら、上司のほうもそう思っていたということがわかった。状況的に仕方ないのだけど、それならそれで、状況を最速でなんとかする方向に動けるといいねみたいな話をした。どうすっかな〜。
「一億年のテレスコープ」読んだ。難しい架空物理学理論の出てこないディアスポラか。こういうのを、宇宙船で旅をしているだけでSFを名乗るんじゃねえくらいに思っていた時期もあるけれど、こういうのはこういうので面白いなと思った。いやまあ、俺はイーガンが好きなんだよ〜とは思うけれども。
最近のSFあんまり読んでないんだよね。また読みたいな。
寝ます。また夜更かしを続けてしまった。はー。
Clineを試している。VSCodeのプラグインで、Claudeにコードを書かせられるやつ。テスト書いてくれんか?みたいなことを言うと試行錯誤しつつ書いてくれる。実装が込み入っていると一発OKというわけにはいかないが、何度かボタンを押しているだけでコンパイルエラーなども見つつ修正してくれる。コンソールでテストを実行してその結果を自分でチェックすることも。すごいなーと思った。ただClaudeのRate Limitはすぐぶつかる。もっと課金してTierを上げればいいのか?
無限匹の猿にタイプライターを叩かせるといつかシェイクスピアを書くだろう、みたいな話があるけれども、超LLMアシストタイプライターならもっと短い時間で成功するかもしれない。ここまで考えてこれは「これはペンです」の話だなと思った。
夜は会社の人と飲んだ。受託開発ってどうしても魅力ないよなみたいな話をした。まあね。安定してるのはいいことだけどね。
寝ます。
相変わらず仕事は何なのかよくわからない。ブランチ戦略とか考えていた。あとは同僚がCopilot Workspaceを触っているのを見ていた。なるほどissueになんか書くとそれらしいコードを出そうと頑張ってくれるが、「いい感じに」みたいなことだけ書いても結局動かすのは一苦労だったりするので、本当に知識ゼロから始めるのはまだ厳しそう。でもテスト書いて!とかだったらいけそうだし、もっと具体的な開発タスクならそれなりにいけるんじゃないだろうか。それはまた今度見る。
夜はこのblogの新バージョンをひっそりと仮デプロイした。まだ仮なので、いつものドメインでアクセスしている人は以前のを見ています。応答時間は50〜100msで、これは現行よりはだいぶ遅いが十分許容可能だし、Cloudflare Workersだと最悪ケースが1000msくらいになるので(キャッシュしたら200msくらい)、今回は自前でやる方がいいかなと思った。つまんないけど。でも一通りデプロイ手順はやったし、また何か仕事とかで出会うことがあればスムーズに使えるでしょう。
寝ます。
中野梓さんお誕生日おめでとうございます。
仕事は相変わらずモンニャリしている。結局、自分の責務が分散していてどれにも集中できていないのが問題なのだろうな。見積もりなら見積もりを、仕様検討なら仕様検討を、実装なら実装をしていたい。根本的に集中力がないのかもしれない。やることが複数あると、今やっているタスクが行き詰まるたびに他のタスクをやろうとしてしまうが、人間はそんなに素早く頭を切り替えられるようにはなっていない。
そもそも真の優先順位がよくわからないのも問題だ。今って何する時間なんだっけ?うーん。
タスクをきちんと洗い出すこと。時間を区切って集中すること。とりあえずこの2つをやればいいのか。でも根本的にはつまんないからこうなってんだよな。
寝ます。
フロントエンドを自前で動かすべくDockerfileを書いていたのだが、bunでRemixは動かないということをいまさら知った。えっ?じゃあこれまで動いていたのは何?ということになるのだが、bunがよしなにnodeにフォールバックしていた?らしく、要するにずっとnodeで動いていたということらしい。マジで?
そういうわけで泣きながらすべてをnpmにする作業をした。yarnやpnpmも使いたかったが、なぜかうまくいかなかったので断念した。
でも、今思えば別にそうすることはなく、依存性解決とビルドまでをbunでやって、実行だけnodeでやればいいのではないかと思う(ずっとそうなっていた?わけだし)。npm installはどうしても遅いから、そのへんはbunでやりたい。明日そうするか。
お高いコンビーフを買いに行ったりした。お高いコンビーフ、前にも買ったことがあるけどマジでうまい。でも絶対健康に負荷を掛けているな〜と思う。だから何だってんだ〜〜とも思う。
寝ます。土日じゃやっぱり休まらないよな。やれやれ。
技術選定ミスったわ〜という気持ちが高じたので軌道修正を試みている。具体的にはCloudflare Workersを剥がす。普通にRemix serveをDocker Composeで動かすほうが、平均では劣るけど最悪パフォーマンスではだいぶマシになるのではないか。そのあたりが実際どうなのかを確認する必要がある。骨が折れるけれど。
すべてを断念してAskamaに戻るみたいな選択肢もなくはない。絶対やりたくないけど。でも真にパフォーマンスを追求するならそうなるんだよな。
寝ます。はー。
見積もりよりは会議で仕様の議論してるほうがずっと楽しい。というか僕は単純に見積もりが下手だなと思う。訓練が足りない。結構やってきたはずだけど、フィードバックが機能していない気がする。そもそも見積もりってどうやるんだ?
Cloudflare Workersはキャッシュがそれなりに動くようになった。いくつか問題もある。まずブラウザにもキャッシュされてしまう問題。これはなんかヘッダーをいい感じにする必要がある。それから、キャッシュの無効化は難しかった(有効なキーを列挙しようとすると落ちる?)のでバージョンをキーにつけることにした。バージョン番号の保存のためにKVを使うことにしたが、今度はこれのコールドスタートが遅い。これもキャッシュがあるのでマシにはなるが、なんかこう、技術選定に失敗した感が強い。
Cloudflare Workers、に限らずエッジワーカーは、頻繁にアクセスが来る環境において平均のレスポンス時間を最適化するものであって、たまにしかアクセスがない環境だとコールドスタートのデメリットが大きい気がする。これは学びだったが、どうしようか……。
速度のことだけを考えるならAskamaでレンダリングして返すのが明らかに一番速く、最短10msとかで返ってくる。これはCDNとかではなくさくらのVPSを呼んでいるから、地域によってはもっと遅いだろうが、こんなblogを日本国外の誰が読むのかという話である。
Cloudflareを断念してVPSでRemixを動かせばいいのか?あるいはSPAモードか?いろいろ考えなくては……。
寝ます。
仕事は最近見積もりとか調整ばかりやっている気がする。開発も少しはやっているか。停滞を感じるし、有り体にいえばつまらない。耐えの時期である。
転職して半年、いまだに仕事が面白くなったことがないことに多少危機感がある。プレイヤーとしての経験は多少積めているけど、それをしに来たんじゃないんだよ。
Cloudflare Workersのキャッシュが効かない問題は、単にSet-Cookieヘッダがある場合はキャッシュを保存しないという仕様のせいだった。一応動くようになった。ログイン状態とそれ以外とで微妙に表示内容が変わるから、キャッシュキーを切り換える必要があったりしてすこし面倒。
あとは新規記事投稿時のキャッシュ無効化だけど、これはそんなに難しくない気がしている。普通にCache APIをクリアすればいいのかな。実験が必要。
寝ます。
今日も会議が多い。なんか今日は仕事で褒められることが多かったので嬉しい。もっとも、もう「褒められる」ような年齢でもポジションでもなく、単にちゃんと仕事をしていたら有り難がられたという話なのだが、いずれにしても嬉しい。まだこの脳は錆びきってはいない。
アメリカ大統領選挙があり、トランプ氏が当選したらしい。まあ正直なところマジかよという感じ。完全に陰謀論者の(元気な)老人という認識になっていた。
それほどまでにあちらで(も)リベラルが嫌われているのか?と解釈するのはたぶん違ってて、単に民主党が候補者選びでグダった結果と理解するのが一番穏当なのかなという霊感がある。たぶんアメリカ大統領選挙は日本のどんな選挙とも違っていて、アナロジーで理解しない方がよさそうだ。もっとも、仮にそうだとしても、候補者選びでグダったくらいで陰謀論者の(元気な)老人が当選するのか……というアレはあるけれども。
夜は会社の人たちとオンラインで飲んだ。料理とお菓子作りは似ているようで根本的に違うという気づきがあった。料理で多用される「適量」「少々」などの表現は、お菓子作りにはあまり現れない(と、思う)。お菓子作りは意図しかないが、料理は(いろいろグラデイションはあるにせよ)もっと雑である。それは本質的に生活に属するものである。
あとCloudflareもいじっていた。とりあえずキャッシュをとるコードを書いてはみたものの、今のところ正しく動いていない。ヒットしない。ググって出てきたのと同じようにやっているつもりなのだが、なぜだ?
寝る。明日は絶妙な時間に頭痛外来に行く。だからまあ一度出勤してからかな。