Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: Neslušný 10. 10. 2024, 14:31:28

Název: Produktivita vývojáře v době AI
Přispěvatel: Neslušný 10. 10. 2024, 14:31:28
Ahoj, už delší dobu si říkám, že díky AI jsem produktivní minimálně o 20%.
Nepoužívám copilot jen chatGPT, to co mě copilot generuje je spíše kontraproduktivní...
Kde za mě vidím zvýšen efektivity je fakt dobrý a přesný java dock, konfigurace třeba k8s a hlavně z 80% u mě nahradil chatGPT hledání na google a stackoverflow :).

Jak to máte vy drazí kolegové?
Název: Re:Produktivita vývojáře v AI době
Přispěvatel: technomaniak 10. 10. 2024, 15:03:27
Jak to máte vy drazí kolegové?

Zkusil a nepoužívám. Ty nápovědy digitálního šprta jsou pro příliš sofistikované a hluboké problémy naprosto k ničemu. Je užitečná pouze pro programátora co kóduje pouze povrchní a známé problémy a postupy.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: alex6bbc 10. 10. 2024, 15:10:07
obcas jsem tam neco zkusil dat a vysledek byl dost slaby.
Název: Re:Produktivita vývojáře v AI době
Přispěvatel: Neslušný 10. 10. 2024, 15:49:13
Jak to máte vy drazí kolegové?

Zkusil a nepoužívám. Ty nápovědy digitálního šprta jsou pro příliš sofistikované a hluboké problémy naprosto k ničemu. Je užitečná pouze pro programátora co kóduje pouze povrchní a známé problémy a postupy.

Jasně je to jen statistický model co předvídá další slovo, ale ze zkušenosti i já musím komplikované věci rozdělit na části a ty pak vyřešit, jak jinak než jednoduše a povrchně.
ChatGPT určitě není tam kde my.
Ale pokud mu dám menší dílčí úkoly tak to docela zvládá.

Uvedu příklad potřeboval jsem v Javě ultra rychlý konvertor mezi binary(ve stringu na vstupu bohužel...) a hexa. První výsledek byl 1:1 stackOwerflow řešení,  performance fakt špatná..., ale protože jsem už něco podobného řešil mimo Javu, tak jsem se nedal a ptal jsem ChatGPT na rychlejší řešení :).
Na po čtvrté se chatGPT trefila na starý dobrý slovníkový útok a napsala kód, který byl více než o magnitude rychlejší než první řešení.
Nenajdete podobné řešení na stackOwerflow, kdo ví odkud z gitu ho vzala, ale iterace dobrého kódu byla v rámci minut na hodin hledání a testování.
Ano nic komplikované pro zkušeného vývojáře, ale ušetřilo mě chatGpT dost času a řešení bylo navíc jako bonus s hodně dobrým java doc.

Považuji se píše za profesionálního lepiče kódu než low level all knowing coding god, co dělá leetcode ze spánku :)
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: hknmtt 10. 10. 2024, 16:05:37
Ahoj, už delší dobu si říkám, že díky AI jsem produktivní minimálně o 20%.
Nepoužívám copilot jen chatGPT, to co mě copilot generuje je spíše kontraproduktivní...
Kde za mě vidím zvýšen efektivity je fakt dobrý a přesný java dock, konfigurace třeba k8s a hlavně z 80% u mě nahradil chatGPT hledání na google a stackoverflow :).

Jak to máte vy drazí kolegové?

osobne nepouzivam nic, ani nikdy nebudem, ale vcera som videl video s tvorcom Ruby on Rails, meno uz neviem, tusim ma inicialky DHH, a hovoril ze tiez pouzival, ale ze prestal/obmedzil lebo ze si vsimol ze ked dostane odpoved na riesenie problemu, tak opakovane riesi rovnaky problem. inak povedane, nic sa nenaucil z poskytnuteho riesenia lebo ho sam nevymyslel, ale len ctrl+c a ctrl+v, takze hovoril ze sa citi "blbsi". proste mozog je ako sval, treba ho neustale trenovat, inak ochabne.

