Claude Code's DX is too good. And that's a problem
Posted by lnbharath 1 day ago
Comments
Comment by pico303 1 day ago
Just this past week I asked Claude for some help with C++ and a library I was somewhat unfamiliar with. What it produced looked great—-if you didn’t know C++ very well. It turned out Claude knew even less about this library than I did, generating tons of code that was completely incorrect. I eventually solve my problem through research and trial and error, and it was nothing like what Claude recommended. It certainly didn’t leave me feeling confident enough to let the LLM have the level of control over my computer or project that the author is allowing it in the article.
I’m not looking forward to a future spending all my time cleaning up the messes LLM’s create.
Comment by forgotpwd16 1 day ago
Maybe this is a case well represented by the bell curve meme? "AI is great; can do everything" (but you've no domain knowledge so cannot guide it and everything means autonomous creation, so when eventually reaches a roadblock will have no idea what to do), "AI is really good until you know what you’re talking about" (then seemingly doesn't work and is even counterproductive), "AI is great; can do everything" (you've domain knowledge and can guide it and everything means application and assistance).
Essentially rather hope for the LLM to create all by itself as seems to be the current case for many, you should be able utilize your knowledge and have it assist you to both generate an initial code and converge it to where you want.
Comment by christophilus 1 day ago
It’s very good at Typescript, search, and research, but still does stupid stuff and requires review and steering.
I don’t get into the same flow while using it, either, but I think that might be a matter of time. I find it allows me to spend more of my time thinking at a higher level. I could see myself learning to really enjoy that. Code review is exhausting, though, and has always been my least favorite aspect of the job. It seems my future is going to be code-review-heavy, and that is probably the biggest drawback.
Comment by cgearhart 1 day ago
I know approximately nothing about approximately everything. Claude seems pretty good at those things. But in every case I’ve used Claude Code for something I do know about it’s been unsatisfactory as a solo operator. It’s not useless, but it is basically useless for anything serious unless you’re very actively guiding it.
I think it has a lot of potential value and will become more useful over time, but it’ll be most useful when we can confidently understand the limitations.
Comment by christophilus 1 day ago
Comment by skydhash 1 day ago
Comment by lnbharath 1 day ago
Comment by chrisandchris 1 day ago
I miss the days where deploying an app was just uploading some files. Maybe we need AI to understand this artificial complexity we introduced ourselves?
Comment by pico303 1 day ago
Comment by koolba 1 day ago
> In another instance, a GitHub workflow was failing. Claude asked if it could SSH into my Hetzner instance to investigate. I said yes. It connected, looked up the config, restarted the Docker instances causing issues, and renewed some certificates as a hygiene step - which I never asked it to do.
This type of thing scares the crap out of me and I’m flabbergasted that anyone wold give an LLM unrestricted shell access to a server.
Comment by jabedude 1 day ago
Comment by candiddevmike 1 day ago
The maintenance costs here are going to be eye watering.
Comment by codegladiator 1 day ago
Who keeps forgetting variable names and function calling conventions it used 4 seconds ago while using 136 GBs of ram for the cli causing you to frequently force quit the whole terminal. Its not even human level.
Comment by philipp-gayret 1 day ago
Comment by tomashubelbauer 1 day ago
Comment by Trasmatta 1 day ago
Comment by exe34 1 day ago
Comment by codegladiator 1 day ago
Comment by exe34 1 day ago
Comment by codegladiator 22 hours ago
edit: https://ibb.co/Fbn8Q3pb
that's the 6th
Comment by lostmsu 5 hours ago
Comment by codegladiator 4 hours ago
Comment by exe34 1 hour ago
I've mostly just been using it for single features and then often just quitting it until I have the next dumb idea to try out.
Comment by insane_dreamer 1 day ago
Just one example of many personal experiences.
It is helpful, and very very fast at looking things up, sifting through logs and documentation to figure out a bug, writing ad-hoc scripts, researching solutions; but definitely junior-level when it comes to reasoning, you really have to keep your thinking cap on and guide it.
Comment by charlesabarnes 1 day ago
Comment by Workaccount2 1 day ago
Most iOS users report that Android is a disaster of an operating system, with layers and layers of user frustration. In reality, they actually are just totally in tune with how iOS does stuff. I can only imagine we have something similar going on here.
Comment by fluidcruft 1 day ago
Comment by Rikudou 1 day ago
* calling it a god-level programmer kinda gave it away they have no idea what's actually going on
** to restart docker containers you either have to be root or part of the docker group which effectively gives you root privileges
Comment by lostmsu 5 hours ago
Comment by fluidcruft 1 day ago
[I still haven't figured out MCP or how/why to use them or why to bother. You run servers. I guess. It's too complex for my smol brain to understand]
Comment by nip 1 day ago
I know this is self-deprecating humor, but you do NOT have a smol brain: MCP servers are not as needed anymore now that Claude Code supports "Skills". They are also very token hungry as their spec is not lazy-loaded like the skills.
It was / and still is very useful if you collaborate with other engineers or want to perform operations in a non-stochastic fashion.
MCP servers are a way to expose a set of APIs (openAPI spec) to an LLM to perform the listed operations in a deterministic fashion (including adding some auditing, logging, etc). LLMs are fine-tuned for tool calling, so they do it really well and consistently.
Examples:
- Documentation / Glossary: MCP server that runs somewhere that reads a specific MD file or database that is periodically updated: think "what are my team members working on" / "let me look up what this means in our internal wiki".
- Gating operations behind authentication: a MCP server that is connected to your back office and allows you to upgrade a customer's plan, list existing customers, surface current. Super useful if you're a solo-founder for example.
Comment by egamirorrim 1 day ago
Claude could use the API directly but most MCP now comes with OAuth so you can let it act as you, in case API keys are hard to come by or chargeable. Sometimes with a good skill or a preconfigured CLI tool skills can be just as good if not far more powerful than an MCP server.
But the trigger you'd look for to decide to use an MCP is 'i wish Claude could access X'. My top examples:
- pulling designs from figma to implement them - fetching ticket context for a job from JIRA - getting a stack trace to investigate from Sentry
Comment by esafak 1 day ago
Comment by lnbharath 1 day ago
on MCP, the mental model that clicked for me is "giving claude access to tools it can call" so that instead of copy pasting from your database or API, claude can just... query it
playwright MCP for me is godsend
Comment by tanmay001 1 hour ago
Comment by Lx1oG-AWb6h_ZG0 1 day ago
Comment by lnbharath 1 day ago
MCP is for when you need claude to actually interact with external systems like querying a database, hitting an API, etc...
Comment by tstrimple 1 day ago
Comment by SatvikBeri 1 day ago
Comment by fuckinpuppers 8 hours ago
Comment by skydhash 1 day ago
> Claude was halfway through refactoring a complex auth flow[...] Then I realized: I'd forgotten to mention that one of those files was also used by a cron job.
That is the kind of research you do before you go to refactoring.
> Claude Code freed them from "the anxiety of the first step in programming constantly."
Is there a first step in programming? If there is, that would be thinking because you ought to get a good solution in mind before even typing the first line of code.
...
The whole article feels like someone roleplaying as software developer. Not that there's a barrier or a license to be one, but just that whole piece seems like as accurate as hackers portrayal in movies.
Comment by konart 1 day ago
I'd argue that a first step (regardless of field) is either a necessity or curiosity.
Thinking comes later. (And to be honest I can't really think of it as a "step", simply because this is a process).
Comment by gedy 1 day ago
It's a cool tool! Just am tired of being treated like anti AI because I don't outsource my brain to it, or gush over their DIY UI demos.
Comment by skydhash 1 day ago
Anyone can sat before a piano and start hitting keys. And someone can rig up some apparatus that highlight which keys to hit at precise times in order to play Moonlight Sonata. But no one will call those people pianist. Sure a good pianist can use such apparatus to learn to play a piece. But he may also not buy such thing and just use a music sheet.
Comment by lnbharath 1 day ago
So I spent the weekend digging into the DX decisions that make Claude Code delightful.
Comment by MasterScrat 1 day ago
Comment by geophph 1 day ago
Comment by bentcorner 1 day ago
I find it really hard to read articles that use AI slop aphorisms. Please use your own words, it matters.
Comment by Rikudou 1 day ago
Jokes aside, my English is passable and I'm fine with it when writing comments but I'm very aware that some of it doesn't sound native due to me, well, not being native speaker.
I use AI to make it sound more fluent when writing for my blog.
Comment by mcphage 1 day ago
It would still sound more human coming from you.
Comment by exe34 1 day ago
Comment by Rikudou 1 day ago
So it's me doing the writing and GPT making it sound more English.
Comment by geophph 1 day ago
Comment by fragmede 1 day ago
Comment by lnbharath 1 day ago
Comment by ler_ 1 day ago
In my opinion, to write is to think. And to write is also to express oneself, not only to create a "communication object," let's put it that way. I would rather read an imperfect human voice than a machine's attempts to fix it. I think it's worth to face the frustration that comes with writing, because the end goal of refining your own argument and your delivery is that much sweeter. Let your human voice shine through.
Comment by verall 1 day ago
I cannot at all understand writing an essay and then having an llm "tighten up the sentences" which instead just makes it sound like slop generated from a list of bullets
Comment by amtamt 1 day ago
Feels more like peer pressure induced post, than evaluating a tool critically for pros and cons.
> Claude Code has this effect where you KNOW it's good but can't quite say WHY.
Definitely gives the "vibe" of social media's infinite scroll induced dopamine rush.
Overall, this post just seems to be enforcing the idea that "fuzzy understanding of business domain will be enough to get a mature product using some AI, and the AI will somehow magically figure out most non-functional requirements and missing details of business domain". Thing is that figuring out "most non-functional requirements and missing details of business domain" is where most of the blood and sweat goes.
Comment by erichocean 1 day ago
Comment by lnbharath 1 day ago
Comment by erichocean 1 day ago
Comment by buster 1 day ago
Comment by ch2026 1 day ago
Comment by charlesabarnes 1 day ago
The default tools made available in Photoshop is why it remains on top to this day.
Comment by lnbharath 1 day ago
Comment by PaulHoule 1 day ago
I have an "image sorter" that sucks in images from image galleries into tagging system with semantic web capabilities "Character:Mona -> Copyright:Genshin_Impact" and ML capabilities (it learns to tag the same way you do)
Gen 1 of it was cued by a bookmarklet to have a webcrawler pull the gallery HTML and the images. I started having Cloudflare problems so Gen 2 worked by saving complete pages and importing the directories, that had problems so I was looking at a Gen 3 using a bookmarklet to fetch and POST the images out of the browser into the server so I tell Junie my plan and it tells me I'll have CORS trouble and "Would you consider making a browser extension?"
Well I had considered that but was intimidated at the prospect, figured I'd probably have to carve out an uninterrupted weekend to study browser extensions, kick my son out of the house to go busk with his guitar instead of playing upstairs (the emotional/social bit is important) and even then have a high chance of not really getting it done and then end up taking another month to get an uninterrupted weekend. I told Junie "I've got no idea how you do that, don't you need a build system, don't you need to sign it?" and it said "No, you can just make the manifest file and a JS file and do a temporary install" so I say "make it so" and in 20 minutes I have the browser extension.
It still isn't working end-to-end, but I'm now debugging it and ought to be able to get it working in a weekend with interruptions even if I didn't get any more AI help.
Comment by phplovesong 1 day ago
Comment by ThouYS 1 day ago
Comment by GiorgioG 1 day ago
Comment by ltbarcly3 1 day ago
Comment by erichocean 1 day ago
Comment by geophph 1 day ago
Comment by ltbarcly3 1 day ago
Well, not to me or the people I respect. It's getting very good, but it's like having a recent college grad who obsessively reads documentation. Someone with low skill but very high knowledge, often knowledge they are mixing up or not quite getting right.
I think if Claude is already 'better' at coding than you, maybe think about going back to college to be a lawyer or something. For the rest of us, lets just hope that Claude hits some natural limit before it gets better than us too. If it doesn't hit some limit I think we have a year or two.
Comment by dawnerd 1 day ago
Comment by coffeefirst 1 day ago
Robot code is bonkers.
Comment by ltbarcly3 1 day ago
Comment by salomonk_mur 1 day ago
It one shot the infrastructure to use and created the terraform file to put it up anywhere. It deployed it.
It caught some of the errors it had made by itself after load-testing, and corrected them. It created the load test itself (following patterns from previews projects we had).
It did all of this in a week. With human supervision on each step, but in a fucking week. We gave it all the context it needed and one-shotted everything.
It is more than god-level. If you are not getting these increases in productivity, you are using it wrong.
Comment by exe34 1 day ago
Comment by ltbarcly3 1 day ago
Comment by salomonk_mur 1 day ago
Now, I resell the output of AI supervised by engineers.
We can tell when it makes mistakes. It used to make a ton. Now, with the right context, it really makes very few mistakes (which it can find itself and fix itself)
Comment by tolerance 1 day ago
Comment by 01HNNWZ0MV43FF 1 day ago
Antithesis: LLMs are emasculating
Synthesis: Programmers should be feminized
Comment by tmoravec 1 day ago
I don't work on a monorepo, and as an example, what I would consider a mid-size service in my mid-size company is 7M tokens.
I can't but ask: do all people who are so enthusiastic about AI for coding only work on trivial projects?
Comment by SatvikBeri 1 day ago
Comment by peacebeard 1 day ago
Comment by raincole 1 day ago
Either that or this author is completely out of touch with reality.
Comment by lnbharath 1 day ago
Comment by pjm331 1 day ago
Comment by AaronAPU 1 day ago