r/claudeAI🔥 318
💬 85

【要注意】Claudeにコードを任せすぎると痛い目に!?25万行のSaaSアプリ開発でハマった落とし穴

Candid-Remote2395
24日前

ディスカッション (83件)

0
Candid-Remote2395OP🔥 318
24日前

Claudeを使って20万行超えのSaaSアプリを開発中だけど、テストとデバッグがマジで大変!Claudeの謎すぎる判断に振り回されてるわ。

  • 存在しないデータベースのパスを勝手に作り出すし。
  • ほぼ同じ機能のコンポーネントを10個以上も量産するし(共通コンポーネント作ってくれよ…)。
  • 無限ループを作り出して、GCPの呼び出し回数を10,000%も爆上げしてくれた(寝る前に気づいてマジ助かった)。
  • データベースのレコードがないのを、常に更新じゃなくてUpsert(存在しなければ新規作成)でごまかすし。

Claudeが優秀すぎて、最近チェックを怠けてたのが原因でもあるんだけどね。でも、Claudeを使うのは大好きだよ。生産性が爆上がりするマジ最高のツールだもん。

参考までに、Claudeが書いたコードの量:

バックエンド (functions/ - .ts ファイル): 137,965 行

ワークフロー (functions/workflows/ - .yaml ファイル): 8,212 行

フロントエンド (src/ - .ts + .tsx ファイル): 108,335 行

合計: 254,512 行

1
HotSince78
👍4124日前

マジでイカれてるって。

2
Fit-Palpitation-7427
👍2724日前

cascade simplify skill 使ってみて。

6
Pyropiro
👍124日前

これどうやったら動くのか教えて! Readmeの説明が全然足りないんだよね。プロジェクトのルートフォルダに貼り付けて、claudeを実行すればいいの?

7
flatlander_
👍124日前

Claudeに聞いてみたら?笑

8
devAdminhu
24日前

マジだ、さっき13個のミニコンポーネントのカードの分解を頼んだら、各コンポーネントがshadcnのカードそのものだったwww

9
crushed_feathers92
👍2124日前

どこかにコンテキストの問題があって、劣化が始まると止まらなくなる気がする。

10
flexrc
👍324日前

まさにそれが問題なんだよね。

11
ElwinLewis
👍224日前

100,000%同意!

オートコンプリートに任せっきりだと、どんどんスコープが狭まっていくみたいだし、最初の要求をありえない方向に幻視して実装してくる感じ。

12
SilentEchoes
👍124日前

ツールの使い方を理解してないか、気にしてないからコンテキストがおかしくなるんだよ。

サブエージェントとか、チェックイン、PRD(製品要求仕様書)、コンテキスト管理とか、全然やってなさそうな感じがする。もしやってたらごめん。

これって、社内の人に外注したり、ジュニアチームに丸投げするのと大差ないと思う。

サイドプロジェクトなら最高じゃん。でも、25万行のコードは絶対に少量じゃない。俺はそれ以下のコード量で、製品3つくらい作ってリリースしてる。

今週プロトタイプを作る必要があって、面白半分でコードを一行も書かないことにしたんだ。

それでも、スペック集めたり、PRD作ったり、実行計画立てたり、必要なスキル書き出したり、モックアップから擬似コード書いたり、swarm(群)とオーケストレーターにスペック追加させたり、ベストプラクティス文書をマージさせたりして、2日間費やしたよ。

ワンショットでうまくいく人もいるみたいだけど、大規模なやつはまだ見たことないし、そうあるべきだとも思わない。

13
Illustrious-Film4018🔥 267
24日前

だよね、人が運転してない時の想定される結果だわ。

14
-_1_2_3_-🔥 113
24日前

設計するんじゃなくて、ノリでコーディングした結果だよね。

Claudeを賢い自動タイピストとして扱うだけなら、そうはならないはず。

15
Candid-Remote2395
24日前

多分、バイブスって言葉の使い方が間違ってるかも。アーキテクチャ設計、データベース設計、ワークフローとかは全部自分でやってるんだ。Claudeは、僕がすでに計画した関数とページのコードを書いてくれるだけ。

16
-_1_2_3_-👍 76
24日前

同じことをするコンポーネントを10個も作らせたってことは、ちょっと制御を失ってるんじゃない?