osobne tiez ked som pol roka nekodil napriklad tak som videl ze musim dobiehat trochu nez som sa do toho znovu dostal.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: MalyTomi 10. 10. 2024, 16:07:41
ja to nepouzivam, lebo skor len robim nejaky ten refaktoring a likvidujem najvacsi bordel v kode.
Ale AI co tak pocuvam z okolia je fajn na to, aby ta to nakoplo, akym smerom sa mas uberat, pripadne ti ponukne moznost o ktorej si nerozmyslal. Takze vyuzit skor ako nejaky poradca, nez ako generator hotoveho kodu.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: r223 10. 10. 2024, 17:44:25
Pouzivam jako chytry vyhledavac.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: cznarg 10. 10. 2024, 18:36:18
Osobně používám jako "chytrý" auto-complete, pak na dělání nudných věcí (třeba návrh testu pokud zrovna nemám TDD období -- ale stejně ho musím hodně upravit), jako chytrý vyhledávač v dokumentaci + občas inspirace jak řešit problém. Sice to napíšu podle sebe ale dokáže to člověka posunout.

Řekl bych že má produktivita stoupla, ale asi nijak drasticky...

Používám kombinaci TabNine a ChatGPT.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: Standa Blábol 10. 10. 2024, 19:51:48
Pouzivam placenyChatGPT prakticky na vsechno, co pred tim resil Google.

Treba namatkou grep s regexem, co z konfiguraku odfiltruje zakomentovane a prazdne radky, napady co uvarit na veceri, ktery den v tydnu je Benatkach nejmin lidi, JSONpath vyraz pro vyhledani atributu z poskytnuteho vzrorku, jak pomoci openssl vypsat lastUpdate z CRL souboru, kod jednoduche javascript funkce s omezenim na uroven ES5, aby fungoval v embedded enginu Duktape a spoooustu dalsiho.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: em.ve 10. 10. 2024, 19:54:51
Jak to máte vy drazí kolegové?

Zrovna včera jsem chatgpt zkoušel - průzkum bojem - a za mě dobrý.

Mám hromadu (50?) jednoduchých commandline py utilit k jednomu proprietárnímu API.
Po spuštění se kontrolují takové ty věci jako je počet parametrů a případně jejich typ
no a když to nesedí, tak se vypíše správná syntaxe a returnem se vyskočí ven.
Myšlenka byla přesunout všude výpis správné syntaxe do separátní metody help().
Dále mít utilitu help.py, která projede všechny py soubory a pokud v nich je help(),
tak ho zavolá -> nemusím udržovat zvláštní textový soubor s popisem ke všem utilitám.

1) python: write code to: get all python *.py files in the current directory. If there is help() function
    in them, execute it.
Funkční kód dala na cca 5. pokus.

2) now i need python code to rename all occurences of Usage: python to Usage: tpy
Chatgpt si pamatuje kontext, takže se ani neptala na typ souborů, se kterými má pracovat:
pyFiles = [f for f in os.listdir() if f.endswith('.py')]
Toto dala na 1. pokus

3) print all py files that do not contain help() function
1. pokus funkční

4) create the following function in all files that do not contain it.
Dále pokračovala definice help funkce, ale tu teď v chatu nevidím.
1. Pokus

Jenže jsem jí zapomněl říci, že chci, aby help() funkce byla jako první v každém souboru.
Takže
5) detect the first function in each file and place the help function above it
1. Pokus

Kdybych to zadal nějakému juniorovi, tak by to trvalo mnohem déle...

















