AI generuje kod, a przy okazji czasem problemy

Czy AI naprawdę przyspiesza programowanie… czy tylko przesuwa problem gdzie indziej?

Stworzyłam kilka aplikacji w trybie „Agent” i jedno wiem na pewno - im szybciej generujemy kod, tym szybciej rośnie dług technologiczny. W prostych projektach to działa świetnie. W złożonych systemach? Zaczynają się schody.

Dlaczego w pracy wciąż częściej wybieram tryb „Ask”?


Gdzie AI jeszcze nie domaga w kontekście odpowiedzialności za kod?
Napisałam o tym więcej
https://thecommitline.substack.com/p/ai-generuje-kod-a-przy-okazji-czasem
PS. po podaniu maila w okienku na końcu kolejne wydanie otrzymasz na skrzynkę pocztową!

#programowanie #ai

Substack

Komentarze (14)

Od dawna jestem zdania że AI powinno być traktowane jak asystent, a nie murzyn co wykona pracę za nas i zdaje się, że jest to prawidłowy kierunek myślenia. Kiedy AI służy do generowania szablonów kodu, przykładów użycia, małego (podkreślam, małego) refactoru, zapytania "jak ten fragment można zrobić inaczej", czy szybkie code review - to jest świetne. Tak długo jak mamy pełną kontrolę nad tym co wypluwa, tj dopóki możemy w 100% rozumieć każdą linijkę - wtedy AI jest super i wyniki pracy są rewelacyjne. Ale kiedy ktoś uważa, że AI musi już teraz zastąpić człowieka - to proszenie się o kłopoty. Próba naprawienia bloatu wyrzyganego przez AI to gorsza robota niż robienie bugfixów bo Hindusach

@ZohanTSW tru dat.

Szablon rozwiązania, jak najbardziej. Całe skrypty po 300 linii, jasne. Ale potem niech siada do tego człowiek, przejrzy, posprząta, poprawi głupoty. Nawet niech się przy tym posiłkuje ejajem, podając fragmenty i co w nich jest nie tak.

Nic mnie tak nie odpala, jak ulep puszczany prosto na review, bez cienia zastanawiania się.

@ZohanTSW ja z ejaj korzystam na zasadzie 'przedstaw mi koncepcje jak mozna zrobic X' i na bazie tego i swojej wiedzy dopiero tworzę koncept. Czasami tworzę ejajem jakieś nieduże fragmenty kodu które później i tak muszę dostosowywać do swojego projektu i "wizji". Próbowałem tego całego 'vibe codingu' i twierdzę że to gówno, refaktor odrobinę większej aplikacji to dramat. Ogólnie cała frajda z tworzenia kodu i apki leci do piachu i zostaje najbardziej gówniana robota czyli poprawianie syfu po kimś, więc lepiej już w ogóle nie programować

@spam_only 

Ogólnie cała frajda z tworzenia kodu i apki leci do piachu i zostaje najbardziej gówniana robota czyli poprawianie syfu po kimś, więc lepiej już w ogóle nie programować

O to to to!

Problemem jest też to, że wielu korporacyjnych decydentów uwierzyło, że gen AI może praktycznie samo tworzyć kod na podstawie tylko samych PRD. Że wystarczy jako prompt wrzucić kilka PDFów i same featury będą się tworzyć, korpo rosło, a kwartalne wyniki finansowe będą coraz wyższe, a wtedy mid i upper managment zagarniać będzie fajne bonusy.


Widzę to u siebie i znajomych, gdzie jest ssanie na wykorzystanie AI przy programowaniu (jeden kumpel nawet dostał ostrzeżenie, że miesięczny limit copilota wykorzystał tylko w 5%).


Nie twierdzę przy tym, że AI nie pomaga w programowaniu - a nawet uważam, że da się robić funkcjonalności na podstawie samych docsów ALE! setup agenta, skilli, agenta do sprawdzania acceptace criteria, agenta do test casów etc to wbrew pozorom ciężka sprawa i wymagająca naprawdę sporej wiedzy inżynierskiej/produktowej/programistycznej. A przede wszystkim uporządkowanego, przewidywalnego i otestowanego codebase'u.


