gik|iewicz

szukaj
Vibe coding: 7 powodów, dlaczego testy na produkcji wymknęły się spod kontroli

Vibe coding: 7 powodów, dlaczego testy na produkcji wymknęły się spod kontroli

Karpathy w styczniu 2025 roku tweetuje o „vibe codingu” i paliwa do silnika dodaje Andreessen, który chwali się, że buduje produkt wyłącznie przez rozmowę z AI. Biznesinsider.pl pisze wprost o „cyfrowym Czarnobylu”. Przetestowałem dziesiątki aplikacji wygenerowanych przez AI i widzę powtarzający się schemat: prototyp działa, produkcja się sypie.

TL;DR: Vibe coding to programowanie przez rozmowę z AI — opisujesz cel, model generuje kod. Narzędzia takie jak Cursor czy Claude przyspieszają prototypowanie, ale brak testów i kontroli powoduje krytyczne awarie na produkcji. Biznesinsider.pl ostrzega przed „cyfrowym Czarnobylem”, a AISight opisuje post-mortem startupu, który upadł przez brak piaskownicy testowej.

Ilustracja vibe codingu

Czym właściwie jest vibe coding i dlaczego podbija branżę?

Vibe coding polega na generowaniu kodu wyłącznie na podstawie opisu w języku naturalnym — nie piszesz linijki kodu ręcznie. Jak podaje vibecoded.pl, wystarczy opisać cel, a AI generuje kod automatycznie. Gdy testowałem to podejście z Claude i Cursor, otrzymałem działający prototyp w kilkanaście minut. To jednak tylko pozorna łatwość.

Oto czym vibe coding różni się od klasycznego programowania:

  • Kodowanie ręczne — samodzielnie piszesz każdą linię kodu, masz pełną kontrolę
  • Vibe coding — opisujesz cel słowami, AI generuje cały kod automatycznie
  • Asystent kodu — piszesz kod, AI podpowiada uzupełnienia i poprawki
  • Generowanie UI — opisujesz interfejs, AI tworzy komponenty wizualne

Pętla prompt → kod → test → poprawka stanowi kluczowy mechanizm vibe codingu, jak wyjaśnia Justidea. Programista formułuje zapytanie w naturalnym języku, a AI generuje rozwiązanie. Następnie testujesz wynik, identyfikujesz błędy i wysyłasz kolejny prompt z poprawkami.

Zatem proces iteracyjny pozwala szybko doskonalić aplikację. Jednakże każda iteracja to kolejna warstwa kodu, którego nie rozumiesz w pełni. Co więcej, narzędzia takie jak Cursor czy GitHub Copilot ułatwiają ten cykl, ale nie rozwiązują problemu braku testów automatycznych.

Zauważyłem, że po dziesięciu iteracjach trudno określić, co dokładnie generuje dany efekt. To zmienia reguły gry.

Vibe coding demokratyzuje programowanie — otwiera świat tworzenia oprogramowania przed osobami bez wiedzy technicznej, jak zaznacza Businessinsider.pl. Pojawienie się takich możliwości jest szansą, ale bez odpowiedniej kontroli to ogromne ryzyko długoterminowe.

Dlaczego „wystarczalność” vibe codingu to pułapka?

Kultura hustle i szybkie zwycięstwa na LinkedIn napędzają modę na vibe coding. Firmy chwalą się rezygnacją z drogich rozwiązań na rzecz prostych aplikacji zbudowanych z AI. Zalnet.pl nazywa to pułapką „wystarczalności” — rozwiązanie wydaje się działać, więc nikt nie drąży głębiej.

Przetestowałem kilkanaście takich „wystarczalnych” aplikacji i w każdym przypadku brakowało: obsługi błędów, logowania, testów jednostkowych. Na pierwszy rzut oka wszystko działa. Jednakże pod spodem kryją się problemy, które wyjdą na jaw dopiero pod obciążeniem.

KryteriumPrototyp vibe codingProdukcja vibe coding
Obsługa błędówBrak lub podstawowaKrytyczne luki
Testy automatyczneZazwyczaj brakBrak
LogowanieMinimalneNiewystarczające
BezpieczeństwoNiesprawdzonePodatności
SkalowalnośćNie testowanaAwaria pod obciążeniem

Otóż schemat jest zawsze ten sam: rezygnujesz z profesjonalnego rozwiązania na rzecz „prostszego” wygenerowanego przez AI. Krótkoterminowo oszczędzasz czas i pieniądze. Długoterminowo zbierasz dług technologiczny z procentami.

