Razvoj uz podršku umjetne inteligencije: što kritičari prešućuju
Svaki alat ima svog skeptika. Njegovi argumenti ne prežive jedno jedino protupitanje.
Uvod
Postoji vrsta ljudi koja odbaci novu tehnologiju brže nego što je uopće stigne otvoriti. Nazovimo ga od milja: skeptik. Kod automobila je njegov predak oplakivao kraj konjske zaprege, kod kalkulatora propast računanja napamet, kod interneta dobri stari registrator za spise. A danas, kod razvoja softvera uz podršku umjetne inteligencije, sjedi na sastanku, značajno mršti čelo i točno zna zašto sve to ništa ne valja.
Svoje primjedbe iznosi poput somelijera koji prigovara na čep: s otmjenošću, sa žaljenjem, gotovo brižno. „To ipak nije održivo.“ „Nedostaje kontrola.“ „Previše je nefleksibilno.“ Čovjek bi mu gotovo dodijelio odličje za stav. No nažalost nijedan njegov argument ne preživi prvo iskreno protupitanje. Ovaj članak rastavlja najomiljenije – uljudno, ali temeljito.
1. „Manjak fleksibilnosti“ – najapsurdniji argument od svih
Njegova najdraža riječ glasi: manjak fleksibilnosti – izgovorena s pobožnošću čovjeka koji je napokon pronašao riječ koja zvuči stručno, a ni na što ga ne obvezuje. Navodno je razvoj uz podršku umjetne inteligencije krut, šabloniziran, gotov s police, standard umjesto rada po mjeri. Prije nego što klikne na sljedeći slajd, jedno nedužno protupitanje:
Što je, molim vas, fleksibilnije?
Njegov klasik kad se usred projekta promijeni zahtjev: zakazati rundu usklađivanja, dogovoriti dodatni sastanak, preraditi koncept, kalkulirati tri tjedna – ali barem je bilo keksa. Put uz podršku umjetne inteligencije: opisati promjenu jasnim riječima, i nekoliko minuta poslije već postoji prva varijanta. Ne jedno rješenje – tri pristupa, jedan pored drugoga, usporediva još prije ručka za koji je upravo rezervirao stol.
Fleksibilnost ne znači kliknuti predložak. Fleksibilnost znači: izreći ideju danas ujutro i držati je u ruci danas poslijepodne. Isprobati drugačiji izgled a da to ne stoji tri radna dana i jednu rundu suosjećanja. Ponovno odbaciti neku funkciju a da nitko uvrijeđeno ne zaklopi bilježnicu. Upravo je to svakodnevica razvoja uz podršku umjetne inteligencije.
Prigovor čak stoji naglavačke: šablone su alati za izradu stranica – uvijek iste teme s police. Individualno razvijen softver, kod kojega umjetna inteligencija preuzima tupi, ponavljajući posao, upravo je suprotnost šabloni. Pregovoran je do posljednjeg retka – i baš to skeptiku zadaje toliko muke.
Tko kaže „nefleksibilno“, zapravo gotovo uvijek misli: „Još to nikada nisam vidio na djelu – i, iskreno, radije i ne bih.“
2. „To ipak nije pravo programiranje“
Argument čuvara vrata u čistom obliku, izrečen s blagim žaljenjem izbacivača koji vas ne pušta unutra: ovdje pravi razvojni programeri, ondje ostali. No nitko pred gotovom kućom ne pita je li krovište postavljeno čekićem ili akumulatorskom bušilicom. Na kraju stoji kuća – i ona drži, ili ne drži.
Uloge se nisu raspale, nego su se pomaknule. O arhitekturi odlučuje razvojni programer. O tome koji podaci kako teku, odlučuje razvojni programer. Što ide zajedno, što je sigurno, što se testira – razvojni programer. Umjetna inteligencija ne piše djelo, ona samo brže vodi pero. Odgovornost, prosudba i smjer ostaju kod čovjeka. Otpada tek svečano mrštenje čela.
Jedino iskreno mjerilo jest proizvod. Učitava li se brzo? Je li siguran? Može li se održavati i proširivati? Rješava li problem klijenta? Ta pitanja nikada nisu pitala koji je alat bio na djelu – a nije, uostalom, ni klijent.
3. „Ne razumiješ vlastiti kôd“
Slika iza toga je predivno dramatična: netko klikne na gumb, slijepo kopira ono što izađe, gurne to u produkciju i zviždučući ode kući. To bi doista bilo nemarno – samo što s profesionalnim radom ima onoliko veze koliko i bojanje po brojevima s Rembrandtom.
Svaki se redak čita. Svaki se redak provjerava. Ono što nije shvaćeno ne ide u produkciju – tako jednostavno glasi pravilo. A u praksi se argument često okrene u suprotnost: kôd nastao uz podršku umjetne inteligencije često je urednije dokumentiran, dosljednije imenovan i temeljitije komentiran od nabrzinu napisanog ručnog rada u 23 sata pred rok.
Razumijevanje ne nastaje time što svaki znak sam tipkaš – inače bi najbrži daktilograf automatski bio najbolji arhitekt. Nastaje time što znaš što se treba dogoditi i prepoznaješ događa li se to. To je oduvijek bila srž ovoga zanimanja, davno prije nego što ga je postalo pomodno braniti.
4. „Brzo znači aljkavo“
Tvrdokorna misaona pogreška, skeptiku osobito draga: izjednačavanje tempa s nemarom. Kao da je sporost obilježje kvalitete – kao da bi Wi-Fi stigao iz ekološkog uzgoja samo ako se učitava dovoljno sporo. No brzina ne nastaje time što se izostavlja kvaliteta, nego time što se izostavlja ono tupo – boilerplate, konfiguracija, dvadeseti obrazac, traženje sintakse.
Ušteđeno vrijeme ne nestaje – seli se onamo gdje je važno.
U arhitekturu, u pristupačnost, u rubne slučajeve, u pravo testiranje, u promišljanje korisničkog vođenja. Dakle upravo u one stvari koje odlučuju o kvaliteti i za koje u ručnom radu, između sastanka i runde usklađivanja, na kraju nikada nije preostalo dovoljno sati.
5. Zašto je otpor ipak tako žestok
Ako argumenti tako slabo drže – zašto se propovijedaju sa žarom pravog vjernika? Iskren odgovor rijetko ima veze s tehnikom, a gotovo uvijek s računom na kraju mjeseca.
Tko je desetljećima usvajao da se vrijednost mjeri naplaćenim satima, tome je prijeteća tehnologija koja u satima obavi ono što se prije naplaćivalo tjednima. To je ljudski i razumljivo. No to je argument o vlastitom poslovnom modelu – ne o samoj stvari. Skeptik na kraju ne brani kvalitetu. Brani svoju evidenciju sati.
Novi alati nikada nisu bili prijetnja onima koji žele nešto stvoriti. Uvijek su bili prijetnja samo onima koji su živjeli od utroška, a ne od rezultata.
Zaključak: na kraju se broji rezultat
Klijent ne pita kojim je alatom nešto nastalo. On pita: Radi li? Je li bilo brzo gotovo? Može li se održavati? Je li bilo pristupačno po cijeni? I – točka na kojoj se sve odlučuje – može li se promijeniti ako se predomislim?
Razvoj uz podršku umjetne inteligencije na svako od tih pet pitanja odgovara s da. Osobito na posljednje. I zato je upravo prigovor o manjku fleksibilnosti ne samo pogrešan – on od riječi do riječi opisuje najveću snagu.
Kritičari i dalje raspravljaju o metodi. Klijenti u međuvremenu dobivaju svoj rezultat – brže, urednije i prilagodljivije nego ikad prije. Na vama je da odaberete na kojoj strani ove rečenice želite stajati.
Kako taj pristup konkretno izgleda, otvoreno piše na ovoj stranici: razvojni pristup – transparentno objašnjeno, bez mitova, bez marketinške magle i posve bez značajnog mrštenja čela.
