Answer to: How to deal with a programmer who acts as a proxy for AI?
Score: 2
Code reviews are next to impossible without defining what you are checking against.
Here your problem is your annoyance with the fact that you might as well write the code yourself and cut out the middle man.
But if you have a list of things that should be checked in a code review, then you can check that list of things regardless of whether
or not AI is writing the code.
Correctness
Tests must pass. Run test automatically and fail on fail
Test coverage
Tests must exist. Check automatically and fail under a percentage.
Coding style.
Run a linter and auto fail on its complaints
Performance
Add performance tests/static analysis and run automatically.
Match the spec.
Human check, read spec, run code, think. I would ask the submitter to give instruction in the PR, e.g. link to ticket, page that's changed, what to click to demonstrate feature etc.
Whatever else you want.
If you have some rules like this for PRs then evaluating a PR is a fixed task that takes the same amount of time however the code is written.
If the AI writes code that passes the tests then great. If it doesn't then you just have to say (or hopefully automatically say) "Fails rule 2" or whatever.
Better yet, you can say "Have you run through the PR tests yourself?" You should only be getting failing PRs when there is some justifiable problem that needs a human override, i.e.
I know it fails performance but we have a pass for this feature
The linter fails on this style but it's correct for the library we are using
Code coverage fails, but it's because I refactored and all the old code is being counted as new
You never have to ask "Why IsNullOrWhiteSpace?" because either a performance or unit test will fail, not exist, or it won't matter.
If you find you are constantly replying "Does not match spec" Then I call the guy up and say "Hey, this doesn't seem to match the spec? What about feature X?" They won't be able to copy and paste your voice, and you will soon work out if they don't understand the spec or are just being lazy.
View Question ↗
Question
Parent Entity
Score: 7 • Views: 145
Site: softwareengineering
Other Comments / Reviews
SaaS Metrics