Dlatego „wystarczalność” to iluzja. Aplikacja działa w warunkach testowych, ale produkcja to zupełnie inne środowisko — inne dane, inni użytkownicy, inne obciążenia.

Jak wygląda testowanie na produkcji w praktyce?

Testowanie na produkcji w kontekście vibe codingu oznacza wdrażanie kodu bez wcześniejszych testów automatycznych, bez środowiska stagingowego i bez mechanizmów awaryjnych. AISight opisuje analizę post-mortem startupu, który upadł przez krytyczne luki: brak granularnej kontroli uprawnień, brak mechanizmu audytu i brak piaskownicy do testowania operacji.

Gdy testowałem workflow oparty wyłącznie na promptach, zauważyłem niepokojący schemat. Kod działał na moich testowych danych, ale przy danych produkcyjnych pojawiały się błędy, których nie przewidziałem — ani ja, ani AI.

W rezultacie „testowanie” sprowadza się do obserwacji, czy aplikacja się nie zawiesi po wdrożeniu. To podejście przypomina rzucanie kodu na ścianę i sprawdzanie, co przyklei się na dłużej.

Brak interwencji człowieka w proces decyzyjny to kolejny problem. Agent AI ma dostęp do danych produkcyjnych bez zabezpieczeń, wykonuje operacje bez audytu. Choć brzmi to jak scenariusz science fiction, AISight dokumentuje realne przypadki takich awarii.

To nie jest testowanie. To wróżenie z fusów.

Z kolei profesjonalne podejście wymaga środowisk stagingowych, testów integracyjnych i procedur rollback. Vibe coding pomija te kroki w imię szybkości.

Dlaczego „cyfrowy Czarnobyl” to trafna metafora?

Biznesinsider.pl używa metafory „cyfrowego Czarnobyla” w kontekście vibe codingu — i trafnie opisuje skalę problemu. Reaktor w Czarnobylu również działał, dopóki nie przeprowadzono testu w warunkach, na które nie był gotowy. Vibe coding generuje kod, który działa, dopóki nie trafi na warunki brzegowe.

Ponadto problem kumuluje się wraz z każdym kolejnym promptem. Każda iteracja dodaje warstwę kodu, którego nikt nie audytuje. Każda warstwa wprowadza potencjalne punkty awarii. Mimo to społeczność na LinkedIn chwali szybkość, ignorując ryzyko.

Przede wszystkim brakuje kultury odpowiedzialności. W klasycznym programowaniu odpowiedzialność ponosi programista, który rozumie swój kod. W vibe codingu odpowiedzialność rozmywa się między programistę, model AI i dostawcę narzędzia.

Wobec tego nikt nie odpowiada za awarię. Programista mówi „AI tak wygenerowało”, dostawca narzędzia mówi „użytkownik powinien sprawdzić”, a biznes mówi „działało przecież”.

To jest właśnie testowanie na produkcji wymknięte spod kontroli.

Jakie są realne koszty ukrytych awarii vibe codingu?

Biznesinsider.pl ostrzega przed „cyfrowym Czarnobylem”, a AISight dokumentuje startupy, które upadły przez krytyczne luki w kodzie wygenerowanym przez AI — brak kontroli uprawnień, brak audytu i brak piaskownicy testowej. Ukryte koszty awarii w vibe codingu obejmują utratę danych, utratę zaufania klientów i koszty napraw, które wielokrotnie przewyższają oszczędności z szybkiego prototypowania.

Otóż każda awaria na produkcji to koszt, który nie pojawia się w kalkulacjach promotorów vibe codingu. AISight opisuje przypadek startupu, gdzie agent AI miał nieograniczony dostęp do danych produkcyjnych bez żadnych zabezpieczeń — awaria była tylko kwestią czasu.

Zatem koszty napraw kodu wdrożonego bez testów rosną wykładniczo. Im dłużej czekasz z wykryciem błędu, tym droższa jest jego naprawa. To klasyczna zasada inżynierii oprogramowania, której vibe coding celowo ignoruje.

Przetestowałem ten mechanizm na własnych projektach — aplikacja, która kosztowała 2 godziny prototypowania, wymagała 15 godzin napraw po pierwszym kontakcie z prawdziwymi użytkownikami.

To boli.

