005 · Humano opere creatum
· Mõtisklus
Kas see väärib trükkimist?
- future-of-work
- tehisintellekt
- agendid
Kuidas käib agentne arendus?
Minu tänane tunnetus on, et see meenutab lauamängu „Tsirkus”. Oled lasknud tunnetel, ideedel ja muudel võngetel koodi kirjutada ning jõudnud juba mõne sammu kaugusele finaalist. Siis satud äkki ruudule, mis sõidutab nii nupu kui ka meeleolu tagasi põhja.
Oled korraga pettunud ja veidi rõõmus. Järelikult on inimest veel vaja.
Tehisaru kaitsepühak Fortuuna ei olnud seekord selle repositooriumi poolel. Kood läks koos ideega lappama, kuigi tegemist oli alles esimese või teise katsega.
Mäng mänguks. Mida teha koodiga, mida oled TI abil järjest kasvatanud?
Ega midagi. Kui sa ise sellest enam aru ei saa ega taha selle mõistmiseks vajalikku tööd teha, tuleb see halastamatult ära visata.
Leidub küllalt ebaõnnestumise õpikunäiteid, kus koodi lugemata ja otsuseid mõistmata jõutakse ühe kvartaliga ei tea kuhu. Sama juhtub muidugi ka aastatega inimeste kirjutatud koodiga. Erinevus on peamiselt kiiruses. Agentne arendus võimaldab segadust kasvatada tempoga, millest varem võis ainult unistada.
Kui genereeritud kood pole veel tootmisse jõudnud, on loobumine suhteliselt odav. Ometi on inimlik loota, et riskid ei realiseeru ning sinu tahte, promptide ja juhuse koosmõjul sündinud tarkvara lihtsalt töötab.
Kahjuks ei ole lootus kontrollimehhanism.
Mingil hetkel algavad viimistluse piinad. Tuleb eemaldada kood, funktsioonid ja skillid, mis eesmärki ei teeni. Kui ei sina ega agent enam toimuvast aru saa, ei ole lahendus muutunud keerukaks. See on lihtsalt kontrolli alt väljunud.
Sellesse punkti jõuavad ilmselt ka paljud käsitsi kirjutatud ehk mahekoodina kasvanud koodibaasid. Vahepeal kaob valvsus. Märkamatult tehakse hooletuid redaktsioone, lisatakse „igaks juhuks” uusi kihte või avastatakse, et soovid ei ole loodusseadustega kooskõlas.
Siis tuleb olla halastamatu.
Otsi uuesti üles eesmärk. Kirjuta see faili “GOAL.md”. Eemalda kõik, mis seda ei teeni. Vajaduse korral alusta uuesti.
Kummaline on see, et vahel tuleb kirja panna ka mitte-eesmärgid. Lahke mudel tahab muidu parandada kogu maailma valu. Kui sa ei ütle talle, mida ta ei tohi lahendada, leiab ta kiiresti veel kümme probleemi, mida keegi ei palunud puudutada.
Agentse arenduse keskne oskus ei ole enam koodi genereerimine. Koodi saab palju, kiiresti ja odavalt. Keskseks muutub otsustamine: mida üldse ehitada, mida uskuda, mida alles jätta ja mida kustutada.
Esimeses postituses (Trükikoja uksel) ehmatas skriptooriumi kirjutajat see, kui odavaks oli muutunud raamatute tiražeerimine. Kui teksti kopeerimine muutus lihtsaks, ei olnud enam peamine küsimus, kuidas raamatut valmistada. Olulisemaks muutus küsimus, milline käsikiri üldse väärib paljundamist.
Agentse arendusega oleme sarnases kohas.
Koodi tootmine muutub järjest odavamaks. Seetõttu liigub suurim väljakutse sõnastusse, mis eelneb genereerimisele, ning toimetamisse, mis sellele järgneb.
Enne kui saadame spetsifikatsiooni trükikotta, peaksime küsima:
Kas see väärib trükkimist?
«“Whenever you feel an impulse to perpetrate a piece of exceptionally fine writing, obey it wholeheartedly and delete it before sending your manuscript to press. Murder your darlings.”»
Sir Arthur Quiller-Couch