Egy év GitHub Copilot tapasztalatai

Leonardo.Ai-on generálva

Egy évvel ezelőtt elkezdtem használni a Github Copilot-ot, és azóta folyamatosan nagy segítségemre van a fejlesztésben. Ez a bejegyzés az elmúlt év tapasztalatait foglalja össze és a gondolataimat a GitHub Copilot használatáról.

Első élmények

Anno nagy lelkesedéssel kezdtem el használni a Copilot-ot, mert akkor már 1-2 éve az járt a fejemben, hogy miért van az, hogy az elmúlt 10 évben csak annyi történt a kód ajánlás terén, hogy egy osztály függvényeit nem ábc sorrendben kapom meg az IDE-tól, hanem a használati gyakoriságuk szerint, esetleg némi kontextus alapján. A Copilot már az első kód ajánlásnál meggyőzött, hogy ez az az eszköz, amire vártam, vágytam, és, hogy érdemes lesz foglalkozni vele. Első ajánlásra pontosan azt a kódot hozta, amire szükségem volt! Ami elsőre varázslatnak tűnt, mára már természetes, de továbbra is nagy segítség és még mindig képes meglepni a pontos és releváns kód ajánlásaival.

Kódírási segítségnyújtás

A Copilot egyik legnagyobb előnye a kódírási feladatokban nyújtott segítség. A javasolt kód sorok gyakran pontosan illeszkednek az adott kontextusba, így időt takarítanak meg. Mivel a kód ajánlás nem egy új keletű dolog az IDE-kben, így csak annyit kellett megszokni, hogy nem egy sor ajánlást kapok, hanem akár 5-10 sort is.

Határozott gondolatmenet követése

A Copilot akkor tud igazán használható segítséget nyújtani, ha van egy elképzelésünk, hogy mit fogunk írni. Ha megvan a fejünkben az irány, akkor az ajánlot kódról is pillanatok alatt el tudjuk dönteni, hogy jó-e vagy sem. Ha nincs elképzelésünk, akkor a Copilot nem fogja tudni helyettesíteni a gondolkodást vagy éppen olyan irányba fog vezetni, ami pont hátráltatja a haladást.

Ötletelés

Ha elakadunk a kódolásban, akár technikai, akár tervezési kérdés miatt vagy csak egy kis ötletelés kell, fordulhatunk a Copilot-hoz. A chat funkció segítségével kérdezhetünk, felvethetjük a problémánkat, de fontos, hogy kritikusan kezeljük a javaslatokat, és ne hagyjuk, hogy rossz irányba vezessen minket az AI. Az AI nem arra való, hogy megoldja a problémánkat, mert ehhez nem kap meg minden információt, csak arra, hogy segítsen a megoldásban.

Komplexebb kódok generálása

Komplexebb algoritmusok és nagyobb kód részletek generálására is jól használható. Megtévesztő lehet, hogy a kódunkba passzoló megoldást kapunk, ami sokszor még szintaktikailag is helyes, így haladnánk is tovább. Fontos azonban óvatosnak lenni, ha olyan kódot kérünk, ami mögött nem ismerjük kellőképpen az elméletet. Volt, hogy kértem tőle egy függvényt egy gráf BFS bejárására, amit rögtön meg is adott, de később órákig kerestem a hibát, mire megtaláltam az apró logikai hibát, amit beletett a kódba.

Az AI korlátai

Fontos megjegyezni, hogy a Copilot egy statisztikai modelleken alapuló eszköz, és nem tud önállóan programozni, de gondolkodni sem. Ha minden információt megkapna a kérdés mellé, ami a fejünkben van a témával kapcsolatban, akkor elég jó válaszokat tudna adni, de enélkül nem is várhatunk komplex kérdésre pontos választ. Az AI nem tudja, hogy miért kérdezzük, csak azt, hogy mit kérdezünk, és ebből próbál válaszolni. A válasz pedig csak statisztikai alapon jön létre, ami nem feltétlenül helyes vagy releváns. Épp ezért egy pár soros kód ajánlásnál sokkal jobban működik, mint egy komplexebb probléma megoldásánál, mert az előbbinél elég szük lehetőség van a válaszokra, az utóbbihoz képest.

Chat funkció

A Copilot chat funkciója kifejezetten hasznos, ha elakadunk. A chaten keresztül kérdéseket tehetünk fel az AI-nak, és releváns válaszokat kaphatunk anélkül, hogy el kellene hagynunk az IDE-t. Így nem a böngészőben kell 1-2 keresés után 3-5 találatból összeollózni a választ, hanem akár rögtön kód formájában megkapjuk a választ. Persze a prompt írási képességeinktől függ, hogy mennyire lesz releváns a válasz, de ugyanez igaz a böngészős keresésnél használt kifejezésekre is.

Összefoglalva

A Github Copilot értékes eszköz a fejlesztők számára, de nem varázspálca. Hatékonyan segíti a kódírást, de nem helyettesíti a programozási tudást és a gondolkodást. Míg stock fotók helyett kivállóan lehet használni AI által generált képeket, mert nem feltétlenül számítanak az apró pontatlanságok, addig kódírásnál már nagyobb a kockázat, így fontos, hogy mindig nézzük át a kapott kódokat.

0%