HACKER Q&A
📣 fnoef

Does it still make sense to write code by hand?


Dear HN, I have a question: Does it still make sense to write code purely by hand? Let me clarify.

First of all, I'm not talking about environments where you need to "move fast" or where your required to use LLMs. I'm referring more to an environment where you do it on your own terms, rather than on the terms of the employer.

Secondly, I'm not talking about prompting "Build me the next twitter clone", but rather prompting very small tasks after you have made the initial design, something along the lines of "Create a database migration that adds column [x], not null", "add a field to the this form that will accept string value, validate it on the backend against this format, and save it to column [x]". So basically, writing code in plain English.

Why do I ask? I believe that writing something yourself helps you learn it better, but at the same time, if you did all the thinking and now just prompting for a fancy auto-complete, we could argue that the hardest part (the design) was already done, and you skip the writing for the sake of writing. On the other hand, I am afraid that if I will stop writing code in environments where I can still do it, I will lose the ability to think about code and understand code.

Whats your take on this?


  👤 maerF0x0 Accepted Answer ✓
> you do it on your own terms, rather than on the terms of the employer

You've setup a condition where essentially every answer is true. I know someone who spins wool and dyes it and makes socks. Does it still make sense? Only once you add in the fact she enjoys.

If you're real question is what can be done better by hand in July 2026?

afaik optimization problems are still getting superior results from humans. Things like if you do this algo you can loop the array once instead of 3x. If you align this struct like this it's faster on a certain arch + os. Or if we do these 2 steps in microservice A we can only touch the memory and network once instead of twice etc.

a 2x speed up is still meaningful at scale. (I'd bet there are 100s of software companies out there that would pay 7 to 8 figures if you could 1/2 their AWS bill)


👤 bitbasher
I do all of my code by hand. I don't even use an LSP. It makes sense as long as it makes sense to you.

You don't need to change the way you do things because of some perceived thing you're missing out on. That is what the AI companies want you to feel and think because it benefits them.

This applies to more than AI, but programming language choices and more. Heck, it even applies to social issues and politics :)

Make your own choices and walk your own path.


👤 Jemaclus
It's like any other tool. Use it when you need it.

We don't insist that HVAC installers use hand-powered drills to "feel closer to the work," but we also don't insist that they use battery-powered drills and impact drivers on every single task.

We don't insist that a chef use a Vitamix blender to chop a single onion when a couple seconds with a sharp knife will do, but we certainly wouldn't only use a sharp knife to create a salsa.

We don't insist that a carpenter use only hand-saws to build a house, but we also don't insist that they use a chainsaw to make a chair.

We don't insist that an accountant write out taxes by hand, but we also don't insist that they use a calculator to determine how old you are from your birthdate.

You use the power tools when appropriate, and you use more delicate, surgical tools when appropriate. It's not any more difficult than that.


👤 al_borland
In the context of coding on your own terms, I think it makes sense to still code to help learn and reenforce understanding. There are a lot of times I read something or see code, I think I get it, but it’s not until implementing it, and making changes to that implementation, that I actually understand it.

There is also a question of enjoyment. While you enjoy it, and while you’re learning, write it yourself. If you’ve already done something many times, understand it well, and it’s become tedious in a bad way, maybe that’s where some strategic use of AI comes in. Of course, I tend to like a bit of tedium from time to time.


👤 fullstick
Turns out I think I always liked the end product more than getting there. I would kind of hate having to only write code by hand for a paycheck again.

I still write code by hand because sometimes it's faster and cheaper.


👤 trio8453
> prompting very small tasks after you have made the initial design, something along the lines of "Create a database migration that adds column [x], not null", "add a field to the this form that will accept string value, validate it on the backend against this format, and save it to column [x]". So basically, writing code in plain English.

Are you presenting this as the option that allows you to have better understanding (smaller tasks, closer to the changes), or the option with which you don't have understanding (because you're still getting assistance, not solving every problem on your own and not typing the code out yourself)? I genuinely can't tell from your post, people can and do take both of these positions.

> I will lose the ability to think about code and understand code

If you lose it (whatever "it" is), it's because you don't use it. If you don't use it but you're still getting your job done, is that really a loss?


👤 achairapart
I have a related question: In a contest where all the code is generated by LLMs and not hand-coded anymore, does it still make sense to use high-level languages and other abstractions that were created for humans?

👤 rramadass
Yes, there is still a need to learn to write code by hand.

Maybe not to the detailed nitty-gritty level in a computer language that was needed pre-LLM era but nevertheless still a must.

In this context, it is good to revisit the practices from early days of programming where "System Analysts" and "System Designers" provided detailed specifications to "Programmers" who translated it into computer code. The key point to understand here is that the specifications were detailed i.e they were code just in a non-machine executable form.

