Back to News
Advertisement

I'm going back to coding by hand

ttrencedamp about 5 hours ago 27 comments

ES version is available. Content is displayed in original English for accuracy.

I have a successful app I built myself with a solid user base. I had been working on a new version via Claude on and off for about six months

In work we use LLMs exclusively. Nobody writes code anymore. It's all hands off and we have a high level understanding of how things work but no more than that.

When it comes to my side project, I was adding features at breakneck speed with Claude but I realized I have no clue how the new code works or what it changes or breaks. I spent many years of my life working on this project and I don't want to turn it into another vibe coded black box, especially without an org of other engineers to help.

So last night, I abandoned my Claude branch with all the fancy new things and started hand coding again.

It was very very satisfying. Sure, there was monotony. I changed some variable names and I had to chase down all the places they were referenced, comment out tons of stuff to get things working and then slowly bring it back in, but it felt like coming home to an untidy house after living in hotels for half a year, and starting to clean up. Yeah there's work to do, but this place is mine. My own. I know where things live.

It's given me love and energy for the project again (at least for now, I hope it continues!) and I'm delighted to say I took a good look at code I myself had written pre Claude and I still found many ways to write it better, refactor, make it more readable and efficient. I haven't forgotten.

If anyone is feeling the despair of not coding anymore, stairs you're losing your edge, I would suggest you ditch Claude for a few days at least and see how you feel. Your mileage may vary, but it's given me back something I thought was gone forever

Advertisement

⚡ Community Insights

Discussion Sentiment

77% Positive

Analyzed from 1022 words in the discussion.

Trending Topics

#don#things#code#using#hand#control#choose#llm#manually#change

Discussion (27 Comments)Read Original on HackerNews

aatd86about 2 hours ago
Unfortunately I can't do that. My projects are too big now. In fact, this is how I deal with projects: I build the base manually and then I can iterate with AI faster once the fundamentals are solid. Sometimes the AI tends to forget those fundamentals or tries to change those and add unnecessary stuff on top. If I stay invested in what the AI is doing, I can usually spot it and nudge the AI back to sanity.

That is how I think it should be done.

nisegami25 minutes ago
>I build the base manually and then I can iterate with AI faster once the fundamentals are solid.

I've had tremendous success with this approach as well.

dunefox32 minutes ago
I'm not. I just don't want to implement code for reading files, setting up and population databases, logs, etc. manually anymore. I want to automate boilerplate, the occasional frontend code, etc. and focus on the parts that are interesting for me. This way I can get things done that I wouldn't otherwise.
dosisking29 minutes ago
I hope I never have to use your software
rf15about 2 hours ago
Did the same. First few days was like learning to walk from scratch again. Welcome back, programmer.
sgbealabout 3 hours ago
> I changed some variable names and I had to chase down all the places they were referenced,

   $ find . -name '*.c' -exec perl -i -pe 's/\btheOldName\b/theNewName/g' \{} \;
dunefox32 minutes ago
Not using an IDE in 2026?
sfn42about 3 hours ago
Any half decent IDE will change them automatically for you, no need to chase them down. Just look at the git diff if you want to see where things changed.
donkey_brainsabout 1 hour ago
Yeah this is a very very common and fundamental operation in programming. Always use the “refactor” tool in your IDE instead of trying to change every instance of a variable name by hand.

It’s like using a linter: you do it because it’s the right thing to do and doing it without the tool confers no benefit and is prone to error.

dudewhocodesabout 3 hours ago
Welcome back and godspeed.
yoz-yabout 4 hours ago
Power to you!

I started building a Claude which retains some brain power. After each pass it ablates a function or a portion of code and forces you to write it out by hand. My hope is that I can get something that deals with boilerplate and makes me focus on the interesting stuff. We'll see.

rajeasyabout 1 hour ago
not going to easy after using agentic ai, as mind get used to it .not easy but best of luck.
conartist6about 4 hours ago
Welcome back! Despite all the prophecies of doom and gloom, little has changed.

You can still very much get ahead by working smarter not harder, even when working with your hands

abstractspoonabout 4 hours ago
Goog for you!
sfn42about 2 hours ago
It's a common complaint that people lose control of their codebase using LLMs. It always strikes me as odd, because this is a choice you make when you use the tool.

