Blog

GitHub Copilot käytännössä: ensikäden kokemuksia

MAY 19, 2023

Kun kuulin ensimmäisen kerran GitHub Copilotista, kiinnostukseni heräsi. Tekoälyavustaja, joka voisi auttaa ohjelmoinnin perustehtävissä? Se kuulostaa todelliselta mullistukselta. Käytettyäni sitä jonkin aikaa voin ilokseni todeta, että Copilot on paljon enemmän kuin pelkkä työkalu – se on aito tekoälyavustaja.

Kalle Sirkesalo

Field CTO

Kalle sits at the intersection of executive strategy and engineering reality. He works directly with CTOs and engineering leaders to translate business pressures — speed, compliance, ROI — into technical decisions that actually hold. His job is to make sure what we recommend is something your organization can actually execute.

Nimi on osuva, sillä juuri siltä Copilot tuntuu. Se on kuin toinen aivo, joka täyttää huomaamattani jäävät aukot ja auttaa minua työskentelemään nopeammin. Ajattele sitä rakennustelineinä työmaalla: se antaa sinulle perustyökalut tehokkaaseen työskentelyyn, jotta voit keskittyä vaativampiin tehtäviin. Kun esimerkiksi kirjoitan nopeasti muistiinpanoja, voin kirjoittaa ne millä tahansa kielellä ja kääntää tekstin tekoälyn avulla. Kaiken kaikkiaan tämä toiminnallisuus on säästänyt minulta paljon aikaa ja vaivaa.

Esimerkki suomenkielisestä tekstistä:

Käytitpä Atlassianin tuotteita itsenäisesti tai osana Eficode ROOT DevOps -alustaa, tämä tieto koskettaa sinua. Eficode voi Pohjoismaiden ainoana Atlassianin Platina-tason kumppanina auttaa sinua hyödyntämään sekä pilvi- että Data Center-ratkaisuja. Laaja osaamisemme pilvi- ja Data Center -migraatioissa auttaa sinua vähentämään kustannuksia ja maksimoimaan suorituskyvyn.

GitHub Copilotin englanninkielinen käännös ilman muutoksia:

Jos käytät Atlassianin tuotteita itsenäisesti tai osana Eficode ROOT DevOps -alustaa, tämä tieto koskee sinua. Eficode on Pohjoismaiden ainoa Atlassianin Platinum-kumppani ja voi auttaa sinua hyödyntämään sekä Cloud- että Data Center -ratkaisuja. Laaja kokemuksemme Cloud- ja Data Center -migraatioista auttaa sinua vähentämään kustannuksia ja maksimoimaan suorituskyvyn.

Copilot työskentelee kanssasi

GitHub Copilotin toinen erinomainen ominaisuus on, että se auttaa minua kirjoittamaan tehokkaampaa koodia. Kun työskentelimme asiakkaiden kanssa saadaksemme käyttöön skriptin, joka yhdistää kaksi eri työkalua ja niiden toiminnallisuudet, minun ei tarvinnut avata API-dokumentaatiota perusasioita varten – pystyin tekemään ensimmäisen luonnoksen, kun tiesin, miten perusteet toimivat.

Tässä on esimerkki Python-funktiosta, joka hakee GitHub Actions -toimintoja. Mukana ovat koodikommentti ja funktion määrittely:

Tässä on esimerkki CURL-komennosta GitHub Docsissa:

Lopuksi niille, jotka pohtivat, toimiiko se:

HUOMAUTUS: Yllä oleva esimerkki vaati kommenttini hiomista yli viisi kertaa, jotta se toimisi. En myöskään olisi pystynyt kirjoittamaan tätä koodia GitHub Actionsilla, ellen olisi tiennyt, mitä halusin sillä saavuttaa. 

Ajatuksia Copilotista

Tekoälyavustajien käytössä on kuitenkin myös haittapuolia, kuten turhautuminen silloin, kun tekoäly tekee virheitä. Kun API päivittyy, tekoälyavustaja voi alkaa antaa virheellisiä vastauksia, mikä pidentää virheiden selvittämiseen kuluvaa aikaa. Siksi perusasioiden ja koodin toiminnan tunteminen on välttämätöntä, jotta Copilotia voi käyttää tehokkaasti.

Yksi Copilotin suurimmista hyödyistä minulle on ollut sen apu ohjelmien refaktoroinnissa. Jos kirjoitan ”huonoa” koodia, voin käyttää Copilotia sen pilkkomiseen funktioiksi ja testattaviksi komponenteiksi, mikä tekee työstäni helpompaa ja tehokkaampaa.

On kuitenkin tärkeää huomata, että Copilot ei korvaa ohjelmoinnin perusosaamista. Jos olet uusi IT-alalla ja vain kopioit Copilotin tuottamaa koodia, kohtaat todennäköisesti vaikeuksia ohjelmoinnin monimutkaisempien osa-alueiden parissa.

Tulevaisuudessa automaattisista testeistä tulee todennäköisesti pakollisia tekoälytyökalujen yhteydessä, sillä ainoa tapa varmistaa, että koodi toimii tarkoitetulla tavalla, on varmistaa se automaattisilla testeillä. Kun ohjelmoijat työskentelevät tiiviimmin asiakkaiden ja suunnittelijoiden kanssa vaatimusten määrittelyssä, paremmat vaatimukset helpottavat tekoälyn hyödyntämistä sovelluksen ohjelmoinnissa. 

Vaikka GitHub Copilotin kaltaisten tekoälyavustajien tehokas käyttö edellyttää jonkin verran ohjelmoinnin perusosaamista, niillä on valtava potentiaali mullistaa ohjelmoijien työskentelytavat. Tekoälyteknologian kehittyessä voimme odottaa entistä tehokkaampia työkaluja, jotka tekevät ohjelmoinnista nopeampaa, turvallisempaa ja tehokkaampaa kuin koskaan aiemmin.

Lue seuraavat otteet GitHubin käyttöehdoista:

Ehdotusten ja oman koodisi omistajuus

GitHub ei vaadi omistusoikeuksia ehdotuksiin. Säilytät omistusoikeuden omaan koodiisi.

Vastuu omasta koodistasi

Säilytät täyden vastuun omasta koodistasi, mukaan lukien ehdotukset, jotka sisällytät omaan koodiisi tai joihin viittaat kehittääksesi omaa koodiasi. Päätät itse täysin siitä, käytätkö GitHub Copilotin luomia ehdotuksia. Jos käytät ehdotuksia, GitHub suosittelee vahvasti, että käytössäsi on asianmukaiset toimintaperiaatteet ja käytännöt, joiden tarkoituksena on estää ehdotuksen käyttö tavalla, joka voi loukata muiden oikeuksia. Tämä sisältää muun muassa kaikkien GitHub Copilotissa käytettävissä olevien suodatusominaisuuksien hyödyntämisen.

Kehittäjinä meidän tulisi ottaa nämä teknologiset edistysaskeleet vastaan ja jatkaa tekoälyn mahdollisuuksien rajojen laajentamista. GitHub Copilotin kaltaisten tekoälyavustajien avulla voimme keskittyä enemmän ohjelmoinnin luoviin ja strategisiin osa-alueisiin sekä tehdä yhteistyötä muiden tiimien kanssa kehittääksemme innovatiivisia ratkaisuja, jotka vastaavat asiakkaidemme tarpeisiin.

Kaiken kaikkiaan olen innoissani tekoälyn tulevaisuudesta ohjelmoinnin maailmassa, ja odotan innolla, miten se muuttaa jatkossakin tapaamme työskennellä ja innovoida.

  • Software development
  • DevOps

Subscribe to our newsletter