コーディングAIに頼りすぎて絶望してる?それってスキル不足なのか、時代の変化なのか
Ask HN: I hate coding agents. Is this skill issue?
Ask HN: I hate coding agents. Is this skill issue?
俺の経験から言っても、AIを使うのは自分でコードを書くのとは全く別物だな。
ツールの良し悪しは使い方次第で、最悪なのは中身を読まずにエージェントを走らせてそのままコミットしちゃうパターン。すごく小さなプロジェクトならこれでも上手くいくことは多いけどね。
大規模なプロジェクトなら、適切なアーキテクチャを採用してそれを強制すること、そしてプルリクの中身をちゃんと確認することが必須だ。「LGTM」って言って即承認なんて論外。プロジェクトを境界が明確なコンポーネントにどう分けるか、LLMのコミットがその境界外に変な依存関係を持ち込んでいないか、ユニットテストが壊れやすくなっていないか、このあたりを注意すれば十分実用的だよ。
https://www.youtube.com/watch?v=grPtnrOTP_4
「コミットをちゃんと読む」ことさえ徹底すれば、挙げていたポイント2/3はカバーできるはず。まあ感じ方は人それぞれ(YMMV)だけどな。おかげでLLMがやらかしたミス(2割?1割?)もほぼ即座に見抜けるようになったよ、全部とは言わないけど。
あと、深い集中状態に入るのは今も変わらない。むしろ問題なのは中毒性が高すぎて、休憩せずに延々と作業したくなることかな。こんな感覚、20年以上前に個人プロジェクトに没頭して結局何も形にならなかった時以来だ。
そうは思わないな。AIとコードを書くときって、ドキュメント作成とコード作成という二つの仕事を同時にやらされている気分になるんだよね。技術的には表裏一体とはいえ、やっててすごくフラストレーションが溜まる。
それに、設計ドキュメントをどれだけ完璧にしても、AIはそこに書かれていないビジネスコンテキストまでは理解できない。それにAIってすぐにその場しのぎのパッチを当てたがるから、コードを綺麗に保つのが本当に難しい。設計ロジックがどんどん散らかって、結局論理的な一貫性が失われていくんだよ。
今のところの対策としては、事前に詳細なアーキテクチャや設計原則を提示して、各ファイルの先頭にスコープを定義するコメントを書き込むようにしてる。これで少しはマシになった。
でも一番頭が痛いのは、AIが最新のAPIになかなか適応してくれないことかな。せっかく更新したAPIを、わざわざ古い、非推奨の書き方に書き戻したがるんだから。
同じく、あれは苦痛だわ。実際、エージェント型のコーディングは生産性を下げると思う。自分はLLMを「昔ながらのやり方」、つまりウェブチャットで検索したり質問したりするスタイルで使ってる。コード自体は手書き。これだけで前より2〜3倍は生産性が上がったよ(エージェントを使えば5〜10倍いけるかもしれないけど、代償を払う価値があるとは思えない)。
じゃあエージェント使わなきゃいいんじゃないの?誰も無理やり強制なんてしてないだろ?
コーディングエージェントは、9時から5時まで働いて「ただの仕事」として割り切るタイプのエンジニアには最高だよ。とりあえず素早く動くものさえ作れば、経営陣は満足するんだから。
特定の言語に精通していて、コードを爆速でレビューできるエキスパートにとっても強力だね。
でもそれ以外の層にとっては、複数のファイルがいきなり書き換わったり、何百行ものコードが生成されたりと、不安が増えるだけかも。
結局のところ、時間をかけて丁寧にやるか、それともAIに頼って(いわゆるvibe coding)、後で致命的なバグが起きないことを祈るかという選択なんだよ。
大半のエンジニアは他の従業員と一緒で、給料をもらうために働いていて、早く成果を出せというプレッシャーに晒されている。だから、5時に退社して趣味の時間に没頭するためにエージェントを使っているんだと思うよ。
設計にもっと投資してみたらどう?そうすれば自分が何を作っているのかという当事者意識を持てるし、決定権もすべて自分でコントロールできるはず。AIにすべての問題を解決させるべきじゃないよ。