ChatGPT and Copilot makes the programming experience feel like the latter. Despite me having never used any of these libraries or tools before. The code just flows out smoothly.
Copilot seems to have vacuumed up all the “quick hack to make this work” code from blogspam and bootcamp-final-project type open source repos, but I’m in an area absolutely flooded with that kind of code (typescript/react) so maybe it’s better with other kinds of code. Typescript/react is so bad now that google searches often return blog posts full of confidence and issues.
A few times it’s generated bugs that I couldn’t even catch by reading but it blows up spectacularly when scaled up even a little bit.
If I code-as-meditation or code-as-a-concept-thinking it's more like "could I make a synthesizer?" or "how do B-trees work? Could I make a simple database?". And the coding is part of figuring out how something works or if I'm capable of doing it, rather than actually getting a working synth out of it.
I just want to make, not have a thing. Given the choice of completing the first project or starting a new one, I'd rather just work to the stage that I understand that it could be done in theory, or that I could do it personally (if I invested way too much time), than actually do it.
My pet theory is that there are two kinds of (hobby) coders: those who like making things, and those who like making things. One like myself is more excited about the mental task of wrestling out the minutiae of coding. Like making types agree or implementing an algorithm. The other is more excited about the product of the labor rather than the labor itself.
For me as a person who likes writing code as a mental relaxing excercise where sketching out a set of domain types or implementing an algorithm from a textbook is the fun part, and actually seeing the result and "banging out the remainnig issues" is the part that reminds me of my day job, I think AI helpers just help me with the wrong bit. It makes me do code reviews, bug hunting and nagging. But that's already my day job...
I should add that I never do anything with lots of boilerplate (e.g. no web dev). If I ever needed to touch anything with js/html/css/containers/yaml/sql/ then the AI would probably not just be helpful but completely necessary.