You don't have to just give it a task, let it do whatever it wants, then accept the result. You can tell it how to do things. You can read the changes. You can ask it to do things differently.

You choose to relinquish all control and then complain that you don't like not being in control. It's all about the level of involvement you choose for yourself. It's not all or nothing, you don't have to go full vibe coder it's a spectrum and you choose where you want to be on that spectrum.

arkensawabout 1 hour ago
I don't think anyone chooses to relinquish all control from a project they've worked hard on. It's a slippery slope. You start with allowing it to help out a tiny bit, being in control and understanding the code the LLM writes, and then you become more confident in the results, and you trust it, and you don't read every line, and before long its refactoring an entire file by itself and you're not reading it.

And then you look up one day and you don't recognise the codebase

sfn4213 minutes ago
I'm able to avoid slipping down that slope, just don't be lazy. If you look up one day and don't recognize the codebase that's because you haven't actually looked at it in a long time. Obviously when you don't pay attention you miss things. Just pay attention, it's not hard. There's plenty of time for it while Claude or whatever is working through stuff for you.
sevenseacatabout 2 hours ago
Even with manual reviewing, most of its changes will look relatively reasonable when approving every chunk... until you come across one that doesn't, and then it'll be a neverending chain of 'wait why tf does it do this? Why does it work this way?'
dunefox30 minutes ago
Honestly, this is less of a problem with LLMs than with some colleagues I've had.
sfn42about 2 hours ago
This is not a problem I've had. I know roughly what I want before I ask for it, I make sure the result is roughly what I expected. Some times if I'm not entirely sure what I want I'll ask it to plan the change or suggest some approaches etc then choose the one I prefer.

For me it works great. My judgement is that I get things done significantly faster, and generally with comparable or better quality than I would doing it manually. It's important to lay a good foundation, if you are careful with the broad strokes it helps the LLM lay the rest down more consistently. It's also a lot easier to refactor things when the need becomes apparent.

donkey_brainsabout 1 hour ago
So do you make the LLM restrict its output to small, individually-reviewable chunks per PR?
dphenderabout 5 hours ago
Plug Claude back into your cleaned up codebase.. Its performance may surprise you once again. Maybe the trick to keep our sanity is LLM only on the odd days of the week.
trencedampabout 4 hours ago
The performance was never in question, it's the control I missed
krappabout 3 hours ago
>Maybe the trick to keep our sanity is LLM only on the odd days of the week.

"I can quit any time I want to."

Advertisement
pulkasabout 2 hours ago
If your idea generation isn’t outpacing your implementation speed, coding by hand probably makes more sense. At least it keeps your brain engaged.

But the right move is to find a way to increase the rate at which you generate ideas and offload the coding almost entirely to AI. Because if you’re not doing that, someone else is. They’ll eventually build something better than your app.

And when people stop choosing your product, if you can’t come up with the next idea and this is your only source of income... well, good luck.

arkensaw43 minutes ago
> If your idea generation isn’t outpacing your implementation speed

For me, it definitely is. Hell, my idea generation outpaces my ability to delegate it to agents. I can't do all the things I want to do because I don't have enough time in the day to vocalise them all, let alone hand code.

But in my case, I choose to handcode sometimes because I value the certainty of the results more than the speed of development.

It's the choice between a well-engineered application that does a handful of things reliably through a well-tested UI, or a rough-around-the-edges app that does 50 different things passably well, most of the time, with an inconsistent UI and lots of small bugs

People here might question the "lots of small bugs" but I have developed some apps solely with LLMs and despite using test-suites and spec-driven development I still face constant regression and UI bugs creeping in with every revision.

A good example - in React Native, in Android, Claude cannot keep the controls above where the onscreen nav appears, no matter how many times I ask it to. It'll solve it until three iterations later when the issue will return on another screen.

spottedmarleyabout 2 hours ago
The debate bothers me. Why anyone feels they need to only code one way or the other is strange. I do both. Actually, there are three options: By hand, hands off, and AI assistance while you code by hand. I'll do any of the three depending on what Im building or how I feel. Why does it have to be a hard line "Im not using AI anymore" or "I have to use AI for everything"?