Název: Re:Produktivita vývojáře v době AI
Přispěvatel: Zdeno Sekerák 10. 10. 2024, 21:51:44
Pouzivam ChatGPT ale jenom jako chytry vyhledavac. Fakt je to lepsi nez prochazet tuny odpovedi na stackoverflow. Kdyz odpovi spatne tak ho opravim a necham pregenerovat. Na toto je to dobry.
Zkousel jsem pouzit na vetsi program, chtel jsem funkcni kod na DLMS komunikaci, a nedal to. Stravil jsem s nim hodne hodin. Opravoval jsem po nem kod a nechal ho to prodelavat. Ten stroj ma fakt trpelivost. Haha. Ale nedal to. Ani kdyz uz jsem ho tlacil k nejakemu reseni co jsem vedel ze funguje.
Takze jako evolucne lepsi google rozhodne. Neco vetsiho to je ztrata casu. Taky souhlas ze to vede k spohodlneni. Ze zacatku to jeste kontrolujete pak uz jenom rezignovane pastujete kod a trasujete jestli to dela co ma.

Jo pise to celkem hezke komentare ke kodu.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: Tomas-T 10. 10. 2024, 22:33:24
Já ho používá vcelku často jako náhradu Google.

Např:
- u déle neotevřeného projektu na mě při spouštění vyskočila konkrétní chyba nodemonu (která ale nic neřekla o příčině).
GPTChat navrhl 5 možností, čím by to mohlo být - při jejich prohlédnutí jsem si vzpomněl, že mám globálně asi jinou verzi než dřív - bylo to ono, vyřešeno za 5 minut.

- Potřeboval jsem v LINQ trochu složitější dotaz, o kterém jsem měl představu jak bych ho napsal v čistém SQL. I s popisem zadání odpověď do 2 minut.

- Nedělám jen čistou vývojařinu, píšu pro zákazníky k projektům i dokumenty (popisy, návrhy, analýzy), potřeboval jsem v angličtině něco o Azure Compute layer pro využití v konkrétním projektu tak na 5 stran v přesně definované struktuře (ukázal jsem mu jinou kapitolu stejného dokumentu) - za 10 minut (popis zadání) bylo hotovo.

- Chtěl jsem v SQL hromadně na všech tabulkách v databázi deaktivovat kontrolu cizích klíčů během importu dat skriptem kvůli vzájemným vazbám - za 2 minuty jsem měl SQL skript pro vypnutí i opětovné zapnutí na konci akce.

- Ve Wordu se mi text v cizím dokumentu při psaní zarovnával k dolnímu okraji. Opravdu zpaměti nevím, kde se dá něco takového v konfiguraci nastavit. GPTChat poradil za 2 minuty.

a spousty dalších jednoduchých problémů, které denně řeším - proti hledání na Google v balastu odpovědí nebo v dokumentaci produktu/knihovny/jazyka to šetří čas.
Jak odpověď navrhne jednu nebo více možností, u kódu i vysvětlí, co jednotlivé části dělají.
Samozřejmě občas dělá chyby, ale když ho upozorním, většinou se sám vhodně opraví.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: Martin Poljak 11. 10. 2024, 07:56:21
V zásadě podobně, jako většina ostatních. Když narazím na něco, co se na Googlu hledá špatně (čehož je ovšem vzhledem ke snaze Googlu myslet za uživatele čím dál víc), ChatGPT použiji a většinou to i k něčemu je. Podobně se hodí i pro hrubé nasměrování.

Ale jinak i čtyřka běžně halucinuje i o celkem běžných problémech, zkoušel jsem a rychle jsem toho nechal. Je to prostě anglická intelligence, což v angličtině má jinou konotaci, nez český pojem "inteligence" z čehož pochází většina nesmyslných představ o dané věci mezi českými uživateli.
Název: Re:Produktivita vývojáře v AI době
Přispěvatel: technomaniak 11. 10. 2024, 07:59:01

Jasně je to jen statistický model co předvídá další slovo, ale ze zkušenosti i já musím komplikované věci rozdělit na části a ty pak vyřešit, jak jinak než jednoduše a povrchně.
ChatGPT určitě není tam kde my.
Ale pokud mu dám menší dílčí úkoly tak to docela zvládá.

