I use the Vim text editor. I have used it for many years, my fingers know where to go and what to type, to do what I want to do.
If you told me I wasn’t allowed to use Vim for a particular task, but had to use something else, I would be frustrated. I would probably avoid the task you set me, to avoid that frustration.
This is not just practical. I would probably be OK using another editor, after a short while. It is partly emotional; I wouldn’t feel right, using something else.
There’s an entertaining joke in “Silicon Valley”, where the main character, Richard Hendricks, gets into an argument with his girlfriend about whether it is better to use tabs or spaces to indent code in text files. He gets angry about it, and they split up. Hendricks has an emotional attachment to tabs. Of course one could (they do) argue about whether tabs or spaces are better, but he is past the point of argument, he is committed. He can’t help but lose his balance at the idea of losing his preference.
I must admit, I don’t like using AI to generate code. When I do, I start to feel something that the Harvard Business Review calls brain-fry. As others have described, and data shows, I can feel myself starting to skip read the generated code, and I feel my intellect starting to sag. I get the same uncomfortable feeling reading other people’s code, generated by AI. I realize I will have to apply great discipline in analyzing the code, but because I know it was not written by a fellow human, with whom I am collaborating, my motivation sinks. My feeling is one of disappointment; that I was looking for something I cared about, but I did not find it.
I read a quote, that I cannot now find, that I believe was from Lee Se-dol, the Go champion, on playing Deepmind. He said something on these lines: “I kept asking myself, what is the AI thinking, but of course it isn’t thinking anything at all”. When I read this, it seemed to me a great and bitter insight.
Up until now, when I am working on code, my happiness in it, is that of a teacher and a problem solver, working to make the problem clear, and solve it for the pleasure and benefit of my peers. My enjoyment comes from the process of thinking and writing, more than the capability of what I have written. My code is a message to those who read it, like a tutorial, to say “Look, I worked this out, I see it clearly now, is this not a fine thing that I brought into existence”.
Sometimes, I suppose, one must prefer capability, to process — and choose the efficient mind that does not think, to inefficient minds that do.
But I cannot work without pleasure in my work. I have an emotional attachment to writing code.