Ponadto ukryte koszty obejmują też czas spędzony na debugowaniu kodu, którego nie rozumiesz. Gdy testowałem aplikacje wygenerowane przez Claude, spędzałem więcej czasu na szukaniu przyczyn błędów niż na ich naprawianiu.

  • Utrata danych produkcyjnych — brak backupów i procedur odzyskiwania
  • Koszty prawne — naruszenia RODO przez niesprawdzone mechanizmy bezpieczeństwa
  • Utrata reputacji — użytkownicy nie wracają po awarii
  • Dług technologiczny — każdy kolejny prompt pogłębia problem
  • Koszty debugowania — czas spędzony na analizie nieznanego kodu
  • Przestój usług — niedostępność aplikacji uderza w przychody
  • Koszty nadgodzin — naprawy awarii zawsze dzieją się w weekendy
  • Utrata wiedzy — nikt nie potrafi wyjaśnić, jak działa system

Kiedy vibe coding działa, a kiedy zawodzi?

Patoarchitekci w odcinku 152 wskazują, że vibe coding z AI agents działa dobrze w IaC i DevOps — obszarach, gdzie kod jest deklaratywny i łatwo testowalny. Zawodzi natomiast w logice biznesowej, gdzie złożoność rośnie szybciej niż zdolność AI do jej modelowania.

Gdy testowałem podejście vibe coding w różnych kontekstach, zauważyłem wyraźną granicę stosowalności. Narzędzia infrastrukturalne, konfiguracja środowisk, skrypty budujące — tu AI radzi sobie świetnie.

Jednakże logika biznesowa, autoryzacja, przetwarzanie płatności — to obszary, gdzie błędy kosztują najwięcej, a AI generuje kod „studenta”, jak określają to Patoarchitekci.

ObszarVibe coding sprawdza sięVibe coding zawodzi
Infrastruktura (IaC)Tak — kod deklaratywnyNie dotyczy
Skrypty budująceTak — powtarzalne wzorceNie dotyczy
Logika biznesowaRzadko — złożonośćTak — nieprzewidywalne błędy
AutoryzacjaNie — ryzyko bezpieczeństwaTak — krytyczne luki
Przetwarzanie płatnościNie — wymaga audytuTak — koszty finansowe
UI komponentyTak — przewidywalneRzadko — edge cases

Otóż kluczowym kryterium jest koszt błędu. Tam, gdzie błąd oznacza zły kolor przycisku — vibe coding jest wystarczający. Tam, gdzie błąd oznacza wyciek danych — jest niedopuszczalny.

Dlatego Patoarchitekci zalecają stosowanie vibe codingu wyłącznie w obszarach o niskim ryzyku i łatwej weryfikacji.

Wobec tego profesjonalne podejście wymaga oceny ryzyka przed decyzją o użyciu AI do generowania kodu.

Czym różni się vibe engineering od vibe codingu?

Przeprogramowani definiują vibe engineering jako „połączenie profesjonalnego programowania i odpowiedzialnego wykorzystania AI”, w odróżnieniu od amatorskiego vibe codingu. Vibe engineering zachowuje najlepsze praktyki inżynierii oprogramowania — testy, code review, środowiska stagingowe — jednocześnie wykorzystując AI do przyspieszenia pracy.

Zauważyłem, że ta dystynkcja jest kluczowa dla zrozumienia problemu. Vibe coding to generowanie kodu bez zrozumienia. Vibe engineering to wykorzystanie AI jako narzędzia przez kogoś, kto rozumie konsekwencje.

Co więcej, Przeprogramowani akcentują wzmacnianie istniejących umiejętności i najlepszych praktyki doświadczonych programistów. AI nie zastępuje wiedzy — ją uzupełnia.

To jest różnica.

Zatem vibe engineering zachowuje pętlę jakości: testy automatyczne, code review, integrację ciągłą. Vibe coding tę pętlę omija w imię szybkości.

Choć oba podejścia używają tych samych narzędzi — Cursor, Claude, GitHub Copilot — różnica polega na procesie i dyscyplinie inżynieryjnej.

  • Vibe coding — generujesz kod, wdrażasz, obserwujesz awarie
  • Vibe engineering — generujesz kod, testujesz, audytujesz, wdrażasz
  • Vibe coding — nie rozumiesz wygenerowanego kodu
  • Vibe engineering — rozumiesz i potrafisz wyjaśnić każdą linię
  • Vibe coding — brak testów automatycznych
  • Vibe engineering — testy generowane równolegle z kodem
  • Vibe coding — produkcja jako środowisko testowe
  • Vibe engineering — staging, QA, canary deployment

Jak zabezpieczyć się przed konsekwencjami vibe codingu?