Tak jsem to úplně nemyslel. Každý programátor rozkládá velký problém na řadu menších a ty postupně řeší. Ale co jsem hlavně měl na mysli je to že její užitečnost je vyšší u problémů které jsou častěji řešené(jsou jednodušší a známější a tudíž se na nich může učit). Problémy které nikdo neřeší tak na nich logicky není vycvičená a její přínos je nulový. A to co programuje každý je zrovna to co málokdy někdo chce a zaplatí za to. Prostě pro začátečníky kteří teprve objevují programování to může být velmi přínosné ale postupem času pokud pronikáš hlouběji a hlouběji tak četnost užitečnosti klesá k nule.

nic sa nenaucil z poskytnuteho riesenia lebo ho sam nevymyslel, ale len ctrl+c a ctrl+v, takze hovoril ze sa citi "blbsi". proste mozog je ako sval, treba ho neustale trenovat, inak ochabne.

Pokud by to takto fungovalo tak by to byl dar z nebes. CTRL+C a CTRL+V a ještě u toho nic nevymýšlet? Pro mě dokonalý sen a ještě se u toho ani neunavím.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: Zopper 11. 10. 2024, 08:35:50
No, jednak ta ChatGPT celkem obstojně funguje jako alternativa k prohledávání StackOverflow a různých blogů. Napíšu pár vět o tom, co hledám, a dostanu odpověď, která se buď dá okamžitě zkusit. Nebo, pokud se z toho nedá během chvilky dostat použitelný výsledek, tak aspoň obsahuje dost specifických informací, ze kterých poskládám efektivní dotaz do Google, protože už vím, jakou konkrétní knihovnu, konfigurační volbu, atd, zkusit hledat. A pak se z toho Google zas třeba vrátím a položím ChatGPT jiný dotaz s konkrétnějšími hinty, ze kterých už vyrobí správnou odpověď.

Za druhé, je to super na úkoly s technologií, kterou moc neznám a ani mě moc nezajímá. Například na psaní userscriptů do Tampermonkey, když člověk není zrovna frontendový vývojář. "S využitím jQuery najdi X a udělej Y." Bam, mám 15 řádků, co případně trochu poladím a hotovo.

A za třetí inspirace ohledně jiných možností řešení. Dotaz: "Mám tuhle funkci o 5 řádcích, jde to udělat nějak pěknější?" Reakce na odpověď: "Ha! Tahle dvouřádková konstrukce mě fakt nenapadla!" nebo "Hele, tohle museli přidat v Javě 21, pěkné."

Mimo to jsou tu ještě využití nesouvisející s vývojařinou. Textové modely velmi dobře pracují s textem jako takovým, takže jej dokáží přeformulovat, udělat obstojnou korekturu, poradit jaká slova můžu použít pro nějaký význam, atd.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: Vít Šesták (v6ak) 11. 10. 2024, 08:43:46
Je několik scénářů, kdy se to hodí. Asi spíše v podobě brainstormingu než jako finální řešení.

* Pojmenování – popíšu, co chci pojmenovat, a řeknu si o několik názvů, potom z toho vyberu.
* Analýza chybových hlásek – někdy dovede pěkně prozkoumat chybovou hlášku včetně stacktrace. Sice to nebylo při vývoji, ale čučel jsem u analýzy stacktrace z kernelu.
* Ladění – popíšu chování, nechám ho elaborovat příčiny. Tady je ale trochu problém zvládnout předat potřebný kontext, takže to asi nedělám až tak často.
* Návrh – popíšu problém, nechám si poradit, kudy se vydat. Většinou bez samotného kódu. Je pak ale na mě vyhodnotit, jestli je to dobrý nápad.

Zkoušel jsem to i nechat generovat kód, případně zjednodušovat vlastní kód, ale pro toto moc využití nemám.
Název: Re:Produktivita vývojáře v AI době
Přispěvatel: Martin Poljak 11. 10. 2024, 08:46:10

Pokud by to takto fungovalo tak by to byl dar z nebes. CTRL+C a CTRL+V a ještě u toho nic nevymýšlet? Pro mě dokonalý sen a ještě se u toho ani neunavím.