Irytujące jest to, jak dba się o kod, design patterny, testy etc dzięki czemu wprowadzanie zmian i poprawek jest lekkie i przyjemne, a nagle do codebase trafia masa PR z wygenerowanym slopem, która jeszcze póki co działa, ale to tylko kwestia czasu i to nieliniowa, jak to zacznie przypomniać gówno, którego nie bedzie można tknąć

Artykuł zbyt ogólnikowy. Wszystko zależy z jakiego modelu korzystasz. Ja nie zauważyłem żeby mój Claude Opus 4.6 robił jakieś dziwne zmiany w modułach których nie chciałem zmieniać. Natomiast zjada tokeny jak głupi, prowadząc wewnętrzny monolog w celu uzasadnienia wszystkich tych działań.

@osobliwy To też jest ciekawe zagadnienie, czyli koszt tokena. Bo nikt nie wie jaka powinna być jego cena by było to rentowne. Póki co lecimy na słodkim beztroskim czasie pieniędzy inwestorów. No i firma może kupić licencje programistom za 200 dolców, którzy mogą strzelać tokenami jak z karabinu. Co będzie jeśli taki Claude zacznie rozliczać się per token? Co gdy okaże się, że programista z wygody zamiast napisać prostą pętle to ja sobie wygenerował co powiedzmy zjadło 2$. Niby nic, ale takich jak on jest 30 i robią to po kilka razy dziennie. Co jeśli wygenerowanie sensownego fragmentu kodu będzie wymagać dziesiątek minut pracy modelu i oznaczać będzie setki dolarów? A ten kod jeszcze trzeba przejrzeć, ewentualnie zdebugować, zobaczyć czy dostaliśmy dokładnie to na czym nam zależy (bo człowiek w promcie może być nieprecyzyjny), zrobić review.

@DexterFromLab Spada, bo jest większa konkurencja, ale nie bardzo im idzie z osiagnieciem rentowności. Claude nie jest rentowny, openAI jest od rentowności tak bardzo jak tylko się da, microsoft ze swoim Copilotem to trudniejszy orzech do zgryzienia bo copilot to produkt poboczny, ale też im wychodzi bokiem.
Rentowność ma np Midjurney, ale on w subskrybcji liczy tak jakby per token "per czas działania GPU", więc jeśli są w stanie wyliczyć że jeśli 1 minuta działania GPU to 4 centy , to jeśli dadzą 200 minut za 10 dolarów, to wyjdzie 8 dolców kosztów co daje 2 dolary na czysto + przepadające minuty.

@TheCommitLine Jasne, problem polega na złej pętli walidacji. Jeśli tego nie masz, to system agenturalny będzie generował dużo problemów. Brakuje wielu informacji w tm wpisie. Jaki model był użyty, czy był to system multi agentowy, czy jeden agent. Jak ustawione były role, jak rulesy? Jaki był czas pracy systemu agenturalnego? Czy był to system agenturalny czy może tylko klient na systemie operatora, jeśli klient to jaki? Wpis bardzo ogólnikowy, niewiele mówiący. Ile tokenów zostało przepalone na zadanie? Jakie techniki programowania zostały zadane agentowi/agentom? Jaki stack technologiczny? Za mało informacji żeby coś ocenić, jak dla mnie to jest wpisa na zasadzie - skoro mi nie działa to znaczy że nie działa.

@DexterFromLab Dokładnie.
@TheCommitLine Narzekasz na kwestie, które wynikają z niewprawnego używania narzędzia. To nie młotek jest zepsuty, jeśli gną Ci się wszystkie gwoździe.
LLMy nie czytają w myślach. Nie mają pamięci, jeśli jej tworzenia nie wymusisz. Nie znają Twoich zamiarów, jeśli ich w sensowny sposób nie określisz. Nie trzymają się reguł, jeśli te nie są zdefiniowane...

Zaloguj się aby komentować