そういう問題が全くないとは言わないけど、コンテキストを管理して、必要なときに何が存在するかを意識させることが、こういう問題を避けるための方法の一つだし、十分に避けられるはずだよ。

個人的には、フォールバックを追加したがるのがマジで嫌で、CLAUDE.mdでそれを避けるようにかなり明示的に書く必要があった。

17
eist5579
👍924日前

マジか、フォールバック処理。不要な冗長性のレイヤーが…エグい。

20
True-Surprise1222
👍324日前

全部自動でやらせちゃダメ。一つ書かせたら、それを単一のコンテキストウィンドウで完結させるようにする。普段使ってるコードスタイルや好みをドキュメントに残して、それを参照させる。さらに、機能の計画を立てる前に、全体的なアーキテクチャガイドも参照させる。疲れてても、ざっと目を通して、ヤバいことになってないか確認する。おかしくなってるときは、大体すぐわかるし、コードベースがあれば、ベストプラクティスから逸脱してないかすぐに確認できるものがあるはず。

21
Future_Self_9638
👍324日前

こういうことにならないように、コードは定期的にレビューする必要があるよ。

22
VarioResearchx
👍224日前

プロセスを体系化(標準化)するために何をしてるの?スコープ管理はどうしてるの?

23
oneshotmind
👍124日前

設計とかやってたんなら、なんでこんなことになったんだ?ファイルがおかしいって気づいた時点で、なんで止めなかったんだよ。結局、ざっくりとしたアイデアだけ伝えて、あとは丸投げしたんだろ。LLMはそういうもんだって。

24
tindalos
👍124日前

それって自慢になってないよ。スペック駆動開発を調べてみたら? openspecみたいなのを使えば、コア設計ドキュメントに基づいて一貫性のあるタスクを事前に計画できるよ。

25
MissingBothCufflinks
👍124日前

じゃあ、なんで同じことをするコンポーネントを10個も作っちゃったの? 設計者(あんた?)が、柔軟なコンポーネントを1つ作るように指示すべきだったんじゃないの?

26
haywire
👍124日前

それなのに、スレ主はとんでもない悪夢を生み出すのを許してるみたいじゃん。

27
ItsASolidMaybe
👍724日前

それな。コーディング ≠ エンジニアリング。Claudeはコードを吐き出すことはできるけどね。

28
micupa👍 65
24日前

たくさんのエージェントにたくさんのアプリを作らせてみたけど、結局、教師なしのノリだけのコーディングは役立たずだって気づいた。

29
flexrc
👍1024日前

そうそう、AIは真の知能じゃないけど、すごいツールだよね。正しく使えばすごく良いコードを生成できるけど、チェックせずに放置するとマジでヤバいことになる。

30
ghost_operative
👍524日前

IDEが変数名を補完するときに、毎回一番最初の候補を選んで、他の候補を見たり、自分で変数名を入力する必要があるかどうかを判断したりしないのと同じ。

なんでそれでうまくいくと思うのか理解できない。

31
thanksforcomingout
24日前

だって、そうなんだもん。下手くそで、クソで、怪しくて、混沌としてて、無謀で、安全じゃないけど、750万円もかからないし、数日で動くんだもん。

32
scousi
👍824日前

週末は調子悪かったみたい。

33
Woof-Good_Doggo
👍924日前

Claudeはクールだけど、マジでアホなことやらかすこともある。

コーディング規約を書いて、ちゃんと守ってるか監視しないといけないってわかった。最近知ったんだけど(信じられるかわからないけどChatGPTに聞いた)、Claudeはアルゴリズムの鮮度バイアスが強いらしくて、セッションの最初に決めたガイドラインからズレていくのはそれが原因らしい。

34
spacecam
👍724日前

そうそう、新機能が終わるたびに、使ってないコードを整理するようにClaudeに指示してるよ。大規模なコードのリファクタリングも、かなり手取り足取り教えないとダメだけどね。

35
BidWestern1056
👍124日前

だから使えないんだよね。全部追いかけるのが面倒すぎる。

36
superman0123
👍524日前

新しいチャットとか、コンテキストがなくなっちゃった時に、アホなことばっかりやるんだよね。この辺のブレイクスルーに期待してる。

37
Daadian99
👍924日前

