• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Jak wspomagacie się AI w pracy programisty?

+4 głosów
416 wizyt
pytanie zadane 17 lutego w Inne języki przez rafal.budzis Szeryf (86,440 p.)
Siemka! Chciałbym dowiedzieć się jak pracujecie z AI w swoich firmach i gdzie waszym zdaniem się nie sprawdza. Mam obawę że w niektórych miejscach w mojej firmie ulegliśmy nadmiernie modzie na AI i chciałbym wiedzieć czy większość firm mierzy się z podobnymi problemami czy nie. Biorę też pod uwagę to że może ja nie potrafię z AI odpowiednio współpracować.

Na pierwszy rzut idą AI dla managerów. Używają do tworzenia notatek z spotkania, tworzenia zadań w JIRA itp. Od rozpoczęcia tego procesu Zadania mają długie lanie wody w opisach. Mieliśmy też sytuacje że dostaliśmy w tasku architekturę rozpisana przez AI (Architektura nie miała sensu ale manager wygenerował i było zdziwienie kto tak do dupy to zaprojektował xD). Obecnie boje że mimo że w zadaniu pisze co mam zrobić to mam tego nie robić. Totalnie straciłem zaufanie do opisów zadań i przestałem je czytać. Czy wy też mieliście takie problemy? Jak je rozwiązaliście? Zastanawiam się czy może powinienem używać te lanie wody do jakiś swoich promptów i nie czytać tego nawet.

Od strony kodu dość szybko zacząłem używać Github copilot do podpowiedzi inline i z tego jestem zadowolony. Podpowiadanie nazwy zmiennych przy rename też jest świetne. Oraz review zmian przed commitowaniem wydaje się sprawdzać (również w coderabbit) bo w tych miejscach dalej mam dużą kontrole. Ale innych rzeczy nie używałem i chyba jestem zbyt sceptyczny i nie wiem jak to zmienić. Słyszałem że są jakieś agenty jakieś sklile dla AI, jakieś pisanie ADRów dla AI. ale zupełnie wypadłem z tematu bo miałem przez ostatnie 2 lata trudniejszy projekt (który się teraz skończyć), a świat się jakoś bardzo pozmieniał i nie ogarniam tej nowej rzeczywistości. Macie jakieś materiały które polecacie aby to nadrobić? Co wy używanie i obecnie się wam sprawdza?  oraz do czego to używacie?

Dodatkowo mam wrażenie że przynajmniej u mnie wymiana wiedzy w firmie padła. Nie wiem czy to kwestia pracy zdalnej czy ilości nowych rzeczy, ale mam poczucie że kazdy używa AI inaczej i zastanawiam się czy takie elastyczne podejście w obrębie jednego zespołu projektowego to plus czy minus? Jakie macie doświadczenia?
1
komentarz 17 lutego przez Edd Obywatel (1,430 p.)
Ja korzystam z AI dwojako:

- podpowiedzi w IDE od JetBrains (to co jest za free)

- gadam sobie z Gemini jak mam problem, szukam wyjaśnienia pojęć czy partii kodu, etc.

3 odpowiedzi

+4 głosów
odpowiedź 18 lutego przez Ehlert Ekspert (215,230 p.)

Cały czas korzystam z Claude Code, pakiet max laugh jak mam jakieś małe PoC to generuję je w całości. Mniejsze ficzery podobnie. Jak pracuję nad większymi rzeczami to sprowadzam to do małych funkcji, serwisów i wtedy Claude je generuje z bardzo wąskim scopem zadań. Zawsze czytam i analizuję w całości kod wygenerowany. Zawsze są do niego testy jednostkowe i integracyjne nie oparte na mockach.

Chat pomaga mi przy analizie niektórych zagadnień, pozyskiwania wiedzy itp.

Problemy: niestety jak ktoś nie ma wiedzy, nie myśli itp to wszelkie narzędzia AI będą go tylko wspomagać w generowaniu niebezpiecznego i słabego kodu.