So detailed Specifications followed by Verification is mandatory. Understanding the code implementation in-between has lesser need but still important.

See also my previous comment chains from here - https://news.ycombinator.com/item?id=48800484


👤 Lord_Zero
Its rare for me now. Most by-hand stuff I do is setting up initial repositories and folders for the base structure I want, copying logos, assets, images, content, and then I tell AI to finish the rest for example.

Configuring secrets for CICD, .env files, hosting configurations/backups.

Writing instructions files, specs, copy/pasting context, requirements, examples.

I see the argument here constantly "But ur skills!". OK. Well back to work actually shipping software using this new tool that is never going away. My client doesn't really care about my skills, just my speed and they have money for me.


👤 add-sub-mul-div
Would you ever want to be as helpless at a skill you care about as the typical person is about math, since calculators were invented?

👤 bigstrat2003
Outside of work (where they force me to use the clanker), why on God's green earth wouldn't I write code by hand? That is the fun part; I'm not going to voluntarily give up the fun part of my hobby project. If you are a person who is wired to care more about getting to the end than the process (as some here have said they are), then fine, use an LLM if you want. But there's no "makes sense to" involved here - if you like writing code then write code, if you don't then don't.

👤 segmondy
Does it make sense to still walk? I mean, we have cars. You want to go somewhere that's 1km away from home. Does it make sense to walk?

Someone wants to give you a phone number. Does it make sense to still try to memorize it or must you hunt down paper and pen to write it down?

... you get the drift? Do what makes sense to you.


👤 cowboylowrez
I'd love to vibe code with an army of agents, I just don't know if I could afford to vibe debug the resulting mess lol

👤 WCSTombs
> I believe that writing something yourself helps you learn it better, but at the same time, if you did all the thinking and now just prompting for a fancy auto-complete, we could argue that the hardest part (the design) was already done, and you skip the writing for the sake of writing. On the other hand, I am afraid that if I will stop writing code in environments where I can still do it, I will lose the ability to think about code and understand code.

Merely completing the "design" is by far not "doing all the thinking," and this is really the core of the problem. When people code with LLMs, the LLMs are making nontrivial decisions and thus are replacing part of the programmer's intelligence. That's why calling LLMs "fancy autocomplete" is so misleading, because autocompletion isn't supposed to make decisions, just to facilitate typing out the code you already have in your head.

So yeah, I agree with the last sentence about losing the ability to understand code, and that's a sufficient reason to avoid AI assistance whenever possible. Since I prioritize education and learning above almost everything else, it's not a close call. Where the line gets blurry for me is when people say "I would never have learned the tech stack needed to make this tool myself, but I vibe-coded it and now it's mine." It's really difficult for me to argue with that, to tell someone simply to live without something that's potentially improving their day-to-day life. To be clear, there are many good reasons not to do that thing, but it's also not my place to judge people for doing it, since I don't live my own life perfectly either.


👤 dgunjetti
lot of times I feel the code that is generated has better readability and better documentation then if I had coded. so if something is doing better job then I will use that, but reviewing the code that is generated I feel is still my job, sometimes code generated is not correct, so I need keep checking.

👤 erelong
I think you could make a high level brainstorm session / plan on paper of things to prompt and that this was valuable even before AI

and occasionally manually writing out the code could be useful as a mental exercise to keep coding skills sharp?


👤 HN-user2345
doesnt matter if you use AI as long as you check the code afterword and know what you are doing

👤 pradeep1177
If it’s a preference question then certainly yes, but how to push back on x productivity boost argument when a company enforce this as policy?

Yes a soft policy but it’s a smart move to encourage the rat race.


👤 pickle-wizard
I am a solo developer. I write most of my code by hand. I use LLMs to help me do research and to help find stuff in documentation. I also use it to do come reviews since I don't have anyone else to review the code. I do get a lot of value out of the code review. It often finds little things I missed or will tell me if my code sucks.

Really for what I am doing writing the code is never the bottleneck. I spend little of my time actually writing code. Where I spend most of my time on the design and requirements.


👤 shofetim
It makes sense to write code by hand.

We are in a hype bubble and it can be hard to go against the grain. The bubble will calm down, as it has every other time: crypto, low code, outsourcing, SPAs, Java, AI that last time around (search for Lighthill report).

I agree with your concern about skill stagnation or erosion. Years ago we used to make fun of "architectural astronauts": developers who stopped implementing and instead used English to design systems for others to implement.

I'm guessing you have had the experience writing code where you throw away the first, second and maybe third implementations? While you "work out" what the real problem is? Our human brains need that niggling at the problem before we can make a good design. Don't short circuit it.