これ、マジそれな。コンテキストウィンドウがパンパンになって、あの嫌な自動圧縮が表示される頃には、Claudeはマジ最強。コードベース全体を知ってて、何もかも最高。でも自動圧縮でロボトミー手術されちゃって、調子を取り戻すのに時間がかかるんだよね。まるで15分ごとに新しいインターンが来て、前のインターンが残したメモしか知らないみたいな感じ。

38
maskry
👍224日前

その解決策の一つは、自動コンパクトを無効にして、Claude Codeに与えるコンテキストを極めて明確にすることだ。コンテキストの利用可能性に対して、常に優先順位を管理しろ。もしコンテキストが不足しそうなら、次のセッションのハンドオフドキュメントを準備させるべきだ。そうすれば、最大許容閾値の90%とかに達することを心配する必要はなくなる。

39
Leading-Language4664
👍424日前

AWSとGoogleは、このノリノリコーディングブームが大好きだろうね。

40
PigOfFire
24日前

笑。おもちゃプログラム作るのに、おもちゃ使ってるんだね。

41
keithslater
👍124日前

マジで全部手動でレビューする必要があるよ。早めに気づけば、後で痛い目見なくて済む。どっちにしろ、作業中か完了後かにレビューする時間が必要になるけどね。

42
71acme
👍124日前

マジか。

43
asaurat
👍524日前

100行のBashスクリプトですら、Claudeのコードを焦げ付かないように牛乳を見張るみたいに見張ってないとダメなんだよね。すぐにおかしくなるから。

20万行のコードでできたアプリがどうなるかなんて想像もできない。ハッカー天国になるんじゃない? 楽しんでるならいいけど、実際のお客さん相手にお金扱うのはちょっと危険な気がする。

Claudeは、スコープ全体を理解して、主要な機能がどう実装されたかを覚えてるのかな?

44
Candid-Remote2395
👍224日前

実際はかなりタイトにやってるよ。ただ、AI以前の開発経験が豊富にあるからね。Claudeは絶対に全てを覚えていられない。それが一番の問題。コードベースが成長するにつれて、コードの一部がどのように書かれたかを忘れて、勝手に作り上げたり、コード内の既存の規約に従わずに全く新しい実装を考え出したりする。

45
dspencer2015
👍224日前

みんな、mainにプッシュする前にコードレビューしないの? 僕はいつもエージェントが作業してる時にコードレビューしてるし、変更を自動承認することなんてほとんどないよ。エージェントが大量の技術的負債を抱えてることに気づかずに、どうしたら20万行のコードにまで到達できるのか理解できない。それに、エージェントが作業してる時に、何が改善できるか、書き直せるか、単純化できるか、テストのギャップはどこにあるかを監査するべきだよ。

46
Daadian99
👍824日前

彼がコーディングしている間、指をエスケープキーの上に置いて、止める準備をしながら見張ってなきゃダメだよ。:)

47
joeldg
👍824日前

マジか… いや、違うな… アプリ全体をAPIに単純化するのを手伝わせて、フレームワークファイルを使って自分のやり方で一つずつやって、テストも作らせて、Swaggerドキュメントも用意させて… それぞれ小さくてシンプルなことをやらせるんだ。そして、それらができたら、Swaggerドキュメントを使ってAPIを使うようにアプリを構築する。コツはシンプルで小さく、フルコードカバレッジでテストされたAPIにすること。

48
photoshoptho
👍724日前

もしバイブスコーダーが、Claudeがどれだけバイブスコーディングしたかを自慢してるようなら、そのアプリはマジで詰んでる。

49
Longjumping_Area_944
👍124日前

同じ機能をリビルドするのは、コンテキストウィンドウが限られてて、長期的な記憶がないから全体像を見失うんだよね。だからこそ、人間の頑張りが必要なんだ。アーキテクチャの明確なドキュメントを用意して、毎回ちゃんと計画を立てて使うようにしないと。

50
Eleazyair
👍324日前

ちゃんとチェックして修正しながら進めなかったの?バカなの?最初からやり直した方がマシじゃん。あんたのせいだよ。

51
themoregames
👍124日前

もう一回、プロダクション環境で使えるコードにしてみようか...

52
davewolfs
👍424日前

ゴミを入れたらゴミが出てくる。悪いのは、仕様書を書いた人とコードをレビューした人だけ。

53
makeSenseOfTheWorld
👍124日前