Pokud to je něco, co člověk vymýšlet nechce, proč ne. Ale já osobně se tedy tímhle oborem živím právě proto, že mě to něco vymýšlet baví. A za to mě ostatně taky platí.

Ono to tak ale stejně skutečně nefunguje. Funguje to tak u tisíckrát vytvořených jednoduchých věcí... tedy většinou víceméně funguje. Hodí se to pro to, čím se člověk většinou stejně nechce zabývat, je to víceméně primitivní a co nikdo nechce dělat. Ale pro vážnou práci zatím fakt ne.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: listoper 11. 10. 2024, 10:00:37
Produktivita znamena mira produkce. Tzn. otazna zni "Jsou vyvojari schopni vyprodukovat vice kodu s AI?" a odpoved bude pravdepodobne ano...
Ale kod neni "asset", ale naopak.... kod me stoji zdroje na udrzbu... Takze limitne pokud dokazu vyresit problem bez kodu nemam vydaje... takze cim min kodu tim lip.. 

Takze jestli jsou vyvojari produktivnejsi a jestli je to zadouci jsou dve ruzny otazky.
Název: Re:Produktivita vývojáře v AI době
Přispěvatel: technomaniak 11. 10. 2024, 10:04:20
Pokud to je něco, co člověk vymýšlet nechce, proč ne. Ale já osobně se tedy tímhle oborem živím právě proto, že mě to něco vymýšlet baví. A za to mě ostatně taky platí.

Mám náladu tak si trochu zakomunikuji. V programování high lvl/low lvl v 99,999% vymýšlíš tak jako tak znovu kolo, které před tebou už někdo vytvořil. Jinak řečeno naprogramuješ stejnou myšlenku jinak(někdy lépe, někdy hůře-> respektive většinou hůře).

* Co jsi kdy vymyslel co před tebou ještě nikdo nikdy nevymyslel či nestvořil ? Stačí 1 příklad a kolik jsi jich celkově za celý život zvládl.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: Michal Zahradníček 11. 10. 2024, 10:30:20
Práve výšlo zaujímavé video/článok na túto tému:

https://www.youtube.com/watch?v=khIFjdNTfdA

Ja tiež používam AI(Gemini), ale iba takým spôsobom ako už napísali vyššie. Ako tak trocha inteligentnejší google. Keď som si prvý krát dal vygenerovať nejaký JS kód, tak vyzeral opticky fakt dobre až na to, že nerobil to čo má. Potom som išie riadok po riadku a zistil som, že používa funkcie tak ako sa nemajú.
Keď som mu zadal aby mi spravil malý skript v Go, tak si dokonca navymýšľal funkcie, ktoré v knižnici čo použil ani nie su. Ale opäť to na pohľad vyzeralo veľmi vierohodne  :D
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: premekv 11. 10. 2024, 11:03:03
Pracovní použití:

1. transformace textu - na to je to skvěle použitelné, nepřekvapivě :) typický příklad konverze z jednoho formátu do jiného s nějakou transformací, přeskládáním hodnot atd. "tady máš xml, vytáhni z toho tyhle data, takto je přeskup a ulož do jsonu". Dříve bych si na takové věci psal skript v pythonu, dnes deleguji na AI.

2. SQL - manželka v práci hodně dělá se SQL a hodně používá bing chat pro tvorbu dotazů, což je varianta 1 - transofrmace přirozené řeči na SQL. SQL má být blízko přirozené řeči by design, ale v tomto poslání imho úspěšně failuje :) a AI zde pomáhá hodně

