Leválthatja a szoftverfejlesztőket a mesterséges intelligencia?
Mára nagyjából mindenkit egyetért abban, hogy a nagyon közeli jövőben a repetitív feladatokra épülő állások óriási része a gépesítés, automatizálás folytán a megszűnés szélére sodródhat, egy igen széles réteget téve ezzel munkanélkülivé. Azonban talán kevéssé gondolnánk — révén hogy a tech iparágra némiképp "védettként" tekintünk sokan —, hogy a szoftvermérnökök jelentős része is megfogalmaz hasonló félelmeket egy legújabb kutatás szerint.
A Computerworld számolt be nemrég az Evans Data Corp. által készített tanulmányról, amelyben 550 fejlesztőt kérdeztek meg arról, mit tartanak a karrierjükre nézve a legfenyegetőbb körülménynek a jövőben. A válaszadók közel egyharmadának a legkomolyabb félelme, hogy az AI hamarosan kiválthatja majd a munkáját. Ezzel ez a válasz a lista második helyén végzett (az első legnagyobb félelem az, hogy az általa használt környezet elavulttá válik).
Ennek a félelemnek — talán kissé meglepő módon — van is némi alapja, már ha hiszünk a jövőkutató akadémikusoknak. Az Oxford University egy, a foglalkoztatottság jövőjére vonatkozó tanulmánya szerint a gépi tanulás hamarosan lehetővé teszi, hogy algoritmusok optimalizáljanak bizonyos szoftvertervezési döntéseket, és az automatizált bugkeresésben is komoly lehetőségek rejtőznek.
A legtöbb szakértő szerint ez a félelem mégis eltúlzott, hasonlóan ahhoz, ahogy a fejlesztők általában attól is túlzottan félnek, hogy az általuk ismert platform elavulttá válhat. Az automatizáció a tech világban is egyelőre csak a sematikus feladatokat tudja kiváltani. Az általános vélemény szerint nagyon is reális, hogy egy magas szintű terv részleteinek implementációját (vagy legalább egy részét) gépek végezzék, azonban rettentő messze vagyunk még attól, hogy a szoftvertervezés kreatív részét is gépek végezzék el — ha ez egyáltalán lehetséges. Lehetséges?
Bár erre a kérdésre jelenleg valószínűleg nem tudunk korrekt választ adni, érdemes lehet komplexitás-elméleti szempontból vizsgálni a témát. Itt a legrelevánsabb eredmény talán a Rice tétel, amely — eléggé pongyolán fogalmazva — azt mondja ki, hogy nem létezik olyan teljesen automatikus módszer, amely általánosan meg tudna válaszolni egy tetszőleges számítógép-programra vonatkozó nemtriviális kérdéseket. Bár nyilván egy főleg elméleti eredményről van szó, mégis, ha egy számítógép még megválaszolni sem képes algoritmusokkal, programokkal kapcsolatos nemtriviális kérdéseket, nehéz elképzelni, hogy ennek ellenére képes lenne valahogy levezetni azokat az algoritmusokat.
A szoftverfejlesztés, mint az informális igények gépek által végrehajtható formális leírássá történő alakítása belátható időn belül nem fog eltűnni. Ez a zárszó valószínűleg egyfajta megoldást is ad számunkra. A szoftverfejlesztés nem elágazásokról és loopokról szól, hanem (számos egyéb mellett) az absztrakciós és tervezési képességről, a kreativitásról, és a felhasználói igények megértéséről. Aki fél attól, hogy egy gép a jövőben elveheti a munkáját, nem járhat rosszul, ha a szakma "emberközelibb" aspektusaira koncentrál.
Ti mit gondoltok, reális esélye van, hogy a jövőben a kódolás, szoftverfejlesztés teljesen automatizálttá válik?