I actually thought the guy meant writing pseudocode by hand on paper…turns out coding by hand means not using an LLM…end times…
A couple observations on reading this (as someone who heavily uses agentic coding at work and is mostly OK with it):
- Maybe I’m weird, but I don’t find “we always plan the implementation and make decisions first, and only then do we write the code” to describe my work style that well. If I don’t know how I want something to look, I will frequently just start writing whatever code comes to mind about that something. Most of the code will suck, and I’ll probably throw much of it away, but I find that it’s often a much more efficient way to get to a design that I like than sitting and debating tradeoffs in the abstract. Me writing the code might be slower than an agent writing the code, but that misses the point of the exercise: me writing the code is a way for me to build my own understanding of the problem.
- The text translation analogy at the beginning is illustrative, I think. A piece of writing has information, but also elements of the author’s wit, humor, tone, their assumptions about us as readers, and the cultural frame they write within. Good writing combines all of those things in an appealing way. At some basic level translation is about translating words correctly, but “correctly” there does a lot of work. It can be very hard to translate a work from one language to another without losing those less obvious characteristics (wit, tone, etc) that make it appealing, especially if you’re translating (e.g.) idioms or slang that don’t have a clear counterpart in your destination language. This is probably familiar to folks who read authors who’ve been translated outside of their native language: the right (or wrong) translator can have a huge impact on what you experience while reading. That’s not a bar we hold for all text (we’ve all seen very poorly translated manuals for cheap consumer electronics that are nonetheless fine because we can figure out what they’re trying to say), and similarly isn’t a bar that holds for all code, but there is some code where the nuances that automatic translation misses are actually important, and where a human touch is useful.
Well I tried writing it with my tongue, but got saliva everywhere.
to add on to the others:
- writing the code can surface problems, hurdles, and/or challenge assumptions that may impact whatever acceptance criteria we were aiming for
- assuming we’re still talking about writing code for humans to read/maintain - if the code you would’ve written is literally the same code the machine would’ve generated, I’d say there’s room for improvement
- paraphrasing, but “just lie down and accept it” is not in my spirit
I love that this article was written on the 3rd of September and then on the 4th there’s a new article. “Turns out, everyone hates my takes on AI”
Are you using an IDE? Ewww, that’s so heavy-handed. I use a text editor.
Are you using a text editor? Ewww, that’s so heavy handed. I use Unix pipes to edit the files.
Are you using Unix pipes? Ewww, I use a microscopic needle to edit files on the hard drive platter.
Eventually this reaches absurdity in the other direction too. If working your AI is like wrangling cats, maybe you need to update to a newer model.
And maybe just maybe… You’re asking too much of the model/VRAM combo available.
If an LLM is not the right tool for the job, that’s okay too.
I see my code, to some extent, as like a form of art. That is why I enjoy writing it myself. I’ve used an LLM at work and it’s like babysitting a comically stupid idiot.
It is. It’s craftsmanship.
Just because it’s digital doesn’t mean it can’t be done thoughtfully.
Because someone has to maintain it.
That is, by far, one of the saddest pieces of text I have read in a while.
On your about-page you write
I don’t use AI when writing or editing my texts.
Why’s that? Why don’t you use AI, but prefer to write your texts by hand?
Because AI writes soulless, bland text that no one will want to read.
There you have it, your answer.
I write my code by hand, as LLMs generate soulless, incorrect code no one will want to read but you better do as it’s full of mistakes.
LLMs generate, they don’t write. Writing is something creative, something human. Machines aren’t human, at least last time I checked.
I can’t recall ever wishing the code I was reading had more soul. In fact, usually when the soul of the author shines through, it’s because the code is too exciting and makes me nervous that it’s overly complex. I agree LLMs are terrible at writing prose; it ends up sounding very unnatural and readability suffers. But for the code itself, more often than not, you can achieve precisely the desired result by doing a little up front discussion with the LLM about implementation strategy, plus some revision at the end.
deleted by creator
To be clear, I’m not saying that the technology resulting from a software project should lack soul. It’s obviously a great thing when the authors of an application put a lot of care into designing its UX and operational efficiency; this is an art that LLMs do poorly today. But that is pretty much orthogonal from how the code reads. There is incredible, well-designed software out there which reads as totally boring, and that’s generally considered a good thing.
Also I’m not claiming that it is easy to do that; crafting boring code that still functions as intended is quite difficult. I’ve never seen an LLM do this without lots of hand-holding. The human touch is essential, but that doesn’t imply that a person using an LLM suddenly has stunted vision and lack of aesthetic.
Unless you are only raw productivity focused, another “legitimate” reason for using AI could be that you have many ideas you want to test and doing it all by yourself is unfeasible. But then if you have tried AI for such tasks, the longer you work on the project with an LLM the more it drifts away from your original ideas. And usually it will come up with these magical reasons to justify the path it took which may take you half an hour to understand. And quite often such discussions will end up with something like “you are right, I have overstated the problem”. So in the end if you want your own vision to be at the center of the project it becomes an annoying tug of war where either each couple days you have to spend a full day to understand why and how the LLM code has drifted from your original idea or just roll with the auto mode on.
For the latter you have to setup, as explained in the article, other agents to review, vet and improve the code which results in more drift so now the project drifts away from what you want even more rapidly. It will still try to achieve the same result, but it will no longer feel like your project because it is littered with technical decisions that makes the code feel very alien. In a sense you should be ok to be the project manager of your own hobby which frankly is soul destroying and really kills any joy I get from doing it.
So even if I use AI in personal projects, it is not to output more projects at a time but to see if the robot can come up with angles that are interesting or useful to solve problems I encounter (I will confess it can, quite often). If I ask it to write code it is a slow process, since as the code grows, I take time to completely go through the code and put it in a form that is easy for me to parse and then ask the robot to make sure it achieves the same result as the previous version.
deleted by creator





