引っ越しかと思ったら実は建て替えだった件について
2025年04月01日
中間チェック
思ってたよりブログの状況はもっとクソだった。
最初は、今あるHTMLベースのフロントをNext.jsに変えるだけのシンプルな移行作業だと思ってたけど──
全然そんな甘いもんじゃなかった。
RESTful API
Cursor IDEが「リファクタリング得意です!」って言うから、最初は全部任せてみた。
でも、モジュール構成が思ったより細かすぎたのか、Cursorの理解力じゃキャパオーバーだったらしい。
エンドポイントを直してって頼んだのに、関係ないとこを触り始めたので、「あ、もういいや」ってなって自分で直すことにした。

で、ここでもう一つ気づいたことがある。
FastAPIにはデフォルトでSwaggerがついてるんだけど、これまでずっとHTMLでテンプレ組んで、手動で目視確認しながら機能を試してた。
それがさ、GET/POSTしか使ってなかった頃は別に問題なかったんだけど、
最近になってDELETEとかPATCHとか、ちゃんとRESTfulに直そうとし始めたら──
HTMLじゃそのメソッド使えないやんけ、ってことに今さら気づいた。
じゃあ、どうすりゃいいの?
どうもしねぇよ……Swaggerで一個ずつ叩くしかないだろ。
ってことで久々に /docs にアクセスして、機能を一個ずつ手動でテスト。
その中でさらに分かったのが、本番環境のcliche.lifeの /docs が完全に無防備だったってこと。
これはさすがにヤバいでしょってことで、ホスト側の設定でアクセス制限かけといた。
Next.js
もともとは「少しずつ、順番に移行していけばいいや」って思ってたんだけど、
上のHTMLがDELETEとか使えない件もあって、どうせ本番に持ってくなら
最初からNext.jsにフルで移植してからデプロイした方がコスパ良いなって判断。
で、またCursorに頼んでフロント側を一緒に作ってみた。
……結果、想像以上にクオリティが低かった。
今のHTMLページと比べて、UIもUXも何が良くなったのかよく分からないレベルの「横並び」。
なので、今度はCursorじゃなくてWindsurfを試してみた。
Cursorの作品
Windsurfは意外とコンテキストの把握力が高くて、フロントだけ見ればCursorよりも明らかに優れてた。
でも、「見た目だけ」良い感じで、FastAPIとの接続部分はマジでポンコツレベル。
結局その部分はCursorに戻って手伝ってもらう羽目になった。
Windsurfの作品
このへんがちょっと気になって調べてみたら、
どっち使う時もモデルは同じClaudeのSonnet 3.7なんだけど、
多分プロンプト設計とか、目指してる方向性が違うんだろうなと思った。
それぞれの会社が別の思想で学習させてるんだろう。
Threadで見たWindsurfのプロンプト。人間ってマジで残酷だな…。
結論
RESTful APIの話だけじゃなくて、他にも地味に気になってたバグがいくつかあった。
今のこの作業を進めていく中で、見た目だけキレイにするんじゃなくて、
ちゃんと「使える」ものにするための修正をしようと思ってる。
見た目(シェル)を移す作業自体はもうほぼ終わってるんだけど、
コードを自分の手で触ってみると、思ったより技術的負債が多くてビビる。
どんなにAIでカッコつけたフロント作っても、
それを将来メンテするのは俺なんだから、
ちょっとNext.jsも触って、奥に隠れてる負債も潰してからプロダクションに出そうと思ってる。
最近はコーディングテスト+アルゴリズムの勉強も並行してて、
「1〜2週間くらいでリファクタ終わるっしょ!」って思ってたけど、
いや、これはもうちょっと時間かけて、未来の俺がまた地獄見ないように仕上げた方がいい気がしてる。
💬 今日の名言
人生のTips
HTMLなんかで済ませようとするなら、
RESTfulなんてクソ食らえって言ってやれ。
─ あるブログ開発者の絶叫より
カカオ
グーグル
ネイバー