3. programování - můj skoro denní chléb je java, občas javascript, python, různé shell skripty atd. Tady je můj pocit takový ambivalentní (ve fázi "pozoruji a s opatrností občas použiju"). Jak tu někdo psal, výstupy vypadají často velice věrohodně, což právě může být ta zrada :)  Často vypadá kód přesně tak jak potřebuji až na drobnost "otočený operátor v podmínce atd.".  Nicméně např. funkci IntellJ IDEA  pro "chytré našeptávání" (full line completion) nechávám zapnutou, protože už je to za mne lehce nad hranicí toho, kdy se nemohu rozhodnout jestli to pomáhá nebo škodí (spíš pomáhá). Pořád je to jen generování textu na základě nějaké pravděpodobnosti (teď si ten kdo rozumí ML musí trhat vlasy na hlavě, ale já tomu nerozumím, tak se na to dívám takto). S tím souvisí ty nebezpečné "drobné zrady" ve výstupu a také to, že pokud se AI náhle skvěle trefuje v tom co chci psát, možná píšu stopadesátou repetitivní variantu téhož a měl bych se zamyslet jestli něco nechci spíš zobecnit/refaktorovat. Může být snadné podlehnout svodům "copy paste programování" když ten repetiviní  kód nabízí AI.  Jak říkám, použít, ale opatrně. A to se podle mne hned tak rychle nezmění (můžu se plést).
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: Vít Šesták (v6ak) 11. 10. 2024, 14:12:31
Vlastně ještě jedna věc: orientace v nedokumentovaném kódu. Hodím mu kód a nechám si jej vysvětlit. Někdy to funguje překvapivě dobře.
Název: Re:Produktivita vývojáře v AI době
Přispěvatel: premekv 11. 10. 2024, 15:17:27
Pokud to je něco, co člověk vymýšlet nechce, proč ne. Ale já osobně se tedy tímhle oborem živím právě proto, že mě to něco vymýšlet baví. A za to mě ostatně taky platí.

Mám náladu tak si trochu zakomunikuji. V programování high lvl/low lvl v 99,999% vymýšlíš tak jako tak znovu kolo, které před tebou už někdo vytvořil. Jinak řečeno naprogramuješ stejnou myšlenku jinak(někdy lépe, někdy hůře-> respektive většinou hůře).

* Co jsi kdy vymyslel co před tebou ještě nikdo nikdy nevymyslel či nestvořil ? Stačí 1 příklad a kolik jsi jich celkově za celý život zvládl.

S dovolením vstoupím do diskuze s paralelou stavebnice. Samozřejmě mne nikdo nezaplatí, že vyrábím kostky lega, to umí už někdo lépe, dokonce i za to, že složím pár kostiček k sobě a vznikne jednoduchý podvozek auta mne nikdo moc nepochválí, ale že z těch dílů, a složitějších celků složím dohromady stavbu, kterou zákazník chtěl (a ani neví, že ji vlastně chtěl a to co prvně říkal, že chce, může být vlastně něco úplně jiného), to je ta přidaná hodnota, a to je to co zatím AI nahradit neumí.
Název: Re:Produktivita vývojáře v AI době
Přispěvatel: Bleckeb 11. 10. 2024, 15:39:43
S dovolením vstoupím do diskuze s paralelou stavebnice. Samozřejmě mne nikdo nezaplatí, že vyrábím kostky lega, to umí už někdo lépe, dokonce i za to, že složím pár kostiček k sobě a vznikne jednoduchý podvozek auta mne nikdo moc nepochválí, ale že z těch dílů, a složitějších celků složím dohromady stavbu, kterou zákazník chtěl (a ani neví, že ji vlastně chtěl a to co prvně říkal, že chce, může být vlastně něco úplně jiného), to je ta přidaná hodnota, a to je to co zatím AI nahradit neumí.

Taková paralela na celkem už starý vtípek:

"Aby AI nahradila práci programátora, musel by se zákazník naučit detailně popsat svoje požadavky.. Jo, jsme v pohodě"  ;)
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: Vít Šesták (v6ak) 11. 10. 2024, 17:05:41
Otázka je, jestli jsme blíže AI, která naprogramuje něco většího, nebo AI, která bude konverzovat se zákazníkem, aby zjistila všechny požadavky…
Název: Re:Produktivita vývojáře v AI době
Přispěvatel: Zdeno Sekerák 11. 10. 2024, 20:22:14
musel by se zákazník naučit detailně popsat svoje požadavky..
Takovemu cloveku ze rika prompter a tohle povolani ma pred sebou budoucnost.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: Tomáš Procházka 13. 10. 2024, 18:36:11
Otázka je, jestli jsme blíže AI, která naprogramuje něco většího, nebo AI, která bude konverzovat se zákazníkem, aby zjistila všechny požadavky…

