> We are going from the era of manual, line-by-line mental model transcription to one where software engineers can focus on data structures, software architecture and algorithms.
Focusing on data structures, architecture and algorithms is what competency in programming has looked like since forever. Building systems out of smaller pieces gets you there.
If your complaint above is that you were struggling with syntax and reading documentation, one might ask if you failed to progress past beginner levels, and now AI is just your cheat-code?
Some projects have fantastic documentation. Qt comes to mind. The experience of writing Qt is a pleasure because I can always jump to the doc for whatever class I'm dealing with and find what I'm looking for immediately. Also every argument type is well-linked in every signature so it's easy to follow and understand everything you're dealing with.
> Focusing on data structures, architecture and algorithms is what competency in programming has looked like since forever
yes, being able to bang out leetcode hard from head on an interview on paper matters so much... oh wait. it does not.
in the real world, outside of interview questions, it hardly matters. when it comes there, I'll optimizite it, but getting the first system up and running in a way I want is way more fun & challenging. need a lock free ringbuffer? I'll look up what's the latest way to build it. or just ask my AI.
> yes, being able to bang out leetcode hard from head on an interview on paper matters so much... oh wait. it does not.
That's about reciting standard data structures like stack and queues. I think parent is talking more about the design of primitives for the domain of the software. That requires creativity and insight.
I think you are not interpreting GP in the most charitable way. He simply said that not having to manually write all the code lets him spend his energy on bigger things. That is different from "struggling with syntax".
It is the same. I mean many mainstream languages made thinking in datastructures hard. Not a coincidence why functional languages, Haskell, F#, OCAML, Scala, Clojure, LISP, etc. had their enthusiast, as they felt just like what you claim.
The datastructures already did the heavy lifting. The syntax was not something to struggle with, but it was the natural way to stick the bits together.
JavaScript for one never gave me this feeling, and I always felt that either the language, or the libraries, but something was always a struggle to overcome. (Python too... seriously, working with collections is a pain in the "pythonic" way for someone who has experienced LINQ... and for most line of business apps it is all about working with collections.)
Focusing on data structures, architecture and algorithms is what competency in programming has looked like since forever. Building systems out of smaller pieces gets you there.
If your complaint above is that you were struggling with syntax and reading documentation, one might ask if you failed to progress past beginner levels, and now AI is just your cheat-code?