I saw a post this morning, and the other day I wrote a post about how GPT has already automated most of what programmers do. https://news.ycombinator.com/item?id=40489717
In that post, I basically said programmers are glorified searchers and that naturally pissed a lot of
people off, so I realized my failings in communication and wanted to explain in detail my position
When I first used GPT4 (I hadn't used 2 or 3), I asked it something like
"How do I setup a CDN on AWS?"
almost jokingly not expecting much more than I'd seen GitHub CoPilot do in general, which was still amazing enough, but too novel for me to grok the significance of.
GPT began outputting a fairly comprehensive CDK, which is code-As-configuration, a layer atop AWS SAM, which is another layer over AWS CloudFormation.
The script it created had all the buckets, certificates, policies, and the CloudFront distribution and linked everything together.
The script was in JavaScript, and I asked it to convert it to Python for me.
Then GPT gave me instructions on how to go into my domain provider to setup a CNAME for the CloudFront subdomain of my choice.
So let's talk about the process that has replaced:
Normally, this would have been my workflow--see if its similar to what yours might be if you're a line-of-business application developer like me:
I would have performed a Google search for "AWS CDN How" or something like that.
Next, I would read AWS documentation until I felt comfortable enough about the components involved. I'd then go into AWS Console and set one up manually by creating the buckets, policies, certificates, and the CloudFront distribution.
I would have wanted a custom domain, so I'd figure out how to setup the CNAME to point to the CloudFront distribution. This would've taken a long time for me personally. Probably a few hours with stupid issues like not having a '.' at the end of the CNAME target. That has actually tripped me up in the past.
Next to make sure I really understood what was going on-- I would tear the CDN down, build it back up, and take notes and put them in the company Confluence.
Afterwards, I would try to automate it the process. Being a generalist and not a DevOps person, I'd probably start searching for some older tech I had heard about but never used: "Ansible AWS", "Puppet AWS" or "Chef AWS".
I'd quickly learn about a thing called CloudFormation and start reading up on it.
I'd realize I had zero interest in learning CloudFormation because it is tedious and error-prone. I would begin to Google for something on top of it.
I'd likely get dumped into a SAM tutorial
Next, I'd start building out a prototype in SAM, and by the time it was half-way done and the week was almost over I'd watch a YouTube video and find out about: CDK
And this is what my career has been like my whole life.
The conclusion
GPT was giving me a Python script I could put to use in seconds. It wasn't perfect, and I had some hiccups along the way, but by the end of the day, I had a fully functioning CDN with a domain pointing to it, and I don't think I even wanted one!
Not only that, but it freed up time for me to learn about various security features of AWS CDN that I otherwise wouldn't have.
It helped me install edge lambdas and write code to automatically resize images on demand with Python Pillow. It did that very fast too.
I had a better understanding of solution because GPT cut through all the ambiguity of search faster than I could. It doesn't always do it perfect, but that is not the point. It usually does it much better.
So, again I say:
I don't use GPT for writing code because that's not what it's good at.
I use GPT to automate the very expensive, very time-consuming, highly compensated function of specialized Google Search
And, that's the bulk of what we, most of us programmers do, whether we want to admit it or not.
For your broader point, I would be more inclined to agree if you had given it a more abstract task of solving some non-IT-related problem by developing an application from scratch. But maybe my perception of a “programmer” is naive?