This should not be surprising: There is a large intersection between engineering and mathematics. And mathematics is art.
This should not be surprising: There is a large intersection between engineering and mathematics. And mathematics is art.
Just the step from "program" => "spec" is already a big one. So big, that it is rarely done today. Test-driven development is an attempt at this, but the problem is that tests cannot truly verify a spec. Proofs can. Of course, you can combine tests and proofs, for example proofs for correctness, tests to make sure other measures like speed and cost are sane. But if you want to be absolutely sure, you will need to replace all tests by proofs.
Most people don't understand proof, but if you don't understand proof in 10 years, you will be out of a job as a programmer.
No, that's not gonna happen. Can you write a proof of an order for you go to go a fresh market to buy ingredient of a menu I want to cook? "Hey, go buy ingredients for my noodle menu whose result is my taste"
Regardless, the studies have already demonstrated this: As you go higher-level, you write roughly the same amount of code and bugs per line, but also implement more features per line.
An AI tool will be ready for use when it demonstrates that same capability of "same bugs per line, more features per line".
How would one tell if the AI-created "proof" is both accurate and adequate?
Just yesterday I was playing with chatgpt and found an error between the code it generated and the explanation of the code. It contradicted itself.
However when I caught the error I asked it to further explain since it appears to contradict the code it generated. It then came back with an apology and it did state it made a mistake and was able to understand the error and fix it. Although I was specific about the mistake. I might try again later today to do the same test and see if it learned or generates the same error again .If it does I will ask it to confirm that its explanation and code match versus pointing out the error.
I sense that "I'm sorry, Dave..." isn't quite as far away as we thought...
Even your single datapoint explanation/POV/understanding will help to accelerate this entire process.
I have to keep reminding programmers that Co-Pilot exists, is real, and makes LESS mistakes than entry-level datagrunt software engineers. And it costs pennies of electricity to run daily.
All capitalism is: the search to maximize efficiency; monotonous human labor (~80%) is the most expensive part of this equation... this is not an "if," rather "when" situation. Putting your head into the sand will be a safe place for lesser programmers to still make money, for at least another few years.
But as was said elsewhere in this thread: if you do not know how to write PROOF code to VERIFY these inevitable AI-assistant-coders' outputs, you will not have a job. Human mindpower cannot compete in the bruteforce arena — all ChatGPT is right now is a bunch of autistic middle-aged asshole trolls with WAY TOO MUCH MONEY, and EVEN MORE TIME (to play around with this).
I encourage you as a more-artistic-than-technical (but still fairly intelligent) person to "just pretend" that this is your new Fiverr-tasker. Because it is already, and will be once more-widely understood / accepted.
Peace.