Comment by Anamon
2 days ago
I don't think that's a fair characterisation. I gave these tools the benefit of the doubt and many genuine tries, and still do occasionally. My judgment that they're unfit for the task is based on finding that they objectively don't help me work. There are studies showing that LLM use slows experienced developers down, even as they believe the opposite. I used to be the only one in my immediate work environment who thought LLMs are of jack use in my development work. Over the past year, most devs who used LLMs heavily have now switched over to my view.
Translation is natural language in, natural language out. That has very little to do with programming. Dijkstra knew back in the 70s that the very concept of natural language programming was bullshit, and that fancy new tech is never going to change the fundamental issues with the idea. In my opinion, his argument is as valid as ever.
Edit: I wasn't trying to imply that natural to natural language translation is trivial. The best LLM tools can be pretty shit at that even today, too. Tried using localised Microsoft developer documentation lately. It's unintelligible.
Thanks for you opinion. I agree with your opinion that current LLMs are less helpful to senior/experienced developers. Of course LLMs can't solve complicated, advanced problems, otherwise we would see great advance in science and technology now.
However, there are a lot of trivial work in software development. For example, the behavior of a button, or editable text. Same to any kind of art, most developers in the industry are doing trivial or ordinary work, and few are solving challenging problems. What I mean is that those who do trivial work will be culled, or liberated, from doing that as a job, while the elite could remain there to solve unique, challenging problems.
Recently I have been working with coding agent to fix bugs and implement new features. I implemented my solution first and let coding agent come up with its own solution. Most of the time, the coding agent came up a better solution than mine. Most of the time, its solution was not worse than mine, and I would keep most of its code and only do some minor improvement. Most probably, I am not an experienced/advanced developer, since I seldom deal with advanced math/algorithms/architecture in my day-to-day work. Thus, it would be natural that we have different feeling to the same thing.
I am interested in Dijkstra's idea about natural language programming you mentioned, is that EWD667?
https://www.cs.utexas.edu/~EWD/transcriptions/EWD06xx/EWD667...