Mastodon Feed: Post

Mastodon Feed

Boosted by baldur@toot.cafe ("Baldur Bjarnason"):
jonny@neuromatch.social ("jonny (good kind)") wrote:

man what is going on.

[conversation thread between tuban__muzuru (t for short) and me] t: Well, what can you expect from a code vending machine anyway. I've been writing with Claude for a year.  See, n00bs ask for code.  Pros ask for spec.   I've been coding for 40 years now and Claude writes great Rust and C t: Show me the spec you gave Claude to write this menu. me: Bro before you try going down the skill issue route, fucking anthropic wrote this menu and this is the Claude code source. t: After all that work defining EFFORT_LEVELS as the single source of truth, this function just... writes them out again. The includeMax branching is the tell — whoever wrote this didn't think to reach for EFFORT_LEVELS.slice(0, -1) vs EFFORT_LEVELS. const levels = EFFORT_LEVELS.slice(0, includeMax ? undefined : -1);
me: Yeah! It sucks really bad! Anthropic must really suck at using Claude code to write Claude code and they should have just written more markdown files that tell it to write better code! t: Say there, little buddy - you're sposta write the spec.  But I use Claude to hammer our my spec before I do things.  You should, too. t: Here's why you need the training, not the LLM:   this is no different than riding a big horse.   Data first, talk to the LLM about your data and your users and their needs and what the work you're doing is trying to solve. Then you start writing spec.   The LLM will restart each time, like fucking Groundhog Day.  You will have to lead this new instance to your decisions/ and tell it to read everything. That is the ONLY WAY TO DO THIS. me: Man what part of THIS IS THE CLAUDE CODE SOURCE CODE AND IT WAS WRITTEN BY ANTHROPIC is not getting through here
t: Stop yelling.  You fucked up and left some dead code and had the temerity to paste it in here me: Man. This is not my code. This is anthropic's code. This is the source code of Claude code. How many different ways can I say this. t: You asked for the code.  In two passes. It also explains why the crack is so localized. If the values were scattered everywhere you'd be looking at the "fractally bad" scenario. Instead it's one function that predates the abstraction.  That's a totally normal and forgivable state for a codebase to be in — it just needs a one-line cleanup and ideally a lint rule or PR comment culture of "if you touch EffortLevel, check for strays." me: I did not ask for anything. this is the source code for Claude code. this code was written by anthropic. i am reading their code. I did not write this code. Anthropic wrote this code. This is the source code for the Claude code tool. This is the Claude code source code. This is not my code. I did not write this code.