Jako tech lead w Amazonie, Anni Chen codziennie używa sztucznej inteligencji do pisania kodu. Metoda zwana „vibe coding” to jej chleb powszedni. Dzięki niej w kwadrans rozwiązuje problemy, nad którymi wcześniej głowiłaby się cały dzień. Mimo to jest jedna sytuacja, w której Anni zdecydowanie wstrzymuje się przed zaufaniem AI. I wcale nie chodzi o strach przed utratą pracy.
„Vibe coding” to termin, który spopularyzował Andrej Karpathy, były dyrektor ds. AI w Tesli. Opisuje on podejście, w którym programiści nie piszą kodu linijka po linijce, lecz używają naturalnego języka, by prowadzić duże modele językowe (LLM) jak ChatGPT czy Claude. To one generują, poprawiają i iterują kod. Chodzi o intuicję, szybkość i kreatywność, często kosztem tradycyjnej, rygorystycznej dbałości o strukturę czy procesy.
Dla Anni to narzędzie, bez którego nie wyobraża już sobie pracy. „Zdecydowanie zwiększa produktywność” – przyznaje w rozmowie z Business Insider. Czasem traktuje je jak loterię: może wypali, a może nie. Ale nawet gdy gotowe rozwiązanie proponowane przez AI nie jest idealne, samo brainstormingowe „przećwiczenie” problemu z modelem pomaga jej szybciej zrozumieć, jak mogłaby wyglądać finalna implementacja.
Szybkość, która uzależnia: jak AI zmienia codzienność programisty
Korzyści z „kodowania na fali” są namacalne i trudno im się oprzeć. Anni opisuje to jako iteracyjny taniec: podaje modelowi podstawowe informacje, AI generuje wersję kodu, a ona ją sprawdza – podobnie jak podczas review z kolegą z zespołu. „Czasem naprawi problem, ale wprowadzi coś nowego. Trzeba na to uważać” – mówi.
Mimo konieczności podwójnego sprawdzania, zwłaszcza przy złożonych zadaniach, oszczędność czasu jest ogromna. Przykład? Podczas współpracy z innym zespołem Anni natknęła się na skomplikowany problem związany z blokadami wątków (locking). Bez pomocy LLM badania potencjalnych rozwiązań mogłyby zająć jej cały dzień. Dzięki rozmowie z modelem, w której punktowała słabe strony jego sugestii i prosiła o poprawki, w 15 minut miała gotową propozycję do wysłania do zespołu.
„Posiadanie wiedzy technicznej pomaga – wiesz, co jest dobrym rozwiązaniem, a co nie” – tłumaczy. „To tak, jakbyś wiedział, co smakuje dobrze, ale nie znasz wszystkich dań w menu. LLM wyciąga przed ciebie całe menu, a ty wybierasz.”
Ta demokratyzacja możliwości to sedno „vibe coding”. Metoda jest idealna dla projektów o niskiej stawce: skryptów automatyzacyjnych, narzędzi wewnętrznych, prototypów, MVP dla start-upów czy szybkich eksperymentów UX. Pozwala skupić się na kreatywności i funkcjonalnościach, odciążając od żmudnego pisania boilerplate’u.
Ciemna strona mocy: gdzie „vibe” się kończy, a zaczynają kłopoty
I tu dochodzimy do sedna wątpliwości Anni Chen. Pomimo codziennego stosowania, jest jedna sfera, gdzie jej zaufanie do AI gwałtownie maleje: wdrażanie kodu na skalę i do środowisk produkcyjnych.
„LLM są bardzo dobre w rozwiązywaniu problemów, ale czasem robią ukryte założenia, których sobie nie uświadamiasz” – wyjaśnia. „Jeśli nie powiesz mu wyraźnie, na przykład, że coś musi działać w środowisku wielowątkowym, może po prostu wyprodukować minimalną wersję, która działa. Ale gdy trafi na skalę czy do produkcji, może się posypać.”
To właśnie jest główna luka pomiędzy szybkim prototypowaniem a budową systemów klasy enterprise. AI, kierowana ogólnym poleceniem typu „zbuduj coś, co obsłuży miliony użytkowników”, może nie uwzględnić krytycznych dla skalowalności aspektów: architektury rozproszonej, obsługi przypadków brzegowych, optymalizacji wydajnościowych czy wzorców zabezpieczeń.
Efekt? Prototyp, który świetnie działał na lokalnym środowisku, wali się pod obciążeniem. Powstaje technologiczny dług w postaci poplątanego, nieudokumentowanego kodu, który w najlepszym razie wymaga głębokiego refaktoringu, a w najgorszym – całkowitego przepisania od zera. Niektóre start-upy, które z sukcesem wprowadziły na rynek MVP napisane „na fali”, musiały je później porzucić właśnie z powodu tych problemów.
Dodatkowe ryzyka to brak systematycznych testów prowadzący do ukrytych błędów oraz luki bezpieczeństwa, jak chociażby twardo wpisane dane dostępowe skopiowane z przykładowych promptów. Jak zauważają eksperci, „nic tak nie zabija dobrych wibracji jak incydenty bezpieczeństwa czy rozprzestrzeniający się, niespójny kod w zespole”.
Różnica między reakcją a prewencją: dlaczego wiedza techniczna wciąż rządzi
W tym kontekście Anni podkreśla kluczową różnicę między budowaniem z AI jako profesjonalista a jako osoba nietechniczna. „Osoby bez wiedzy technicznej mogą użyć LLM, żeby reaktywnie naprawiać problemy. Ale osoby techniczne mogą proaktywnie antycypować ograniczenia i zapobiegać problemom, zanim te w ogóle wystąpią” – mówi.
To głębsze zrozumienie ma tu fundamentalne znaczenie. Programiści nie tylko lepiej rozumieją kod wygenerowany przez AI, ale też świadomi są mocnych i słabych stron samych modeli. Wiedzą, na czym były trenowane, dlaczego mogą słabiej radzić sobie z dokładnymi obliczeniami matematycznymi i jak „myślą”. Ta świadomość pozwala im używać AI jak precyzyjnego narzędzia, a nie magicznej różdżki.
Bez tego, nawet najbardziej obiecujący prototyp może okazać się bombą z opóźnionym zapłonem, która wybuchnie przy pierwszym, poważnym obciążeniu. W środowisku takim jak Amazon, gdzie systemy obsługują setki milionów klientów, takie ryzyko jest po prostu nie do przyjęcia.
Nieuchronna zmiana: jak „vibe coding” wkrada się do każdego zespołu
Mimo tych ostrzeżeń, Anni Chen nie widzi alternatywy dla upowszechnienia się tej praktyki. Opisuje nawet ewolucję nastawienia wśród inżynierów. Na początku, gdy leadership promował „vibe coding”, zespoły niebędące bezpośrednio związane z AI reagowały oporem: „Nie, nie pozwolę AI wykonywać mojej pracy. Nie ufam kodowi generowanemu przez AI”.
Jednak po pierwszych próbach nastawienie się zmieniło. „Ludzie zrozumieli, że czasem jest naprawdę dobry” – mówi Chen. Dziś adopcja jest znacznie szersza.
Opór staje się wręcz niemożliwy ze względów czysto praktycznych. „Kiedy twoi współpracownicy używają AI i kodują szybciej, trudno się oprzeć. Jeśli nie nadążasz za tempem, współpraca staje się trudna” – przyznaje. Co więcej, AI wkrada się do workflow’u nawet tych, którzy chcą się bronić. Komentarze i sugestie generowane przez modele są osadzone w procesach code review. „Nawet jeśli nie 'vibe codujesz’ bezpośrednio, wciąż wchodzisz w interakcje z outputami AI” – podsumowuje.
Wnioski: balans między wibracjami a odpowiedzialnością
Historia Anni Chen to nie opowieść o technologicznym zachwycie ani luddystycznym strachu. To realistyczny obraz nieuniknionego kompromisu. „Vibe coding” to potężne narzędzie przyspieszające iterację, kreatywność i prototypowanie. Jest nieocenione przy badaniach, rozwiązywaniu błędów czy budowaniu MVP.
Jednak jego ślepe zastosowanie w kluczowych, skalowalnych systemach to przepis na kłopoty. Prawdziwa wartość profesjonalnego developera w erze AI nie zanika – ewoluuje. Przenosi się z pisania każdej linijki kodu na krytyczny nadzór, architekturę, antycypowanie ograniczeń skalowania, zapewnienie bezpieczeństwa i weryfikację jakości.
Jak radzą źródła branżowe, kluczem jest połączenie „vibe coding” z solidnymi zabezpieczeniami. AI doskonale sprawdza się do szkiców, draftów i generowania pomysłów. Człowiek musi natomiast przejąć rolę architekta, testera, strażnika bezpieczeństwa i finalnego decydenta. Rozpoczęcie przygody z AI od obszarów niskiego ryzyka, jak narzędzia wewnętrzne, pozwala wypracować bezpieczne praktyki.
Ostatecznie, „kodowanie na fali” nie zastąpi głębokiej wiedzy inżynierskiej. Wręcz przeciwnie – czyni ją jeszcze cenniejszą. Bo w świecie, gdzie każdy może wygenerować działający skrypt, prawdziwą wartość ma ten, kto wie, jak zbudować z tego system, który przetrwa napór milionów użytkowników i nie ujawni przy okazji ich danych. To właśnie jest ta jedna sytuacja, w której nawet najbardziej zaawansowany tech lead z Amazonu waha się przed pełnym zaufaniem AI. I ma ku temu bardzo dobre powody.


Dodaj komentarz