Testoval jsem jen asi měsíc, ale když mě to včera odhlásilo, tak za těch $10 jsem neváhal. Občas z toho vypadne strašlivě srandovní nesmysl, ale to se stačí naučit ignorovat.. Celkový přínos je naprosto neuvěřitelně obrovský, že tohle dělá nějaká AI, to jsem teda čuměl :D
Jinak vyzkoušet se dá stále zdarma, účtuje se až po měsíci a během té doby jde předplatné vypnout.
Jsem za takovéhle věci poměrně rád. Teď jsem to nějakou dobu testoval, bohužel, Copilot se neumí vypořád s bezpečnostními kódy a kryptografií, doplňuje nebezepčné varianty pro práci s hesly a šifrování, jeho kód je náchylný na time attack, na brute force, některých případech i špatně ošetřuje vícebajtové vstupy. Vlastně se chová stejně jako většina programátorů. Vtipné.
Používal jsem to v IntelliJ, jazyk java a typescript. Je to hezké, ale spíše mi to překáželo - často formátuji tabulátory a právě na tabulátor to potvrdí nabízený AI kód. Na jinou klávesu mi to bohužel smysl nedává, tak jsem se s tím pral.
Spíše mi to ale nabízelo nesmysly. Schopnost se razantně změní, když konstrukce správně pojmenováváte, na základě správného jména to generuje věrnější zdroják. Následně jsem se i pěkně spálil s liquibase, kdy to pro changeSet vygenerovalo nepoužitelné atributy.
Vidím v tom hezkou ukázku, ale v mém případě je pořád nutné na to koukat s nadhledem. Začal jsem si na to zvykat jako na tutovku, ale toto nelze a párkrát jsem se spálil. Je to skvělé, když se učíte něco nového, ale nelze na to spoléhat a stejně raději ověřit kód, aby dělal, co má. Ve výsledku to ušetří psaní, ale že by to zvládalo programátorský um, tak to nikoli.
V typescript + reactjs byly výsledky lepší než v javě, ale opět šlo spíše o ušetření psaní. Nejvíce mi to vyhovovalo, když jsem v javě potřeboval vyhodit nějakou výjimku, tak mi to nabídlo vcelku použitelnou zprávu výjimky.
Mě tedy zpoplatnění jen přesvědčilo v tom, že to mám přestat používat. Popravdě jsem před i zpoplatněním pozoroval ztrátu svých schopností, kdy jsem se na tento nástroj spoléhal příliš a nakonec mi to vychází, že do té dokumentace musím stejně nahlédnout.
Tak ono to má primarně právě ulehčit psaní - ne nahradit přemýšlení... Je to takový trochu chytřejší autocomplete, není to určeno k tomu, aby se na to lidi spoléhali jako na tutovku a přestali číst dokumentaci.. Testoval jsem v PHP/HTML/CSS/JS/TS a řekněme těch 30% otrockého psaní to napsalo samo, člověk si to jen poupraví dle potřeby. Prostě takové ty už vymyšlené kola/principy, které nikdo nedělá jinak.
Taky se mi líbí, že je nabízeno více možností a člověk může jedním kliknutím kouknout, jak tu danou věc dělá "dalších 10 programátorů".. Osobně si myslím ,že pokud člověk tráví v nějakém IDE aspoň pár hodin denně, tak to za těch $10 stojí i jen pro to nakouknutí :)
23. 6. 2022, 10:10 editováno autorem komentáře
to nesmysl... neulehčí to nic, ale "programátoři" budou pak opravdu je tupé opice bez mozku a jen lepiči kódu. Osobně s tím nesouhlasím a podobná k**ndoviny ve firmě podporovat nebudu - lidi platím za to, že pracují. Paradox na to všem je, že pak bude kód vypadat všude stejně, a pokud tam bude nějaká díra, tak ji budou mít všichni.
Na otrocké psaní, jak píšete lze použít např. šablony apod, Ale chápu, každé zboží má své kupce, takže i AI od M$ bude mít velkou šanci hlavně u slabších jedinců. Dobrý programátor tohle potřebovat nebude, protože bude mít mnohonásobně lepší pohled na celkovou problematiku kódu a projektu, než nějaké přihlouplé AI, které je tak chytré, jak se podaří nastavit koeficienty. Dobrý to bude možná tak nějaké "Hello world" projekty, ale ne na komplexní a Secure věci. Za mě osobně, M$ tomu opravdu důvěru nepřidá...
Neuronky a AI jsem zkoušel, podle mě je to zatím naprosto k ničemu.
24. 6. 2022, 17:52 editováno autorem komentáře
Vlastni kod tady docela i chapu... Ale jestli mi AI vlozi kus kodu, nebo mam hledat knihovnu a zbezne ji prochazet, jestli to nekdo totalne nezpatlal, ma dobre pokryti testy, drzi stabilni api - coz zase musim pokryt nejakym vlastnim testem - tak tady pro me asi par radku doplnenych pomoci nejakeho modelu vyhrava - je to radove mene prace.
Cele je to jen nastroj. Nikdo nikoho nenuti to poustet na kriticke casti programu. Ale pro nejakou pomoc s vygenerovanim treba klienta pro prikazovou radku, automatu pro testy atp. to umi vyrazne pomoc.
popisují to tady https://fossa.com/blog/analyzing-legal-implications-github-copilot/, je to samozřejmě tak trochu na vodě.
Už jen sdělení:
“If you look at the GitHub Terms of Service, no matter what license you use, you give GitHub the right to host your code and to use your code to improve their products and features,” Downing says. “So with respect to code that’s already on GitHub, I think the answer to the question of copyright infringement is fairly straightforward.”
je na divné, v podmínkách použití githubu není nic o tom, že mohou tvůj kód použít jakkoliv pro své účely, naopak tam mají explicitně vyjmenované k čemu dáváš souhlas:
We need the legal right to do things like host Your Content, publish it, and share it. You grant us and our legal successors the right to store, archive, parse, and display Your Content, and make incidental copies, as necessary to provide the Service, including improving the Service over time. This license includes the right to do things like copy it to our database and make backups; show it to you and other users; parse it into a search index or otherwise analyze it on our servers; share it with other users; and perform it, in case Your Content is something like music or video.
Poté i sami zmiňují, že kód nemohou dále prodávat, placený Copilot, který používá kód je za mě prodoj kódu jako služby, porušují vlastní podmínky:
This license does not grant GitHub the right to sell Your Content. It also does not grant GitHub the right to otherwise distribute or use Your Content outside of our provision of the Service
Tolik k amatérskému pohledu. Tohle se bude ještě asi vyjíjet a selsky řečeno, pokud trénuji svůj stroj nad něčím duševním vlastnictvím, těžko se mohu zbavit odpovědnosti a potřebné licence, když řeknu, že ve výsledku používám jen miniaturní výsledky, vstupem je pořád ten licencovaný kód.
Rekneme si to uprimne, ja v posledni dobe pisu programy stylem "search-on-stackoverflow-and-paste". Je to hlavne diky tomu, ze jsem v posledni dobe nucen programovat i v jazycich, kterym jsem se cely zivot snazil vyhnout - treba python. Pripadne ve frameworkach, ktere neznam uplne dobre. Samozrejme clovek musi vedet co chce napsat, ale jak konkretne to napsat, to uz nekdy nekdo 1000 krat vymyslel. Takze asi tento copilot zkusim.
Takže za prvé, programátor stále musí velmi dobře vědět co dělá a za druhé, místo psaní toho co chci (když už musím vědět co dělám), tak budu listovat velmi podobnými návrhy, všechny je pozorně zkoumat aby mi nic neuniklo, případně hledat další - a to ještě budu muset všechno v textu napsat tak, aby to stroj dobře pochopil, a ještě hned na začátku metody znát celou implementaci - což je často při shánění dat z API taky celkem oříšek ...
V Emacsu mám pokročilé templates, takže mohu i poměrně složitou metodu nebo jednoduché funkce lehce přihodit, daleko lepší koncept mi připadnou takové ty pluginy, které sbírají příspěvky a upozorňují pokud se spisovatel někde dopustí nějakého nešvaru od pravopisu až po potenciální problémy s exekucí programu - což se dobře hodí i u starých či importovaných projektů ...
Ale rozhodně Copilota vyzkouším. Třeba z toho něco bude ...
24. 6. 2022, 00:19 editováno autorem komentáře
Když nechceš, tak to nikam nic neposílá.
Nastavení zde: https://github.com/settings/copilot