良い仕様、アーキテクチャの計画、コーディング規約の基本ルール、そして継続的な監視はすべて役立つけど、仕様が「不正行為を避ける...DBの更新がうまくいかない場合は、ハックする...」ではないよね。

もしそんなことするDRエンジニアがいたら、クビにするよ。「そんな風に考える」ってのは、パフォーマンスレビューじゃどうにもならない根深いメンタルの問題を示してるから...だからこそ、一体どんな学習データがそんな行動を促したのか疑問に思うんだよね...

実際そういうことってあるんだよ。DOMセレクタで.parent.parent.parent.parent.parentを見つけたことがあるし...

54
Sufficient-Pause9765
👍124日前

Claudeは従来のSDLCの代わりにはならない。

PRD(製品要求仕様書)、アーキテクチャドキュメント、テストは必須。Claudeに「Xを作って」って言うときは、必ず再現するためのサンプルパターンと、従うべきコーディング規約を与えないと。

それでも、きれいに保つためには頻繁に整理/編集する必要がある。

LLM同士を戦わせるのもアリ。ChatGPTにClaudeのPR(プルリクエスト)のコードレビューをさせるのも、自分でレビューするのに加えて効果的。

56
thedotmack
👍124日前

Claude-mem試してみて。何やってるかをちゃんと覚えてるし、自動でやってくれるから。

57
IndianaNetworkAdmin
👍124日前

俺も似たようなことしてる。Claudeは、最初にちゃんと設計して、自己完結型の関数やコンポーネントを作るように指示すると、マジで良い感じになる。

58
switz213
👍324日前

過去10年間、ソフトウェアビジネスを構築してきた。ここ1年くらいまでは、全部手書きのコードだった。

だいたい9万から11万行くらいの実コード。全部新しいコードなら20万行はマジでヤバい。絶対に持たない。

59
ragnhildensteiner
24日前

同じような機能を果たす異なるコンポーネントを10個以上構築するのではなく、単一の共有コンポーネントを作成する

失礼な言い方をするつもりはないけど、それはCCの問題じゃなくて、あんたの問題だよ。俺はそんな問題に遭遇したことない。

適切にフック、ルール、構造を設定すれば、そんなことは絶対に起こらないはず。

60
TrikkyMakk
👍124日前

コーディング支援ツールを使うってことは、開発者の帽子をベビーシッターの帽子と交換するようなもんだ。

61
synap5e
👍124日前

Claudeは放っておくとマジで暴走するってことを早々に学んだよ。Claudeは、本当に良いコードを思いつくことができる一方で、ひどく酷い失敗をすることもあるから、本当に驚かされる。

62
YaOldPalWilbur
👍224日前

ふーっ!! 13万8千行のコードか。 .taファイルに400行のコードがあるアプリを持ってるから心配してたんだ。もう全然悪くない気分だわ(笑)。何も付け加えることはないけど、頑張って!

63
w00dy1981
👍124日前

マジで謎。世界最高のコーディングエージェントって触れ込みなのに、コードベースがあっという間に破綻してゴミみたいなの追加しまくるの、どうなってんの?

Claudeにコーディングさせるなら、システムプロンプトでDRY原則守って、同じようなコードを何度も違うファイルに書く前に、まず同じものが存在するかチェックさせるべきじゃね?

エージェント的なコーディングを売りにするなら、せめてある程度の基準は持っててほしいわ。

64
aeeravsar
👍224日前

考えるのはお前で、コーディングはClaudeに任せるって話だろ。AIコーディングは時間短縮には最高だけど、放置して好き勝手やらせていいってわけじゃない。Claudeに考えさせるなら、せめて手動で承認しろよ。

65
Few-Original-1397
👍124日前

Claudeと密接に連携すればするほど、結果は良くなる。正確な計画と仕様書を作成し、それらをスプリントに分割されたSPEC開発セッションに最適化するためにClaudeを使用する。開発中のものを理解させるために、アイデア出しの段階からClaudeを参加させよう。

66
kraanie
👍224日前

問題はClaudeじゃない。お前がアーキテクトだろ。

67
HearMeOut-13
👍124日前

Anthropicが、サイレントなコンテキスト圧縮でClaudeをクソ化させてることを指摘しないからこうなるんだよ。コンテキストの半分が失われたら、そりゃ適当なこと言い出すだろ。なのに、Anthroshitは自信を持つように言い続けてる。

