> (And for some reason we're pretending like these formalisms are hard and the people that understand them evil gatekeepers, to which I'd say: nope to both propositions. It has never been easier to learn how to code.)
I am not a professional programmer, and I tend to bounce between lots of different languages depending on the problem I'm trying to solve.
If I had all of the syntax for a given language memorized, I can imagine how an LLM might not save me that much time. (It would still be helpful for e.g. tracking down bugs, because I can describe a problem and e.g. ask the AI to take a first pass through the codebase and give me an idea of where to look.)
However, I don't have the syntax memorized! Give me some Python code and I can probably read it, but ask me to write some code from scratch, and LLMs I would have needed to dive into the language documentation or search Stack Overflow. LLMs, and Claude Code in particular, have probably 10x'd what I am capable of, because I can describe the function I want and have the machine figure out the minutia of syntax. Afterwards, I can read what the produced and either (A) ask it to change something specific or (B) edit the code by hand.
I also do find writing code to be less enjoyable than reading/editing code, for the reason described above.
No one have the language syntax memorized, unless you're working with the language daily. Instead we store patterns, and there isn't a lot (checkout the formal grammar for any programming language). For any C like language, they overlap a lot, the difference are mostly in syntax minutia (which we can refresh in an afternoon with a reference) and the higher abstractions (which you learn once, like OOP, pattern matching).
Generally you spend 80% of the time wrangling abstractions, especially in mature project. The coding part is often a quick mental break where you just doing translation. Checking the syntax is often a quick action that no one mind.
> Instead we store patterns, and there isn't a lot
That's kind of what I mean by "syntax". For example, "how do I find a value that matches X in this specific type of data structure?" AI is very good at this and it's a huge time saver for me. But I can imagine how it might be less helpful if I did this full time.
That's a good workflow. But in this case I just have a somewhat complete book about the language, a book and some web search open. Because I often seek for more complete information without the need for prompting and checking if the information is correct.
I mean, I'm not a mathematician but I don't expect that I should be able to write a proof.
You talk of memorizing syntax like its a challenge but excluding a small number of advanced languages no programmer thinks syntax is hard. But if you don't understand the basics how can you expect to be able to understand if the solution an LLM presents is decent and not rife with bugs (security and otherwise)
I guess my issue is people are confusing a shortcut with actually being able to do the thing. If you can't remember syntax I don't really want your code anywhere I care about
I am not a professional programmer, and I tend to bounce between lots of different languages depending on the problem I'm trying to solve.
If I had all of the syntax for a given language memorized, I can imagine how an LLM might not save me that much time. (It would still be helpful for e.g. tracking down bugs, because I can describe a problem and e.g. ask the AI to take a first pass through the codebase and give me an idea of where to look.)
However, I don't have the syntax memorized! Give me some Python code and I can probably read it, but ask me to write some code from scratch, and LLMs I would have needed to dive into the language documentation or search Stack Overflow. LLMs, and Claude Code in particular, have probably 10x'd what I am capable of, because I can describe the function I want and have the machine figure out the minutia of syntax. Afterwards, I can read what the produced and either (A) ask it to change something specific or (B) edit the code by hand.
I also do find writing code to be less enjoyable than reading/editing code, for the reason described above.