Hogyan változtatja meg az AI, a Mesterséges Intelligencia, a szoftverfejlesztés folyamatát és a programozók életét? Kiváltja a munkájukat vagy csak kiegészíti? Miben tud több lenni az ember egy gépnél? Egyáltalán hogyan lehetne pozícionálni az AI-t?
2022 végén robbant be, majd mindenki azt hitte, hogy a digitális munkaköröknek nagyjából befellegzett, hiszen jön a gép és pár parancsból megcsinálja ugyanazt másodpercek alatt, ami egyébként napokig tartana. Azóta persze kiderült, hogy nem ennyire egyértelmű a folyamat, de a téma nem ült le, a különböző AI-k folyamatosan fejlődnek. De mire képes egyáltalán egy AI?
Tetszőleges témában tetszőlegesen megadott szöveges kérdéseket, leírásokat, parancsokat tud értelmezni és az értelmezéshez leginkább passzoló komplex válaszokat tud visszaadni. Akár forráskódot is. Pont ettől fog intelligensnek tűnni, hogy nem előre definiált kulcsszavakat tud értelmezni, hanem tetszőlegesen megfogalmazottakat. A válasza pedig nem olyan weboldalak listája, amik jó eséllyel tartalmazzák a feltett kérdésre a választ (Hello Google…), hanem az ezekből a forrásokból előállított válasz, amely akár közvetlenül is felhasználható.
Az AI nem saját magától gondol ki válaszokat.
Az AI csak olyan válaszokat tud adni, amit valaki már előállított korábban. Adsz neki egy feladatleírást, visszaad egy forráskódot majd tudsz rajta változtatásokat kérni. És így tudod finomítani a forráskódot egyre jobban és jobban. Ettől lesz egy igazán erős eszköz. Leginkább jól körülhatárolható, sablon feladatok, algoritmusok megoldására képes. Ad egy alapot, amiből már ki tudsz indulni. Így neked nem arra kell energiát fektetned, hogy hogyan kell növekvő sorrendbe rendezni egy tömböt vagy azon gondolkozni, hogy hogyan kell készíteni egy alap konfigurációt keretrendszerekhez. De neked is értened kell, hogy mi történik.

