Vibe coding
Vibe coding – fiiliskoodaus
Fiiliskoodaus (engl. vibe coding) on uudenlainen ohjelmistokehityksen lähestymistapa, jossa tekoälyagentti tuottaa kaiken koodin, ja ihmisen rooli keskittyy sovelluksen toiminnan kuvaamiseen ja muutostarpeiden esittämiseen – ei itse koodin lukemiseen tai muokkaamiseen.
Tämä muuttaa perinteisen ohjelmistokehityksen logiikkaa: kehittäjä ei enää toimi "koodin ohjaajana", vaan enemmän tuotepäällikkönä, joka kertoo, mitä sovelluksen tulisi tehdä, ja antaa palautetta siitä, toimiiko lopputulos toivotusti.
Miten fiiliskoodaus eroaa muista tavoista käyttää tekoälyä ohjelmoinnissa?
Fiiliskoodaus eroaa erityisesti perinteisestä AI-avusteisesta ohjelmoinnista, jossa kehittäjä saattaa antaa tekoälyn tuottaa suuria määriä koodia – mutta validoi, ymmärtää ja tarvittaessa korjaa sen itse. Koodi on kehittäjän käsissä, vaikka tekoäly olisi mukana auttamassa.
Fiiliskoodauksessa taas:
-
Koodia ei yleensä tarkastella lainkaan
-
Kehitystyö tapahtuu vuorovaikutuksena agentin kanssa
-
Ainoa validoinnin lähde on sovelluksen käyttäytyminen
-
Kehittäjä antaa palautteen tyyliin: "Tämä ei tee ihan sitä mitä halusin – korjataan näin..."
Tämä tekee kehityksestä enemmän kokeilevaa, iteratiivista ja puhekielistä – vähemmän teknisesti jäsenneltyä.
Esimerkkityönkulku fiiliskoodauksessa
-
Kehittäjä: "Tee minulle mobiilisovellus, jossa on nappi ja kun sitä painaa, taustaväri vaihtuu."
-
Agentti: Generoi ja ajaa sovelluksen.
-
Kehittäjä: "Lisää animaatio, jossa väri liukuu hitaasti."
-
Agentti: Päivittää sovelluksen ilman, että koodia näytetään.
-
Kehittäjä: "Lisää vielä ääniefekti, kun väri muuttuu."
Kaikki tapahtuu toiminnallisuuden kautta, ilman että koodia tarvitsee kirjoittaa, nähdä tai tulkita.
Hyödyt
-
Nopea prototypointi ilman teknistä yksityiskohtaa
-
Matala kynnys ohjelmistokehitykseen, erityisesti ei-koodaaville rooleille
-
Luovuus korostuu: voidaan kokeilla ideoita ilman teknistä painolastia
Haasteet
-
Koodin läpinäkyvyys puuttuu – virheet voivat jäädä huomaamatta
-
Soveltuu lähinnä kokeellisiin tai rajattuihin projekteihin
-
Ei korvaa asiantuntijakehitystä tuotantoympäristöissä ilman tarkempaa tarkastelua