4 ms·
Not really. Developers become TESTERS. Except developers don't want to be testers, and will do it badly. Testing is hard. No, sorry, I meant to write that COMP
by satisfice 3y ago
Not really. Developers become TESTERS. Except developers don't want to be testers, and will do it badly.
Testing is hard. No, sorry, I meant to write that COMPETENT testing is hard. Any idiot can do shallow testing and say he tested, and many do. That's not the same thing as doing a professional job of it.
But, the fact is, AI can't be a software developer, because a software developer is capable of being accountable. AI is a machine. Machines cannot be accountable. You can't sue them. You can't jail them. You can't reform them. A machine cannot be a citizen.
A programmer is someone who mediates the gateway between the world of machines and the world of people. This is because machines behave in very particular ways. Just as you should not represent yourself in a court of law, no one who doesn't understand machines should attempt to create a professional grade products with them... Or if they do, expect it to be poor quality.
- KingOfCoders 3y agoA developer is accountable in the way of being fired. Not accountable in the way of paying for the loss. In this way an AI is accountable too, I can switch from Claude to Mistral.
- wruza 3y agoStrange argument, it's not common to sue and jail developers, and our average software isn't particularly good quality. Companies will use whatever works for less money, as they always did.
- KingOfCoders 3y agoI also see very limited accountability beyond firing. There was some in #Dieselgate (Developers going to jail for their code).
- rightbyte 3y agoJames Robert Liang got jail. It is quite strange, since the defeat device part was actually quite insignificant to work around a vehicle reset during testing and skip the warm up timer. The real scandal is that emission treatment in diesels did not work outside of synthetic kinda steady state tests. And that applied to way more manufacturers than VW.
- appplication 3y agoThis is the truth. Everyone wants AI to write their tests, but that’s backwards. AI will write the code and programmers will write the tests. The tests are the real business logic - binary assertions of how a system should or should not behave. The internals of how that happens are inconsequential.
- zeroonetwothree 3y agoInconsequential until you start caring performance, scaling, reliability, interdependence with other systems, maintainability, or any other things that tests don’t assert.
- xboxnolifes 3y agoYou can test performance, and you can monitor reliability. Scale and interdependence are spec requirements that are this theoretical AI's job. Maintainability is irrelevant to everyone here except the theoretical AI, as the AI does the maintaining.
- ptx 3y agoThis sounds a lot like some kind of government procurement process, which don't have a reputation for producing particularly good IT systems.
- dontupvoteme 3y agoWhy not simply use AI to implement monitoring and evaluation so incredibly fine grained any human would go insane if they had to do it?
- staunton 3y agoI look forward to writing specifications ("property tests without RNG") in a theorem prover language and some AI writing the program against my specification.
- nivenhuh 3y agoI've used ChatGPT to write my tests. It's pretty effective at getting the first 5-6 use cases written out, but in a style that isn't correct. Copy/paste a code module, ask it to write the tests. Then, in the same context, you correct it by providing it with more information about how you like to structure the tests. It starts to understand the "style". Then, you start to provide the context with testing concerns. By the end of it, the AI context is pretty good (80-90'ish%). It's nice, as a developer, to be able to say: "test that asset is deleted when DELETE /asset/:id", and the AI converts that into a proper test case, using familiar variables / test structure / corrects the abbreviated text into a proper test title, etc..
- dontupvoteme 3y agoTesting is what LLM coding models are born for.. - We want this - We Had this - This happened - Already at work