Pēdējā laikā arvien biežāk dzirdu teikumu: „Lietotne jau ir, tā strādā, vajag tikai pēdējo soli.“ Un bieži tā tiešām strādā: glīts interfeiss, pogas klikšķinās, dati parādās, un viss uztaisīts dažās dienās ar Lovable, gandrīz bez vienas paša rakstītas koda rindas. Problēma tā, ka „pēdējais solis“ patiesībā ir viss, kas atšķir demo no produkta. Un tā „visa“ parasti ir vairāk nekā visa iepriekšējā darba kopā.
Šim fenomenam jau ir nosaukums — vibe coding. Šajā rakstā paskaidrošu, kas tas ir, kāpēc tas ir ģeniāls prototipam un bīstams produktam, kā tieši trūkst vibe-coded lietotnei, kad ar to pilnīgi pietiek (jā, dažreiz tiešām pietiek) un kā no šāda prototipa uztaisīt reālu, produkcijā strādājošu produktu. Rakstu no skatpunkta, kas pie manis nonāk regulāri: cilvēks ar gandrīz gatavu lietotni, kas vienkārši nesāk strādāt īstajā pasaulē.
Kas ir vibe coding
Vibe coding ir veids, kā uztaisīt lietotni nevis rakstot kodu, bet aprakstot AI rīkam, ko vēlies. „Uztaisi man uzdevumu saraksta lietotni ar pieslēgšanos un tumšo režīmu“ — un pēc dažām sekundēm ir strādājošs ekrāns. Nepatīk krāsa — palūdz nomainīt. Trūkst pogas — palūdz pievienot. Tu neraksti kodu rindu pa rindai — vadi pēc sajūtas: palūdz, paskaties uz rezultātu, palūdz salabot. Latviski to mēdz pateikt vienkārši: „uztaisīju ar AI“ vai „uzģenerēju ar mākslīgo intelektu“.
Rīki, kas to dara, jau ir labi zināmi: Lovable un Bolt ģenerē veselu lietotni, v0 — interfeisu, Cursor un ChatGPT raksta kodu pēc sarunas. Tā tiešām ir iespaidīga tehnoloģija, un es to nenoniecinu — labi pārzinu šos rīkus. Jautājums nekad nav bijis „vai AI var rakstīt kodu“. Jautājums ir „vai tas, ko tas uzrakstīja, izturēs reālo pasauli“.
Jo vibe coding ir viena neredzama īpašība: tas ir optimizēts tā, lai izskatītos, ka strādā. AI ģenerē kodu, kas iziet acīmredzamo testu — tu nospied pogu un kaut kas notiek. Bet „strādā manā ekrānā“ un „strādā produkcijā reāliem lietotājiem“ ir divas pilnīgi atšķirīgas lietas, un starp tām slēpjas tieši tas darbs, ko AI neizdara pats no sevis. Tieši tāpēc tik bieži dzirdu „prototips ir, bet nevaru palaist produkcijā“.
Kāpēc tas ir lielisks prototipam un bīstams produktam
Prototipa uzdevums ir viens — pierādīt ideju. Tam pietiek strādāt tev, vienu reizi, pa laimīgo ceļu (tā saucu scenāriju, kad lietotājs visu dara pareizi un nekas nelūst). Ja gribi parādīt investoram, kā izskatīsies tavs pakalpojums, vai pats sev pārbaudīt, vai idejai vispār ir jēga — vibe coding šeit ir nepārspējams. Tas, kam agrāk vajadzēja nedēļu un dažus tūkstošus eiro, tagad tiek izdarīts vienā pēcpusdienā. Tas ir reāls, milzīgs pluss.
Produkta uzdevums ir pavisam cits. Produktam jāstrādā nevis tev, bet svešiem cilvēkiem. Ar sliktu internetu. Ar nepareizi ievadītiem datiem. Ar cilvēku, kurš mēģina tevi apkrāpt. Naktī, kad tu guli. Pēc pusgada, kad mainījusies kāda bibliotēka. Ar tūkstoš lietotājiem vienlaikus, ne ar vienu. Tieši šeit vibe-coded prototips sāk birt — un birst nevis tur, kur redzams, bet tur, kur neredzams, līdz kļūst par vēlu.
Bīstamākā vibe coding ilūzija
Kad lietotne izskatās 90% pabeigta, intuīcija saka, ka palicis 10% darba. Realitātē ir otrādi: redzamā daļa (interfeiss, pogas, ekrāni) ir tā vieglā, ko AI izdara labi. Bet neredzamā daļa — drošība, dati, robežgadījumi, deploy — ir gan vissmagākā, gan visdārgākā. To smago 30% es atsevišķi aprakstīju rakstā „AI lietotne iestrēgusi — ko darīt tālāk“.
7 lietas, kuru vibe-coded lietotnei nav
Vibe-coded prototipos, ko man parāda cilvēki, gandrīz vienmēr trūkst to pašu septiņu lietu. Ne tāpēc, ka AI būtu „slikts“ — tas vienkārši ģenerē to, ko palūdz, un šīs lietas neviens neprasa, jo par tām pat nezini, kamēr tās nekļūst par problēmu.
| Kā trūkst | Kāpēc tas svarīgi produkcijā |
|---|---|
| 1. Automātiskie testi | Bez testiem katra izmaiņa ir azarts. Salabo vienu vietu — neredzami salūst cita. Vibe-coded kodā testu gandrīz nekad nav, tāpēc projekts kļūst arvien trauslāks, jo vairāk to aiztiec. |
| 2. Kļūdu apstrāde | Kas notiek, kad pārtrūkst internets, serveris neatbild vai lietotājs ievada blēņas? Prototipā — balts ekrāns vai crash. Produktā jābūt skaidram paziņojumam, rezerves ceļam un klusam kļūdas pierakstam. |
| 3. Drošība | Atvērtas API atslēgas pašā kodā, neaizsargāta datubāze, kur jebkurš var paņemt svešus datus, nekāda ievades validācija. Tā ir biežākā un bīstamākā vibe-coded sprauga — to izmanto dažās minūtēs. |
| 4. Datu migrācijas | Kad pievieno jaunu lauku vai maini struktūru, jau esošajiem lietotāju datiem jā„pārceļas“ bez zaudējumiem. Vibe prototipā datu shēmu maina, dzēšot un veidojot no jauna — produkcijā tas nozīmētu izdzēstus klientus. |
| 5. Monitorings | Produkcijā par problēmu jāuzzina ātrāk par lietotāju. Bez kļūdu izsekošanas un logiem tu neredzi, ka puse cilvēku nevar pieslēgties — uzzini tikai tad, kad viņi pārstāj atgriezties. |
| 6. Mērogs | Kods, kas strādā ar vienu lietotāju, var sabrukt ar simtu. Neoptimizēti datubāzes pieprasījumi, nekāda kešošana, viss vienā plūsmā — prototipam vienalga, produktam liktenīgi pirmajā veiksmīgajā dienā. |
| 7. Uzturēšana | Bibliotēkas noveco, parādās drošības spraugas, mainās maksājumu un pieslēgšanās noteikumi. Produkts prasa pastāvīgu uzturēšanu. Vibe-coded kods, ko neviens nesaprot, kļūst nelabojams pēc pirmās nopietnās avārijas — tipiska frāze ir „vairs nesaprotu, ko tas kods dara“. |
Pievērs uzmanību: nevienu no šīm septiņām lietām lietotājs neredz, kamēr viss kārtībā. Visas tās parādās tajā vienā sliktajā dienā — un tieši to dēļ produktu būvēt ir dārgāk un lēnāk nekā prototipu. Tas nav „laka“ beigām, tas ir pamats.
Kad vibe coding tiešām pietiek
Tagad — svarīgākā un godīgākā šī raksta daļa. Vibe coding nav „slikti“. Ir daudz gadījumu, kad ar to ne tikai pietiek, bet tas ir arī gudrākā izvēle. Ja tu trāpi vienā no tiem — nealgo mani, taupi naudu un taisi pats.
Šeit vibe coding tiešām pietiek
- Iekšējs rīks dažiem cilvēkiem. Kalkulators, tabula, vienkārša sistēma, ko lieto tava komanda. Ja netur svešus datus un nepieņem naudu — taisi ar AI un nedomā divreiz.
- Demo investoram vai klientam. Vajag parādīt, kā izskatīsies ideja. Nevienam nav svarīgi, kas zem pārsega, ja mērķis ir pārliecināt, ne apkalpot.
- Idejas vizualizācija sev. Gribi redzēt, vai tava iecere vispār ir jēgpilna, pirms ieguldi nopietnu naudu. Vibe prototips atbild uz šo jautājumu vislētāk.
- Personīgs projekts. Hobijs, personīgais dienasgrāmatas rīks, instruments sev. Ja salūzīs — salūzīs tev vienam, un to tu izturēsi.
Vispārējais princips ir vienkāršs: ja lietotne netur svešus datus un nepieņem naudu, vibe coding tev visdrīzāk pietiek.
Kad vibe coding vairs nepietiek
Un tagad otra puse. Ir robeža, aiz kuras „izskatās, ka strādā“ kļūst par risku, kas maksā daudz vairāk nekā ietaupīji būvējot. To pārkāp tajā brīdī, kad lietotni sāk lietot cilvēki, kurus tu nepazīsti, vai kad caur to plūst nauda.
| Vibe coding pietiek | Vajadzīga profesionāla pārbūve |
|---|---|
| Lieto tikai tu vai šaurs uzticams loks | Lieto nepazīstami, reāli klienti |
| Sistēmā nav nekādas naudas | Maksājumi, abonementi, norēķini (Klix, banklink, Stripe) |
| Dati nesvarīgi vai publiski | Personas dati, VDAR, klientu privātums |
| Sabrukums neko nemaksā | Dīkstāve nozīmē zaudētus klientus vai reputāciju |
| Pastāv dažas nedēļas | Jāstrādā un jābūt uzturamam gadiem ilgi |
Tiklīdz parādās reāli klienti vai maksājumi, katra no tām septiņām trūkstošajām lietām pārvēršas atbildībā. Neaizsargāta datubāze ar taviem klientiem — jau nav tehniska sīkumu, bet VDAR (GDPR) pārkāpums, par ko Latvijā uzraudzību veic Datu valsts inspekcija (DVI) un piemēro sankcijas. Pievieno tam, ka vibe-coded prototipi gandrīz nekad pareizi neizdara obligāto sīkdatņu piekrišanu (cookie consent) un privātuma politiku, un tu jau esi neatbilstībā ar likumu, pat to nepamanot. Maksājumi bez kļūdu apstrādes — nauda, kas pazūd starp tevi un banku. Tāpēc šeit jau nav vibe coding jautājums, bet produkta jautājums.
Kā no vibe prototipa uztaisīt produktu
Laba ziņa: vibe prototips bieži nav izšķiests darbs — tas ir lielisks starts. Tu jau esi izlēmis, ko lietotne dara, kā izskatās, kāda ir loģika. Tā ir vērtīgākā un visgrūtāk pierakstāmā specifikācijas daļa, un tā jau ir izdarīta. Atliek aizvērt to smago 30%, kuru dēļ prototips nav produkts.
Kad pie manis vēršas ar vibe-coded projektu, tā kodu es nepārņemu un nelāpu — produktu būvēju tīri no nulles, bet prototips kļūst par specifikāciju un vizuālo atsauci. Vispārējā loģika, ko vērts zināt arī tev: vai turpināt uz esošā koda vai pārbūvēt, nosaka nevis koda daudzums, bet tā struktūra. Ja loģika un datu modelis ir veseli, trūkstošo slāni uz esošā koda vari pievienot pats vai kopā ar cilvēku, kurš to uzrakstīja. Ja kods ir haotisks, ar atvērtām atslēgām un nesavaldāmu state — tīra pārbūve iznāk ātrāk un lētāk nekā lāpīšana. Plašāk par to, kas notiek, kad AI kods sāk grūt un „labojot“ grūst vēl vairāk, rakstu atsevišķā rakstā „Lovable, Bolt, v0, Cursor — ko darīt, kad AI kods salūst“.
Ceļš no prototipa līdz produkcijai
- Specifikācija. No prototipa izvēlos ekrānus, plūsmas un loģiku, ko tu jau esi izstrādājis, un pierakstu, kas produktam jādara — arī to, ko prototips nedarīja.
- Stabils pamats. Droša datubāze, normāla pieslēgšanās, paslēptas atslēgas, ievades validācija — tas, uz kā var būvēt.
- Smagais 30%. Maksājumi, integrācijas, kļūdu apstrāde, robežgadījumi. Latvijā šeit bieži pievienojas vietējās integrācijas (Klix vai Swedbank/SEB maksājumu vārteja, banklink, Omniva un DPD pakomāti, eParaksts vai Smart-ID pieslēgšanai), kuras AI nepazīst un nepieslēgs.
- Drošinātājs. Testi, monitorings un logi, lai par problēmu uzzinātu tu, ne tavs klients.
- Deploy un uzturēšana. Īsts domēns, īsts hostings, dublējumkopijas un skaidra vienošanās, kas uzturēs tālāk.
Mans piedāvājums nekad nav „sakārtošu tavu kodu“. Tas ir „uzbūvēšu tā, lai strādā un pelna“. Atšķirība ir būtiska: koda sakārtošana ir kosmētika, bet produkta uzbūvēšana nozīmē, ka tavi klienti var mierīgi lietot, maksāt un atgriezties, bet tu vari mierīgi gulēt.
Reāli skaitļi
Konkrēti par cenu, jo to tāpat jautāsi. Tīra pārbūve pēc tava vibe prototipa — ar autentifikāciju, drošību un deploy — sākas no 2 900 € (MVP / PWA, iOS un Android no vienas koda bāzes). Biznesa lietotne ar maksājumiem (Klix, banklink, Stripe), vietējām integrācijām un admin paneli — no 6 900 €, sarežģīta platforma — no 14 900 €. Termiņi parasti ir 2–6 nedēļas atkarībā no apjoma un no tā, cik skaidri prototips jau nosaka, kas produktam jādara.
Tas var izklausīties kā krietns naudas daudzums par „gandrīz gatavu“ projektu. Bet atceries tabulu ar septiņām trūkstošajām lietām — tu nemaksāsi par lakošanu, tu maksāsi par to pamatu, bez kura lietotne nav produkts, bet tikai tā fotogrāfija. Latvijas tirgū ir daudz „no 999 €“ template aģentūru, taču AI prototipa pārbūve nav template darbs: tā ir fiksētas cenas tīras pārbūves projekts no nulles, kur vērtība ir nevis lētums, bet tas, ka rezultāts nesabrūk.
Ir vibe-coded prototips? Pārvērtīsim to īstā produktā.
Tavs Lovable, Bolt, v0 vai Cursor prototips kļūst par specifikāciju: ekrānus un plūsmas saglabāju, bet zem tiem no nulles uzbūvēju stabilu pamatu — drošību, datus, maksājumus un deploy. MVP no 2 900 €. Uzraksti, ko tu būvē, un 24 stundu laikā saņemsi piedāvājumu ar cenu un termiņu. E-pasts: info@webxpert.lt.
Pārbūvēt manu prototipuBiežāk uzdotie jautājumi
Kas ir vibe coding?
Vibe coding ir veids, kā uztaisīt lietotni, aprakstot AI rīkam (Lovable, Bolt, v0, Cursor, ChatGPT) latviski vai angliski, ko vēlies, un tas uzģenerē kodu. Tu neraksti kodu rindu pa rindai — vadi pēc sajūtas: palūdz, paskaties uz rezultātu, palūdz salabot. Tas lieliski der ātram prototipam, bet uzģenerētais kods bieži vien nesatur to, kas vajadzīgs produkcijai — testus, kļūdu apstrādi, drošību.
Ar ko prototips atšķiras no produkta?
Prototipam jāpierāda ideja — pietiek, ka tas strādā tavā ekrānā pa laimīgo ceļu. Produktam jāstrādā produkcijā, ar reāliem lietotājiem, sliktu internetu, nepareizi ievadītiem datiem un ļaunprātīgiem. Atšķirību veido testi, kļūdu apstrāde, drošība, datu migrācijas, monitorings, mērogs un uzturēšana — tieši tas, kā vibe-coded prototipam parasti nav.
Vai vibe-coded prototipu var palaist produkcijā?
Tehniski palaist var, bet reāliem klientiem vai maksājumiem to neiesaku. Vibe prototipam parasti trūkst drošības (atvērtas API atslēgas, neaizsargāta datubāze), kļūdu apstrādes un monitoringa. Pirmais ļaunprātis vai pirmie negaidītie dati to viegli apgāž. Pirms palaišanas vajadzīgs cilvēks, kas aizver to smago 30% — drošību, datus, deploy un robežgadījumus, un arī nodrošina VDAR atbilstību (sīkdatņu piekrišanu un privātuma politiku).
Kad vibe coding tiešām pietiek?
Vibe coding pietiek, kad lietotne netur svešus datus un nepieņem naudu: iekšējam rīkam dažu cilvēku komandai, demo investoram, idejas vizualizācijai, personīgam projektam. Ja to lieto tikai tu pats vai šaurs uzticams loks, vibe-coded risinājums ietaupa daudz laika un naudas — tādā gadījumā es tiešām neiesakāšu algot izstrādātāju.
Cik maksā no vibe prototipa uztaisīt reālu produktu Latvijā?
Atkarīgs no tā, kas produktam jādara. Tīra pārbūve pēc tava prototipa — ar autentifikāciju, drošību un deploy — sākas no 2 900 € (MVP / PWA, iOS un Android no vienas koda bāzes). Biznesa lietotne ar maksājumiem (Klix, banklink), vietējām integrācijām un admin paneli — no 6 900 €, sarežģīta platforma — no 14 900 €. Visgrūtākā un dārgākā daļa vienmēr ir tas pēdējais 30%, ne sākums.
Vai ir vērtīgi turpināt uz vibe-coded koda, vai pārrakstīt no nulles?
Lēmumu nosaka nevis koda daudzums, bet tā struktūra. Ja prototipa loģika un datu modelis ir veseli, pievienot trūkstošo produkcijas slāni uz esošā koda var būt jēgpilni — to vari darīt pats vai kopā ar cilvēku, kurš kodu uzrakstīja. Ja kods ir haotisks, ar atvērtām atslēgām un nesavaldāmu state, tīra pārbūve iznāk ātrāk un lētāk nekā lāpīšana. Es izvēlos tikai otro ceļu: svešu kodu nepārņemu, bet produktu būvēju no nulles, izmantojot tavu prototipu kā specifikāciju.