Hello HN users, I really appreciate you reading this. I can't think of a better audience for this question. If this issue has affected you in any way, I would be really thankful to you if you could leave a comment on this post.
MY GOAL: to be able to consistently do an acceptable day's work as a professional software engineer, keeping a reasonably good understanding of the parts of the code that I changed that day, ending the day roughly on time, feeling like I did enough, feeling like I can forget about work until the next workday.
MY PROBLEM: I find that as the workday goes on and time runs out, my style of programming gets further from LLM-assisted coding (me designing and writing code, talking to Claude Code only when I get stuck) and closer to pure vibe-coding (where I don't even review the code it writes until a big chunk has built up at which point I'm likely to abandon it, unless it's really useful in which case I'll painstakingly review it and try to understand it and usually have to make a lot of changes to get it how I want it - sometimes I'll still have to abandon it if it's too confusing or large). This leads to me spending hours and hours on vibe-coding sessions on workday evenings, after the workday is over. In the pre-Claude-Code era, working that late (with no external pressure) was much rarer for me. This leaves me feeling drained, frustrated, and with less time to look after myself and live my life.
My work-life balance before was actually pretty good, so the shift in the last year or so has alarmed me.
I think the fundamental problem is that vibe coding doesn't feel as "hard" as work, so I can just keep doing, but essentially I'm just sitting at the computer working and not participating in my personal life long after the workday is officially over. Another factor is that I have too much autonomy at the moment and work remotely, which was OK before but now the communication between myself and colleagues has been really redirected into communication with Claude Code.
I've tried the following with a bit of success but they're hard to stick to and all have their own pros and cons: - Abstain from using Claude Code at all - Always typing out the edits it suggests myself instead of letting it make them (or even copy-and-pasting) - an old trick I learned from Dr Frank King. This means I keep the effort of doing a certain kind of character-by-character code review (maybe not "understanding" it fully but still getting closer than if I just squint at it and approve/deny, or worse, go into "accept edits" or "auto" mode). And I feel more comfortable with the code later. But I just stop doing this at the end of the day when I'm trying to squeeze in "one more bit" of functionality - Only using claude in "low" effort mode, manual mode - reviewing (and quarreling with...) every little diff - kind of works but feels draining in its own way - Setting a hard deadline to end the workday, regardless of how much Claude Code I'm using. - Reminding myself that my job isn't to complete the whole project as fast as possible - it's to do as much as I can (comfortably) in a workday - Telling Claude to tell me to stop after the workday is over (it forgets this in long sessions though) - Splitting my work into smaller chunks so that I have to interrupt it to make PRs and wait for feedback, or discuss design with colleagues etc
I guess my internal emotional state, my workplace, and the stories I tell myself about my productivity, my goals, and the use of LLM tools, are all responsible for this behaviour - among other things. So counselling and general advice about workaholism / remote working / WFH would probably help - that's welcome too if you have any thoughts.
Many thanks for reading and I look forward to hearing from you.
Claude does not have a sense of time. What is stopping you from not talking to it until the next day?
Sometimes the output is great, sometimes not, but it always feels like a change to the prompt will get you closer to the prize. Just like pulling the handle on a slot machine gets you one more chance at a jackpot.
Other than that, set an alarm when you want to stop working. When it rings, physically unplug your work laptop and move it somewhere out of sight.
It’s much more fulfilling to give the LLM guardrails by engineering the solution.
This means coming up with the high level architecture, dependencies, breaking down the system into deliverable chunks, and implementing those chunks. The LLM can help in all those steps of the process. And it will be much easier to review and keep an understanding of the code.
I feel like this is the best way to condition the agent, I don't have much success trying to do it via the prompt only
That feeling is what's addictive. To use the video game analogy, if you could skip the grindy elements of repeating a boss fight over and over and just get more chances at the rare loot you probably would. Some call this a cheese, the community finds a cheesy way to defeat the boss easily so you do that and its a 5 min fight vs. 30. That's what AI is helping with: the grindy elements of coding.
I think you can still reach burnout (both in games and software) even if the grindy parts are getting automated. You can certainly ignore AI and hand code but statistically speaking you will probably be "left behind" from your peers.
Does your employer incentivize contributions individually and can you advance with this pace of work? If there are financial incentives it might make sense to put in extra effort. If your employer is in more of "its a marathon, not a sprint" mode and your contributions are to the greater good then put down the work at the end of the day and find something else to do. Set aside AI and ask yourself if its worth it putting in 2 extra hours per day.
Programming used to be painful, but coding with AI doesn't feel that way. In the old days, I had to write extensive planning documents before writing any code—work orders, UI layouts, and design specs. With AI, things happen right away. I think the immediate feedback is a huge difference.
To keep my skills from deteriorating, I avoid using AI when reviewing other people's work. I end up missing AI.
How are they green and allowed to comment 10 mins after creation?