Ha valaki csak Facebook kommentekből tájékozódik, akkor könnyen lehet az az érzése, hogy teljesen felesleges programozást tanulni, hiszen az AI is tud kódot írni, így emberi munkára már nincs szükség. Én is heti szinten megkapom ezeket a kommenteket. A gond csak az ezzel a képlettel, hogy a Programozó nem egyenlő a kódírással. Egy akár évekig is tartó szoftverfejlesztési projekt pedig nem csak annyi, hogy egy meglévő weboldalon ki kell cserélni egy képet vagy egy 1-2 oldalas leírásból kell egy működő szoftver. Az AI nem kiváltja az emberi munkát, inkább kiegészíti és gyorsítja. Azáltal, hogy kisebb algoritmusokhoz rögtön tud adni egy kiindulási alapot.
Véleményem szerint nincs új a nap alatt. Hasonlóakat tesz a Google vagy a Youtube is. Persze az AI már nagyságrendekkel jobban csinálja ezt, ez tény. De ha nem tudsz tőle kérdezni és nem tudod értelmezni a választ, amit kapsz tőle, akkor nem lesz a segítségedre. Ahogy egy laikus sem fog tudni pár Youtube videó után szerver oldali alkalmazást készíteni. Illetve valamit lehet fog tudni, de az a hobbi kategória és nem az üzleti része a szakmának.
Egy szoftverfejlesztő, egy programozó feladata sokrétű.
Nem csak kódot kell „gyártani”. Azt is kell, de rengeteg kreatív része is van a folyamatnak. Meg kell érteni, fel kell dolgozni a megrendelő elvárásait és olyan megoldásokat kell kitalálni, ami lefedi a vevő igényeit és ő hosszútávon is tudja majd használni az alkalmazást, amit a végén kapott. Ezen felül technikai értelemben is megbízható, nem omlik össze, nem fagy ki, nem lopja el az adatokat. Egy programozónak ebben van a legnagyobb hozzáadott értéke. Ha már sikerült előállítanunk egy olyan program koncepciót, egy olyan programtervet, ami minden elvárásunkat kielégíti, akkor a munka nagyobb részét már elvégeztük. Ha jó a koncepció, akkor abból kódot írni ideális esetben már nem olyan bonyolult. Nyilván kódot is kell írni, de nem ebben van az igazi érték. Ez az a rész, amiben az AI tud segíteni, de nem váltja ki. Nem tudsz az AI-nak adni egy 50-100-150 oldalas dokumentációt, hogy ezt kérem. Tudsz neki adni 1-2 oldalt, egy jól körülhatárolható feladatot vagy egy hibaüzenetet, amire ő tud neked adni egy jó választ. Jelenleg itt tartunk, de abban is biztos vagyok, hogy a jövőben egyre komplexebb feladatokat tudnak majd megoldani. Erre is fel kell készülnöd. Hogyan?
Folyamatosan képzed magad, fejleszted magad és nem várod meg, amíg elévül a tudásod. Az AI is akkor tud jó válaszokat adni, ha jó kérdéseket tettek fel neki. Így az AI ismerete és egyre magasabb szintű használata is be szivárogni a programozói elvárások közé előbb vagy utóbb.
De jelenleg még nem vált ki emberi munkát. Junior szinten sem. Hiszen egy Junior programozónak sem csak a kódgyártás a feladata. Ez csak része a munkájának számos egyéb folyamat mellett.
+1 Jogi és felelősségi kérdések
Ahogyan említettem, „Az AI csak olyan válaszokat tud adni, amit valaki már előállított korábban”. Ettől a ponttól kezdve pedig felmerülnek jogi kérdések abban az esetben, ha valaki egy az egyben felhasználja az AI által generált kódot. Aki dolgozott már a szakmában komoly üzleti alkalmazásokon, az tisztában van a szellemi tulajdon fogalmával és bizony ezt az ipar nem veszi félvállról. Ahogyan egy könyvben sem használhatsz csak úgy fel más által készített tartalmat, úgy a programozásban sem teheted ezt meg. Az AI használatánál viszont felmerül a kérdés: Kinek a szellemi tulajdona a generált kód? Az AI-é? Az AI-t kifejlesztő cégé? Vagy annak a tulajdona, akitől az AI megtanulta? Esetleg valahogyan a saját tulajdonommá vált? Nem könnyű kérdések ezek és annak aki csak hobbiból programozgat nem is igazán számít. Viszont nagy cégeknél ez egy komoly kérdés, ami miatt az AI hátrányból indul.
Hasonlóan izgalmas kérdés a felelősség kérdése. Ha én felhasználom az AI által előállított forráskódot, esetleg ki is próbálom és jónak tűnik majd kiderül, hogy mégsem, akkor kié a felelősség? Ez megint egy szürke zóna. De az látszik, hogy nem csak technikai értelemben kell még fejlődnie az AI használatának, számos kérdést figyelembe kell venni mielőtt nagyobb volumenű feladatokra használhatóak volnának.

Szia, Bajor Tamás vagyok, a Programozz Te Is oldal alapítója és oktatója. Köszi, hogy itt vagy és éppen az én cikkem olvasására fordítod a drága idődet! Azért dolgozom minden nap, hogy neked segítsek a programozás világában minél profibban elmélyülni. A cikkek egyetlen írójaként rengeteg munkát és energiát fektetek mind az oldalba, mind pedig az oktatásba!
Arra kérlek, ha tetszett cikk amit olvastál vagy szívesen veszed az ingyenes anyagokat akkor dobj egy Like-ot a Facebook-on, ezzel is támogatva a munkámat. Neked ez egy apró kattintás, nekem pedig hatalmas segítség!