komentarz 18 lutego przez Edd Obywatel (1,430 p.)
Piszesz to z perspektywy pracy w jakiejś firmie czy "na swoim"?
1
komentarz 18 lutego przez Ehlert Ekspert (215,230 p.)
I komercyjnie, i w swoich projektach.
komentarz 19 lutego przez Edd Obywatel (1,430 p.)
OK, pytałem, bo niektóre firmy nakładają czasami spore ograniczenia na wykorzystanie AI w pracy.
+1 głos
odpowiedź 22 lutego przez marcin99b Szeryf (86,310 p.)

Nie wiem czy to kwestia pracy zdalnej czy ilości nowych rzeczy, ale mam poczucie że kazdy używa AI inaczej i zastanawiam się czy takie elastyczne podejście w obrębie jednego zespołu projektowego to plus czy minus? Jakie macie doświadczenia?

Ja bym nazwał AI nowym rodzajem języka programowania. W obecnych językach programowania, kod to głównie język angielski w "dziwnym zapisie" który pozwala na bardzo konkretne definiowanie co ma się wydarzyć. AI pozwala na pisanie bardziej po ludzku, język jest swobodniejszy, ale wyniki też są "swobodniejsze". Jeśli chcesz konkretnego rezultatu, musisz opisać wszystko konkretniej. Z tego co słyszałem, języki które są bardziej konkretne, dają lepsze wyniki, niż te które są mniej jednoznaczne, przykładowo polski wygrywa z angielskim, bo mamy tą naszą skomplikowaną (ale bardzo precyzyjną) gramatykę.

Kiedy i co opisywać szczegółowo, a kiedy ogólnie? Ty decydujesz - używasz, sprawdzasz co daje jakie efekty i zdobywasz doświadczenie (albo nie). Zauważyłem że niektórzy lubią kombinować z stylem pisania instrukcji, a inni nauczyli się najprostszego sposobu i próbują go używać do każdego problemu, ale to raczej jest po prostu cecha ludzi.

LLM się zmieniają i to że coś działało dobrze kiedyś, nie znaczy że działa dobrze teraz, przykładowo kilka miesięcy temu na szkoleniu słyszałem, że przy wieloetapowych zadaniach, dobrym pomysłem jest w jednej sesji wygenerować pod-zadania dla AI i w innych sesjach zlecać te drobne zadania niezależnie, a ostatnio zauważyłem, że dużo lepiej się sprawdza wrzucenie do świeżej sesji, bardzo dokładnej instrukcji z bardzo konkretnymi wymaganiami, po czym dopisanie na końcu, żeby po wykonaniu jej, zweryfikował czy na pewno wszystkie wymagania są spełnione, a jeśli nie, to niech próbuje ponownie, do momentu spełnienia wymagań.

Dobrą "sztuczką" jest też generowanie razem z AI, instrukcji dla AI, aby były wyciągały lepszą jakość z konkretnego modelu LLM.

A czasami po prostu piszę jedno zdanie, bo sytuacja jest prosta, a mi się nie chce myśleć nad instrukcją.

No i też konkretne wersje różnią się między sobą, przykładowo najnowsze modele claude, z moich obserwacji, są odporniejsze na typowe błędy dla AI (np zahaczanie się na jednym zdaniu i wykonywanie 90% pracy w oparciu o to jedno zdanie, ignorując całą resztę instrukcji lub danych na których pracuje).

Na pierwszy rzut idą AI dla managerów. Używają do tworzenia notatek z spotkania, tworzenia zadań w JIRA itp. Od rozpoczęcia tego procesu Zadania mają długie lanie wody w opisach. Mieliśmy też sytuacje że dostaliśmy w tasku architekturę rozpisana przez AI (Architektura nie miała sensu ale manager wygenerował i było zdziwienie kto tak do dupy to zaprojektował xD).

Tutaj powtórzę się, ale dobrze opisuje to fragment który wcześniej mówiłem "używasz, sprawdzasz co daje jakie efekty i zdobywasz doświadczenie (albo nie). Zauważyłem że niektórzy lubią kombinować z stylem pisania instrukcji, a inni nauczyli się najprostszego sposobu i próbują go używać do każdego problemu" - mieliśmy w pracy kolegę, który wrzucał opis zadania do AI i mówił "zrób", albo wklejał treść błędu i mówił "napraw", a później chyba nawet nie sprawdzał co AI mu wygenerowało, bo gubił się w kodzie z własnych zadań.
Efekt - nadmiarowy kod, który kompletnie nie pasował do reszty projektu i nie spełniał połowy wymagań, a czasami nawet psuł pracę innych ludzi... i przez pół roku zero refleksji, że może jednak warto byłoby robić zadania inaczej. Ten kolega już z nami nie pracuje.