68
No_Individual_6528
👍124日前

笑える。機能を追加するたびにリファクタリングさせて、一貫性を保つようにするな。

69
No_Firefighter_2795
👍124日前

Claudeとサブエージェントを使ってアプリを作ってるんだけど、正直、かなりいい感じだよ。大事なのは、実装を始める前にちゃんと計画を立てること。徹底的に調べて、Claudeと一緒に実装方法を見直したんだ。で、MVPのためにフェーズ分け(全部で8つ)して、Claudeにコード書いてもらいながら、コンポーネントやロジックブロックを一つ一つレビューしてる。たまに変なことするけど、そこは俺の出番。

70
Capaj
👍124日前

テストだよ。テストはコードよりも重要。昔からそうだったけど、LLMの登場で重要度が10倍になった。

71
kuaythrone
👍224日前

静的解析ツールを使えば、こういった問題をたくさん見つけられると思うよ。これってAIに限った話じゃなくて、開発者は昔から同じようなミスをしてるから、自動化でチェックしてるんだ。

72
xzvasdfqwras
👍224日前

コードレビューを学べよ。それとも、AIが出力してる内容が全然理解できないのか?

73
Star_Pilgrim
👍124日前

そもそも、コードレビューを自分でやらなきゃいけないなら、これらのツールを使う意味って何?
コードレビューエージェントとか、他の重要なエージェントを使えばいいじゃん。

74
Jayden_Ha
👍124日前

自分で計画しろよ。

75
hanoian
👍124日前

数日前に1ヶ月間の5倍速無料トライアルくれたからまた試してみたんだけど、マジでCodexに比べてガバガバすぎて、ちょっと使ってみたコードの部分ですぐに信用なくしたわ。

MCP Playwrightにつないで、サイトのエンドツーエンドテストを大量に作らせるくらいかな。もう二度と使わないって言ったのに、ちょっと使ってみたらすぐにコードベースで使うの信用できなくなった。

76
siglosi
👍124日前

モンスター級のコードベースか。それで世界を良くするの?

77
Candid-Remote2395
👍124日前

小説家向けの創作プラットフォームだよ(プログラミングIDEの書籍版みたいな)。登場人物やプロットを本全体で自動的に追跡してくれる。組み込みの執筆アシスタントインターフェース(Copilotみたいな)があって、作品を直接編集するように依頼できる。矛盾点、未完のプロット、ペース配分の問題などを探して、基本的には編集者のように機能する。

現実世界を良くすることは多分ないけど、君の作り出す架空の世界には役立つかもね。

78
thepasen
👍124日前

せめて、1000個の役に立たないMarkdownドキュメントと0個のコードを生成しなかっただけマシか。

79
DiabolicalFrolic
👍124日前

もしコーディングできないなら、学べばいい。

もしできるなら、もっと時間をかけて開発しろ。ダブルチェックもせずに、何が書かれているのか理解せずにノリでコーディングするのはマジでヤバいし、フランケンシュタインみたいな代物になるぞ。最悪の場合、性能はクソ悪いし、拡張性もスケーラビリティもない。

Claudeはマジですごいけど、そのコードには注意深く、知識のある目が必要だ。めちゃくちゃな判断を何度も見てきた。

80
ThatLocalPondGuy
👍124日前

ガードレール、品質ゲート、そして人間のチェックが必要なんだ。お前は、ピカピカの鎧(ClaudeのコーディングスキルとMCP)を着て、最強の馬に乗って戦場に行こうとしてる。一番輝かしい戦闘スーツ($$)を買って、地球上で一番速い馬にまたがったのに、鞍に鐙(あぶみ)がないまま戦場に乗り込んだんだ。

案の定、馬から叩き落とされて、残りの戦いを手で戦う羽目になったんだ。

BraveOnはデジタル鐙を作ったんだよ。

81
makeSenseOfTheWorld
👍124日前

一体どんなトレーニングデータが、あんなハックのインスピレーションになってるのか不思議だよね...

slackers_dot_comとか、rogues_dot_comとか、howtogetaheadinconsultancy_dot_comとか、全部スクレイピングしたんじゃないかってくらい...

82
i-am-a-cat-6
👍124日前

正直言って、エンジニア100人雇ったのと大差ないんじゃない?😅