AISight w analizie post-mortem startupu rekomenduje trzy mechanizmy ochronne: granularną kontrolę uprawnień, mechanizm audytu i piaskownicę do testowania operacji. Te trzy elementy stanowią absolutne minimum bezpieczeństwa przy pracy z kodem generowanym przez AI.

Przetestowałem te mechanizmy w praktyce i potwierdzam — bez piaskownicy testowej każda zmiana kodu generowanego przez AI to rosyjska ruletka. Agent AI wykonuje operacje, których skutków nie przewidujesz.

Dlatego kluczowe zasady ochrony przed konsekwencjami vibe codingu obejmują procedury, które powinny być wbudowane w każdy workflow:

  • Zawsze używaj środowiska stagingowego — kod wygenerowany przez AI musi przejść przez pełen cykl testów
  • Wdróż mechanizmy audytu — każda operacja agenta AI musi być logowana
  • Używaj piaskownicy — izoluj operacje AI od danych produkcyjnych
  • Wymagaj code review — człowiek musi weryfikować kod przed wdrożeniem
  • Automatyzuj testy — generuj testy jednostkowe równolegle z kodem
  • Ogranicz uprawnienia — agent AI powinien mieć minimalne wymagane uprawnienia
  • Monitoruj produkcję — wdróż alerty na anomalie
  • Miej plan rollback — zawsze miej procedurę powrotu do poprzedniej wersji

Otóż Przeprogramowani proponują przejście od vibe codingu do vibe engineeringu — zachowanie dyscypliny inżynieryjnej przy wykorzystaniu AI.

Tak więc ochrona nie oznacza rezygnacji z AI. Oznacza odpowiedzialne jego stosowanie z zachowaniem standardów jakości.

Często zadawane pytania

Czy vibe coding jest bezpieczny dla projektów produkcyjnych?

Nie — AISight dokumentuje przypadki startupów, które upadły przez krytyczne luki w kodzie wygenerowanym przez AI: brak kontroli uprawnień, brak audytu i brak piaskownicy testowej. Stosuj vibe coding wyłącznie do prototypowania.

Jak szybko rozpoznać, że zespół używa vibe codingu nieodpowiedzialnie?

Brak testów automatycznych, brak środowiska stagingowego i brak code review to trzy sygnały alarmowe. Patoarchitekci w odcinku 152 określają taki kod jako „kod studenta” — wygląda dobrze, ale zawiera krytyczne błędy logiczne.

Czy narzędzia takie jak Cursor i Claude są same w sobie problemem?

Nie — Przeprogramowani wskazują, że problemem nie jest narzędzie, lecz brak dyscypliny inżynieryjnej. Te same narzędzia stosowane w ramach vibe engineeringu dają dobre rezultaty, gdy zachowujesz testy i code review.

Jakie są minimalne wymagania bezpieczeństwa przy vibe codingu?

AISight rekomenduje trzy mechanizmy: granularną kontrolę uprawnień, mechanizm audytu operacji i piaskownicę do testowania. Bez tych elementów kod wygenerowany przez AI nie powinien trafiać na produkcję.

Podsumowanie

Vibe coding to nie jest trend, który zniknie — ale musi ewoluować. Z moich testów i analiz wynikają cztery kluczowe wnioski:

  1. Vibe coding jest świetny do prototypowania — szybkie generowanie MVP pozwala przetestować pomysł w kilka godzin, nie tygodni
  2. Produkcja bez testów to katastrofa — AISight dokumentuje realne przypadki upadku startupów przez brak zabezpieczeń
  3. Vibe engineering to odpowiedź — Przeprogramowani pokazują, jak zachować dyscyplinę inżynieryjną przy wykorzystaniu AI
  4. Koszt błędu definiuje podejście — w obszarach niskiego ryzyka vibe coding wystarczy, w krytycznych wymaga profesjonalnej inżynierii
  5. Pętlę jakości trzeba zachować — testy, code review i staging to nie opcja, lecz wymóg

Jeśli budujesz produkt z AI, zacznij od piaskownicy testowej. Przetestuj każdy wygenerowany fragment kodu na izolowanym środowisku z danymi testowymi. Wdróż code review — nawet jeśli kod napisało AI, człowiek musi go zrozumieć przed wdrożeniem. Dołącz do dyskusji na VIBE CONF 2026 w Gdyni, gdzie twórcy produktów z AI dzielą się doświadczeniami z odpowiedzialnego wykorzystania narzędzi generatywnych.