It really does need to be stated that AI code completion is indeed NOT a learning tool. It’s an accelerated “copy/paste code from stack overflow” tool. Useful in its own right if you just want some rough code fast, but it’s not going to teach you anything. There is no easy way out of having to deeply understand code. It’s your job as a programmer.
I feel like this is a bad binary. It’s more shades of grey. As an experienced programmer, code completion, like Intellisense and bash tab completion, accelerates my ability to do new things. I can pick up a new language and be productive faster than when I had to buy a book and look up syntax or later Google syntax. I am learning because I have something roughed out and compiling that I can then pull apart and understand. When I was a kid learning Perl for CGI I just copied code from books and learned a lot by trying to put different pieces together. It usually didn’t work and that led me to learn more about how Perl worked. Code generation gets the big picture done and knocks out tests really well, allowing me to focus on learning the things I really want to learn, like how I should be optimizing my data structures.
I think we can all agree that if you just blindly tab complete Copilot suggestions you won’t learn anything. Your code also won’t run.
It really does need to be stated that AI code completion is indeed NOT a learning tool. It’s an accelerated “copy/paste code from stack overflow” tool. Useful in its own right if you just want some rough code fast, but it’s not going to teach you anything. There is no easy way out of having to deeply understand code. It’s your job as a programmer.
I feel like this is a bad binary. It’s more shades of grey. As an experienced programmer, code completion, like Intellisense and bash tab completion, accelerates my ability to do new things. I can pick up a new language and be productive faster than when I had to buy a book and look up syntax or later Google syntax. I am learning because I have something roughed out and compiling that I can then pull apart and understand. When I was a kid learning Perl for CGI I just copied code from books and learned a lot by trying to put different pieces together. It usually didn’t work and that led me to learn more about how Perl worked. Code generation gets the big picture done and knocks out tests really well, allowing me to focus on learning the things I really want to learn, like how I should be optimizing my data structures.
I think we can all agree that if you just blindly tab complete Copilot suggestions you won’t learn anything. Your code also won’t run.