Zatím je problém ve velikosti contextu. Zatím není možné do LLM nahrát celé monorepo, nebo hromadu souvisejících (přímo i nepřímo) mikroservis/repos.

Jinak osobně používám Copilota na autocomplete a ChatGPT na dotazy, generování SQL, jq, bash atd. Bohužel Copilot Chat, ač má určitý context, tak je většinou vedle jak ta jedle.

A tady pro mistra know-it-all, kterému hloupá AI nedokáže ani trochu poradit: lol
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: Vít Šesták (v6ak) 13. 10. 2024, 18:54:17
Těch problémů tam bude víc, nicméně pointa je, že ten argument přesností zadání moc nedává moc smysl, protože jestli tu někdy bude AI schopná programovat komplexní projekty, dost možná tu už bude i AI schopná to přesné zadání vykomunikovat…
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: qelurg 14. 10. 2024, 10:50:18
Používám placený ChatGPT intenzivně a to ve dvou scénářích, otrok a rádce, mám na to zvlášť nastavené agenty. Otrok dělá jednoduché věci, primitivní věci, ideálně se často opakující, kdy mu dám vzor, a nechá́m ho vygenerovat zbytek. Výhodou je ušetřený čas. Rádce mi radí, když něco nevím, automaticky nabízí víc variantních řešení, srovnává je a uvádí výhody a nevýhody. Tyto věci nepřebírám do kódu, beru je jako výukový materiál. Používání AI mě přimělo/naučilo psát krátké jednoznačné a jednoúčelové funkce, ideálně nezávislé na zbytku programu, aby se na nich dalo s AI pracovat samostatně bez nutnosti znalosti rozsáhlého kontextu. To bylo v doporučeních jak správně kódovat už dávno, ale respektovat jsem to začal až teď.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: sarimak 14. 10. 2024, 14:52:34
Ahoj, asi pul roku pouzivam neplacenou verzi SourceGraph Cody v podobne doplnku do VS Code. Pouziva model Anthropic Claude Sonnet 3.5 (tedy dlouhy kontext a fill in the middle a ne predict next word jako ChatGPT modely, coz by melo byt pro programovani uzitecnejsi -- ale nemam osobni zkusenost) spolecne s lokalnim RAG/retrieval-augmented generation (probehne se po celem naklonovanem Git repu a zaindexuje si ho -- napocita embeddingy meho kodu pres LLM API a nahodi lokalni similarity/semantic search, kterym obohacuje dotazy do LLM API) a da se pouzit jak pro code completion, tak pro chat (tam je mozne pridavat kontext -- napr. oznacit blok radku nebo cely soubor). Super bonus je, ze se zasilana data nepouzivaji pro trening modelu -- i ve free verzi!

Free verze nema zadny limit ktery by me realne omezoval a nevyzaduje nic vic nez GitHub ucet (zadny telefon, cele jmeno a datum narozeni apod.). Pokud si nekdo plati nejake LLM API, tak se da pouzit i vlastni API klic. Pomoci GitHub uctu dovede zjistit, jak moc se zmenil kod oproti dobe kdy nad nim napocital embeddingy, takze je muze pregenerovat.

Diky RAG je coding asistent velice relevantni, protoze napovida nejen generickym know-how vydestilovanym z internetu, ale aplikuje lokalni coding style z meho Git repa. Fun fact: Dost mu pomahaji typove anotace, semanticky spravne nazvy trid/metod, docstringy a komentare -- myslim, ze to je ultimatni argument proti zastancum zakazu veskerych komentaru/docstringu. ;-)

