2 ms·
You have no idea if the alternative code you would have written would have been idiomatic or had some critical flaw. We have 50+ years of software engineering
by fooker 4y ago
You have no idea if the alternative code you would have written would have been idiomatic or had some critical flaw.
We have 50+ years of software engineering wisdom to deal with these issues. Testing, Fuzzing, version control, code reviews, the whole gauntlet.
- macNchz 4y agoI mean... I certainly know which languages I can write idiomatic code in and which I cannot. I can't know that my code will be free of critical flaws, but I do understand the common sources of flaws and techniques to avoid them, and I'm quite confident I can build small features like this that simply aren't vulnerable to SQL injection, on the first try and without requiring fuzzers or code review: https://infosec.exchange/@malwaretech/110029899620668108 https://infosec.exchange/@malwaretech/110029899620668108
- fooker 4y agoYou don’t have to accept the suggestions as-is. It’s just code, you can edit it as much as you like. Getting a good idiomatic starting point is a great boost.
- jjeaff 4y agoI'm confident enough in most languages I write in to recognize correct code. But I am not usually so familiar that I can conjure the exact syntax for many specialized things I need. Copilot is just a much quicker way to get what I need without looking it up.
- fanagra32 4y ago> You have no idea if the alternative code you would have written would have been idiomatic or had some critical flaw. But I have a feeling for both, which is one of the key components of the skill in our trade. For idionmatic code, I know the degree to which I'm following how things "should" be done or are "usually" done in a given language. If I'm uncertain, I know that. GPT won't tell me this. Worse, it will confidently claim things, possibly even if presented with evidence to the contrary. For critical flaws, I know the "dark corners" of the code. Cases which were not obvious to handle or required some trick, etc. I'll test those specifically. With GPTs code, I have no idea what the critical cases are. I can read the code and can try to guess. But it's like outsourcing writing tests to a QA department. Never donna be as effective as the original author of the code. And if I can't trust GPT to write correct code, I can't trust it to write a good test for the code. So, neither the original author of the code (GPT) nor somebody external (me) will be able to test the result properly