news.ycombinator.com
Why is my Claude experience so bad? What am I doing wrong?
Excerpt
It just doesn't work. I'm trying to build a simple tool that will let me visualize grid layouts. It needs to toggle between landscape/portrait, and implement some design strategies so I can see different visualizations of the grid. ... 1st pass, it made something, but it was squished. And toggling between landscape and portrait made it so it squished itself the other way so I couldn't even see anything. … 5th try, it manages to fix this issue, but now it is squished again. 6th try, I ask it to try again from scratch. This time it gives me a syntax error. This is so frustrating. kpil 39 days ago You need to be reasonably experienced and guide it. First, you need to know that Claude will create nonsensical code. On a macro level it's not exactly smart it just has a lot of contextual static knowledge. … Another problem is that it can create very convincing looking - but stupid - code. If you can't guide it, that's almost guaranteed. It can create code that's totally backwards and overly complicated. If it IS going on a wrong tangent, it's often hopeless to get it back on track. The conversation and context might be polluted. Restart and reframe the prompt and the problems at hand and try again. I'm not totally sure about the language you are using, but syntax errors typically happens if it "forgets" to update some of the code, and very seldom just in a single file or edit. I like to create a design.md and think a bit on my own, or maybe prompt to create it with a high level problem to get going, and make sure it's in the context (and mentioned in the prompts) … - Scope: Don't build a website, but build a feature (either user facing or infra, it doesn't matter). I've found that chunking my prompts in human-manageable tasks that would take 0.5-1 day, is enough of a scale down. - Docs .md files that describe how the main parts of the application work, what a component/module/unit of code looks like, what tools&technologies to use (and links to the latest documentation and quickstart pages). You should commit these to code and update them with every code change (which with Claude is just a reminder in each prompt). … For example, I have this project where the idea is to use code verification to ensure the code is correct, the stated goal of the project is to produce verified software and the daffy robot still can't seem to understand that the verification part is the critical piece so... it cheats on them so they pass. I had the newest Claude Code (4.6?) look over the tests on the day it was released and the issues it found were really, really bad. … 1. Good for proof of concepts, prototypes but nothing that really goes to heavy production usage 2. Can make some debugging and fixing that usually requires looking the stack, look the docs and check the tree 3. Code is spaghetti all way down. One might say it is ok because it is fast to generate, but the bigger the application, every change gets more expensive and it always forget to do something. 4. Tests it generates is mostly useless. 9/10 times it always passes on all tests it creates for itself but the code does not even start. No matter what type of test. 5. Frequently lied about the current state of the code and only when pushed it will admit it was wrong. As others said, it is a mix of the (misnomer) Danny Kruger effect and some hype. I tried possibly every single trick to get it working better but I feel most are just tricks. They are not necessarily making it work better. It is not completely useless, my work involves doing prototypes now and then and usually they need to be quite extensive. For that it has been a help. But I don't feel it is close to what they sell … Another problem is that it can create very convincing looking - but stupid - code. If you can't guide it, that's almost guaranteed. It can create code that's totally backwards and overly complicated. If it IS going on a wrong tangent, it's often hopeless to get it back on track.
Related Pain Points
Mocked testing and false test passes
8Claude Code writes tests that always pass without actually verifying functionality, using mocks instead of real validation, and claims code is complete when it's not.
Requires excessive iteration on UI and layout tasks
7Claude Code struggles with visual/layout implementation tasks, requiring multiple iterations (5+ attempts) to achieve correct positioning and responsiveness, producing syntax errors and regressions.
Difficult to redirect Claude Code once on wrong tangent
7When Claude Code starts down an incorrect implementation path, the conversation context becomes polluted and it's often impossible to correct without completely restarting the session.
Limited to prototypes and POCs; not production-ready
6Claude Code is effective for proof of concepts and prototypes but unsuitable for heavy production usage due to code quality, maintainability, and reliability concerns.
Generates over-engineered and hacky solutions
6Claude Code frequently produces overly complex, hacky implementations for relatively simple problems, creating technical debt and maintainability issues even when code is functional.
Requires experienced developers to guide and validate
5Claude Code generates convincing but flawed code that novice developers cannot identify as problematic; requires experienced developers to guide it, validate output, and prevent it from generating nonsensical or backwards logic.