Sice pouzivam striktni linting, pomerne striktni typove anotace a v IDE mam doplnek, ktere diky typovym anotacim dovede opravdu slusne doplnovat, ale diky asistentovi je mozne doplnovat i opakujici se fragmenty kodu (napr. konstrukce SQL dotazu pro ruzne DAO metody, kde se casto opakuji jmena tabulek, struktura slozenych primarnich klicu, WHERE podminky apod.). U testu a docstringu pouzivam styl "zacnu psat, necham ho doplnit, doupravim to po nem a zas necham doplnit". Diky specializaci na integraci do IDE se nemusim moc zabyvat prompt engineeringem, protoze system prompt maji zrejme tak vytuneny, ze mi casto staci jen pastnout treba cast interaktivni session v IPython REPL nebo z prikazove radky vcetne chybove hlasky a ani nemusim pripisovat at to opravi nebo poradi co je spatne. Pomerne uzitecna je i prvotni orientace v nezname codebase (nechat si pres chat vysvetlit, k cemu dane repo slouzi a kde jsou zajimave casti kde se deje to nejdulezitejsi).

Naopak, na code review mi hodne vadi, kdyz se autor neobtezuje po asistentovi projit a doplnit docstringy -- protoze pak jen duplikuji to, co se da vycist ze jmena metody/jeji tridy a nemaji tak skoro zadnou pridanou hodnotu.

Za me stoji za to asistenta pouzivat -- rozhodne ze me nedela dva programatory v jednom, ale setri mi cast prace a pomaha generovat napady. Nebojim se, ze by (i pri dnesnim prekotnem vyvoji) tahle technologie nahradila programatory -- ale nektere veci diky tomu pujdou delat s mensi drinou.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: anonacct 15. 10. 2024, 22:49:27
Budu upřímný - zkoušel jsem to, a AI je zatím tak max. pro lidi co neumí napsat korektně ani for cyklus...

Prostě v moji práci to použít nejde, protože ty problémy co řeším to buď nezná a nebo to nabídne úplně to nejhorší možné řešení, které se nedá použít (kvůli výkonu, má to chyby, atd...) a mnohdy vůbec nechápe daný problém a snaží se mě přelstít tím, že mi vyřeší problém jiný. Zkoušel jsem to takto asi měsíc a nepoužil jsem ani řádek.

Další věc je, že to je stejně v normální práci většinou zakázané.

BTW co mě na AI obecně nejvíc děsí jsou ty "krásné" odpovědi, které vypadají na první pohled úplně věrohodně. Je to prostě jak promakaný scam, který se snaží člověka přesvědčit, že to je legit - vždycky krásná gramatika, formátování, kód, atd...
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: jjrsk 16. 10. 2024, 07:46:16
BTW co mě na AI obecně nejvíc děsí jsou ty "krásné" odpovědi, které vypadají na první pohled úplně věrohodně. Je to prostě jak promakaný scam, který se snaží člověka přesvědčit, že to je legit - vždycky krásná gramatika, formátování, kód, atd...
Protoze to neni AI. Je to jazykovy model a funguje to uplne stejne jako Eliza. S tou kdyz ses spravne bavil, tak to taky vypadalo ze by to mohl byt clovek. Tohle je jen o fous sofistikovanejsi, ale ani o pid chytrejsi.

Ono to nehleda reseni tveho problemu, protoze to nechape co po tom chces, ono to hleda nejaka data ktera se vyskytuji v souvislosti se slovy ktera si pouzil. A vzdy ti to vrati prave takova, ktera se vyskytuji nejcastejs, nikoli takova, ktera by byla nejspravnejsi.
Název: Re:Produktivita vývojáře v době AI
Přispěvatel: Vít Šesták (v6ak) 16. 10. 2024, 14:55:10
Poslední dva příspěvky mi přijdou spíše jako snaha ukázat, že je to k ničemu, než hledání, kde to má smysl. Ano, není to dokonalé, ale v některých případech, zejména ve formě brainstormingu, to smysl dává. (Více jsem se rozepsal v komentářích výše.)