To był jeden przypadek, a inni są albo sceptyczni i unikają AI z niewiadomego powodu, albo używają prostych instrukcji, ale tylko do obszarów w których sprawdzają się one dobrze (np generowanie podstawowych testów lub dokumentacji), albo eksperymentują z tym co jak działa. No i też z tego co zauważyłem, wszyscy inni weryfikują co AI im wygenerowało, często wprowadzają samodzielnie drobne poprawki itd.

Prywatnie od roku używam tylko claude, mam wykopiony pakiet pro, a w miesiącach w których robię więcej prywatnych rzeczy, wykupuję pakiet max. W pracy mamy postawiony chatgpt na własnej infrastrukturze i mam wrażenie że częściej gubi kontekst i jest bardziej pewny siebie w negatywnym znaczeniu (próbuje kłamać że coś zrobił dobrze) - niedługo w pracy mamy mieć eksperymenty z claude.

Słyszałem że są jakieś agenty jakieś sklile dla AI, jakieś pisanie ADRów dla AI. ale zupełnie wypadłem z tematu bo miałem przez ostatnie 2 lata trudniejszy projekt (który się teraz skończyć), a świat się jakoś bardzo pozmieniał i nie ogarniam tej nowej rzeczywistości

Wyobraź sobie że AI to taki stażysta-idiota, który za dużo nie myśli, ale jak dostanie instrukcje to ją dla ciebie wykona, z jakością zależną od jakości tej instrukcji. W korporacjach często są procedury przeciwko błędom ludzkim, gdzie jedna osoba ma konkretne zadania, druga osoba to weryfikuje, trzecia osoba dodaje swoją część, czwarta osoba ją weryfikuje, piąta osoba weryfikuje całość, szósta osoba przekazuje wyniki dalej, siódma osoba coś z nimi robi... takie procesy można robić, używając agentów, czyli takich "osobnych pracowników". AI ma swój kontekst i czasami mylą mu się wątki jak zmienisz mu zadanie - więc dobrym pomysłem jest układanie procesów, w których konkretne kroki są robione na czystej pamięci. To po prostu odwzorowanie tych procedur korporacyjnych gdzie ludzie patrzą na pracę innych z czystą głową. Fajna sprawa do procesów które wydarzają się wielokrotnie, przykładowo odświeżanie dokumentacji, dodawanie szczegółów do opisów zadań, przepisywanie kodu w projektach według specjalnego schematu (np zmiana frameworka).

komentarz 17 marca przez Edd Obywatel (1,430 p.)
Dobry wpis!
0 głosów
odpowiedź 19 lutego przez Edd Obywatel (1,430 p.)
Jak Rafał zaczął temat programowania wspomaganego AI, to ja się podepnę ze swoimi pytaniami ;)

- Czy korzystacie z jednego AI, np. Claude czy kilku w zależności od typu projektu lub/i technologi? ( Słyszałem, ze Gemini doskonale sobie radzi np. z Flutterem i GoLang, a z innymi językami już nieco gorzej. Inne modele też mają swoje specjalizacje).

- Czy powierzacie AI wszystko czy tylko np. testy i dokumentację kodu? Jakie taski oddajecie AI?

- Czy korzystacie z komercyjnych, płatnych AI czy także z lokalnie odpalanych modeli, jak Qwen Coder 3, itp.?

- Z jakich IDE czy edytorów  korzystacie, które dobrze wspierają przez Was używane modele?

Podobne pytania

0 głosów
0 odpowiedzi 1,329 wizyt
pytanie zadane 4 marca 2020 w Inne języki przez borys0566 Nowicjusz (240 p.)
–6 głosów
1 odpowiedź 1,575 wizyt
pytanie zadane 18 kwietnia 2024 w Inne języki przez niezalogowany
0 głosów
1 odpowiedź 1,173 wizyt

93,729 zapytań

142,668 odpowiedzi

323,283 komentarzy

63,288 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...