Nuz obavam sa ze toto fungovat nebude. Platenie expertov - kto bude vyberat kto je expert a rozsah oblasti na Stack Overflow je obrovsky. Som docela zvedavy ako budu chciet zohnat pozadovane mnozstvo expertov aby to malo nejaky efekt, ale inak to nemusi byt zle (teda bude zalezat aky ten prijem bude). Vyberat poplatky od AI, to bude docela zlozite. Ono medzi nami ani kvalita tych odpovedi na Stack Overflow nebola vzdy bohvieco a hlavne bude velmi tazke konkurovat v rcyhlosti - do ai napise clovek poziadavku a ma odpoved. Napisat na Stack a cakat kym niekto odpise hmm...
Otázka je, kde se budou LLM trénovat, když tu nebude SO a podobné stránky s (relativně) rozumnými odpověďmi (ta moderace se nám sice nemůže líbit, ale udržuje kvalitu).
LLM mají všeobecně řečení "nevím"(nevědomosti) schované hodně hluboko. Nad tím mají několik vtstev vymýšlení, domýšlení, podpůrnosti, předstírání znalostí, klidně si i vymyslí neexistující zdroje k vytvoření důvěryhodnosti(Claude) nebo ověření u reálného uživatele(DeepSeek).
Je nutné tuto možnost "povolit(vynutit)" v roli nebo v promtu. Např.
"Chci podložené odpovědi bez domýšlení a předstírání znalostí. Při nejistotě použij vyhledávání, jinak napiš „nevím“"
Jedna z možností je, že LLM se zlepší natolik, že již nebudou pro trénink aktuální otázky s kvalitními odpověďmi potřebovat - dokážou si to zjistit přímo ze zdrojáků (nebo třeba z vlastních experimentů). Konec konců, už teď mi umí odpovídat na otázky ohledně kódu, o kterém se na stackoverflow nic nepíše (protože jsem ho napsal včera) - prostě tím že si ho to přečte.
jo castecne souhlas (zrovna modely pro zdrojaky trenujeme). Ale napriklad na otazku "budou fungovat heartbeat pingy v Kafce 4.0, kdyz klientska knihovna postavena na (placnu) librdkafka.so podporuje 3.8.0?" to proste z dokumentace nevycte, ze zdrojaku tedy to by musel byt genius. IMHO na toto dokaze kvalifikovane odpovedet jen autor nebo nekdo, kdo se v tom hrabe kazdy den.
Zdá se mi, že jsi to nikdy neviděl v činnosti. Zrovna včera jsem vytáhnul svůj dva roky odložený rozpracovaný kód a nechal AI ho prozkoumat, vysvětlit co dělá a co je potřeba dodělat. Asi před měsícem jsem si zase nechal vysvětlovat, co dělá disasemblovaný obfuskovaný smali kód a následně ho nechal AI i upravovat a tím si upravil opuštěnou android aplikaci. I když je to jen jazykový model, tak má tolik parametrů, že se to chová inteligentně. Když si s něčím neví rady, nechá si to vysvětlit nebo jí pomůže odkaz na dokumentaci. Pokročilé modely si ji dokonce umí sami dohlddat a pracovat s takto získanými i formacemi mimo sbůj standardní trénink.
Přijde mi, že tyto komentáře kromě lidí, kteří nikdy nezkoušeli AI netriviálně používat, dělají ještě lidi, kteří vidí "AI" jako jeden blob, nerozlišují slabší a silnější modely, příp. mají zkušenost primárně se slabšími (GPT-4o) a ne se state of the art (OpenAI o3, Clause 3.5 Sonnet a novější, Gemini 2.5 Pro).
Další limitací může být dobrý tooling. Např. nástroje, které umožňují AI přímo pracovat se zdrojáky (Cursor, Cline, Cody, etc.), odemykají o dost víc monžostí než prostý chat, kde člověk kopíruje věci tam a zpátky.
Můžeme sémanticky slovíčkařit o tom, co je "opravdová inteligence" či "opravdové porozumění", ale o tom, že nejsilnější modely umí řešit originální, netriviální problémy, které určitě nikdo v trénovacích datech neřešil, o tom není pochyb. Samozřejmě že ne vždy, ne zcela spolehlivě, ale to je jiná otázka.
Vzhladom na dnesne trendy je to vlasne jedno. Dnesne desktop aplikacie su Electron. Ten je prakticky vsade. Vrcholnym nastrojom na ui na desktope je hmtl+css+js/ts alebo React, nuz co potom chceme. Cely vyvoj a kam to smeruje sa neda ani pekne napisat. Az tak nejak cakam kedy to uz prdne. Potom je aspon sanca ze mozno vznikne nieco nove.Ale to co je dnes IT a SW development to je tragedia.
Záleží na kvalitě ai, placený chatgpt je skvělý, ten už mi napsal desítky skriptů. A ne že bych je nedokázal napsat sám, ale co mě by trvalo hodinu a víc on má za 5 minut i s odladěním, se zdokumentováním, nápovědou a vším. To jest, nedělal bych je. Na tohle je SO krátký, protože spíš než na to, co neznám používám AI jako otroka, který rychle dělá jednoduché věci, v tom tkví jeho síla. A naopak já radím jí, jak má něco udělat, když neví.
Já teď viděl zajímavé video, kde tvrdili, že abys uměl řešit těžké věci v programování musíš udělat mnoho těch lehkých a s použitím AI tohle lidé ztrácí. Tj. nenacvičí se tak, aby v momentě kdy jim AI nepomůže, byli schopni zvládnout řešit problém. Dokazovali to na dnešních autech, jak lidé s čím víc automatickým řízení ztrácí schopnost manuálního řízení, že na věci které dělali podvědomě se nyní musí soustředit.
@Jan Hrach
A svym zpusobem meli pravdu. Ja napriklad Python pouzivam jako kalkulacku, neboli abych vynasobil dve trojciferna cisla, spoustim kvuli tomu OS a python interpreter, zabere to (hadam) desitky megabajtu pameti a celkove to stoji asi bambilionkrat vice procesoroveho casu, nez kdybych to resil zpusobem ze sedesatych let. Coz si ani nebudu hrat na to, ze vim, jak by to vypadalo.
To je OK, protoze muj cas je daleko drazsi nez cas pocitace. Ale dalsim dusledkem je, ze kdyz chci nekomu poslat skrz Teams nekolik desitek znaku, spotrebuji 250MB RAM na Teams klienta, ktery se spousti nekolik sekund. Nektere aplikace nabobtnaly neskutecne. V telefonu mam osmijadrovy procesor s 12GB RAM, abych mohl psat komentare na root.cz ...
Takze za me meli tihle skarohlidi pravdu, lidi dneska pisou v javascriptech misto toho, aby umeli "opravdu programovat" instrukci za instrukci. Ale jsem s tim docela spokojeny, protoze diky tomu muzu uzitecne tooly "naprogramovat" i ja, aniz bych tomu zbla rozumnel.
A hardware je smesne levny.
Ale to mi nebrani snit o tom, jak by to asi vypadalo, kdybychom dneska vzali, janevim Windows 11 s jeho zakladnimi aplikacemi, a prepsali ho skutecne efektivne. Obcas se stydim, kdyz pouzivam dvoujadrove ESP32 s 400kB pameti na to, abych nekde meril a odesilal teplotu :-)
31. 5. 2025, 18:23 editováno autorem komentáře
Bojovat proti AI
nemá cenu - mnohem efektivnější by bylo bojovat s AI
. ;-)
(Osobně mi častější CAPTCHA vadí hlavně z toho důvodu, že ji nejsem schopen řešit, respektive moje řešení se zřejmě podobá tomu robotickému natolik, že mne to nepouští dál. Což mne nejvíce štve, když na ni narazím po odkliknutí uloženého odkazu na málo používaný postup, který se mi nechtělo pamatovat.)
Stack Overflow upadali ještě před vydáním první ChatGPT, jazykové modely to jen urychlily. Ukázalo se, že uživatelé preferují okamžitou odpověď na míru od někoho, kdo je neuráží a nezesměšňuje za každou otázku...
Closed. Duplicate of [completely unrelated question from 15 years ago].
Je to o lidech. Zalezi na tomo o jakou technologii se jedna. Nektery komunity na SO jsou primo toxicky, spatnou zkusenost mam treba s Javascript.
Kdyz jste noob, tak vam do 5ti minut daji downvote anebo vam otazku rovnou zavrou.
Na SO ted radi puristi ktery zaviraji vsechno co je proti pravidlum. Proti providlum jsou napr. opinion-based dotazy kdy se nekdo pta na nazor anebo by chtel porovnat dve technologie.
Vyhlaseny na napr. dotaz jake strategie branchingu v git-u se pouzivaji a jake jsou jejich vyhody. Puristu tenhle dotaz neustale zaviraji a brani lidem aby na to odpovidali.
Stack Overflow is full of idiots.
https://www.youtube.com/watch?v=I_ZK0t9-llo
https://www.youtube.com/watch?v=IbDAmvUwo5c
Ale tohle je nepochopení Stack overflow. To nemá být diskuzní fórum nebo poradna pro začínající. Prostě pravidlo je jenom jeden dotaz bez duplikací a tohle je dobré pravidlo. Většina věcí tam totiž už zodpovězena je, takže nejdřív hledat a pak se ptát. Ono taky k čemu by bylo 1000x dotaz na rozdíl mezi == a ===.
Na výběr nebo názory jsou tam jiné site / community.
To pravidlo je dobre, ale v praxi casto nedosazitelne. Zvlast kdyz se sami moderatori ani nesnazi pochopit otazku.
Navic na jednu otazku muze byt i vice odpovedi, protoze spravna odpoved se casem zmeni. Na tohle jsem narazit kdyz jsem se zeptal jak vyresim nejaky problem v posledni verzi Hibernate a byl jsem odkazan na 10+ stary navod.
Nakonec jsem se zeptal Perplexity a dostal jsem shrnuti toho jak se reseni meho problemu vyvijelo v case. Tohle je pripad kdy uz AI uz nahradilo (alespon nektere) lidi. AI chape vztah mezi otazkou a odpovedi lepe nez moderatori na SO.
1) Dobré ráno, je už dávno pozdě, AI společnosti mají samozřejmě uloženou zálohu SO a svoje sítě na tom dávno natrénovaly.
2) SO je známé drzou povýšeností seniorů k juniorům. AI je k nim naopak milá. Představte si, umělá inteligence se chová líp než inteligence skutečná. To sme to dopracovali, co? A bude hůř.
31. 5. 2025, 15:49 editováno autorem komentáře
Taky bych rad prezil "AI". Kdykoliv se s tim bavim, mam pocit, ze mluvim s prechytralym idiotem - nactena kupa encyklopedii, ale rozumu v tom neni za mak. Musim to hodne zpresnovat a vest spravnym smerem, coz je mozne jen pokud alespon ja vim, o cem to pise. Mam pocit, ze se z toho nauci spis ono, nez ja, ale cas usetrit jde.
Horsi asi, kdyz to nekdo bude zkouset obracene, ucit se od AI, aniz by se sam orientoval a rozeznal chyby a lzi ve vracenych vysledcich. Pak se "zpresnovanim" jeho dotazu muze dockat paradniho prusvihu. Boze chran nas od takovych "manazeru".
Zkouseli jste po AI napsat nejtrivialnejsi program v assembleru? Napsat programovou smycku co se opakuje 1000x. Je vam jedno jak bude citac ulozen, jake hodnoty zvoli, zda poroste nebo se bude snizovat. Jedine co chcete aby v prubehu smycky a po smycce zustaly registry a zasobnik stejny. Zasobnik mu povolite pouzivat behem inicializace a v prubehu testovani smycky kdyz si ho uklidi a nechate mu tam nejake misto.
Na Z80...
a pak jen sledujte tu hruzu co z nej leze...
i kdyz se ho budete snazit opravovat a ruzne napovidat tak v urcitem okamziku se zacykli a bude ruzne generovat chyby. Budete muset prejit na metodu ze ma cislovat radky a odkazovat se na ty konkretni radky a on stejne bude selhavat.
Kdyz misto AI tohle zkusite zadat zacatecnikovi tak u neho mate sanci ze to nakonec pochopi i kdyz bude mnohem pomalejsi v nekterych oblastech. Jako zjistit si kolik bajtu ma ktera instrukce a kolik taktu. To AI dokaze dolnit mrknutim oka. Ale nedokaze te znalosti vubec vyuzit.
AI tohle nezvlada jak ma malo naucenych dat. Nema odkud krast. Nepouzitelny.
To je stejné jako s automatizací. Nahrazen byl člověk obsluhující výtah. Všude jinde šlo "jen" o usnadnění práce tak, že stejný počet lidí udělal více práce nebo pro stejně práce stačí menší počet lidí. AI nemá nahradit v IT "pořádné" programátory, ale juniory/absolventy, outsourcing do Indie a technickou podporu na Filipínách. Prostě těch dolních 50 %.
Brácha třeba má zkušenost s outsourcingem do Indie (úkol trval týden - udělá zadání, pošle výsledek, zbytek dne "má hotovo") a Chat-GPT (úkol trval den - odpověď v sekundách, cykl upřesňování a oprav byl na úrovni práce s tím Indem, ale nečekalo do dalšího dne). Chat-GPT stal koruny, Ind o několik řádů víc.
PS: I ten assembler mu fungoval, dokud se vešel do počtu tokenů (od toho místa v kódu je to už jen halucinace). Dnes už umí Chat-GPT až milion.
2. 6. 2025, 16:56 editováno autorem komentáře
Me zadani:
Napis me programovou smycku opakujici se 1000x na procesoru Z80. Ale tak ze pred smyckou, ve smycce a za smyckou nemenis zasobnik, ani zadne registry krome AF registru, ten muzes pouzivat libovolne. Dale zasobnik ukazuje na misto kde ma par bajtu k dispozici. Takze ho lze pouzit behem inicializace smycky a na konci smyccky, kde provadis vyhodnoceni zda pokracovat nebo ne.
Jeho prvni reseni/iterace, kde vynechavam spamujici kecy okolo:
; Předpoklad: SP ukazuje na místo, kde jsou alespoň 2 bajty volné
; a lze je bezpečně použít.
; Zachováme všechny registry kromě AF.
; Inicializace čítače (1000 do zásobníku)
LD A, 232 ; 1000 = 0x03E8, LSB
PUSH AF ; uložíme LSB na stack
LD A, 3 ; MSB
PUSH AF ; uložíme MSB na stack
.loop:
; --- Tělo smyčky začíná zde ---
; V těle můžeš používat jen registr AF
; -------------------------------
; ... (tvoje smyčka) ...
; --- Tělo smyčky končí zde ---
; Zde snížíme čítač na zásobníku (čti 16bitové číslo, dekrementuj, zapiš zpět)
; Načíst LSB a MSB z vrcholu stacku
POP AF ; AF = MSB:LSB low byte
LD A, A ; LSB je v A
LD B, A ; Uložíme si LSB do B
POP AF ; A = MSB
LD C, A ; MSB do C
; LSB = B, MSB = C
; 16bit: (C << 8) | B
LD A, B
DEC A
LD B, A
; otestuj borrow
CP 0xFF ; byl původně 0, tedy borrow?
JR NZ, .no_borrow
DEC C
.no_borrow:
; Zapiš zpět na zásobník (nejprve MSB)
LD A, C
PUSH AF ; MSB
LD A, B
PUSH AF ; LSB
; Ověř, zda jsme dosáhli nuly
LD A, B
OR C ; pokud obě nuly => konec
JR NZ, .loop
; --- Konec smyčky ---
1) nedodrzel zadani a v tele smycky ma posunuty zasobnik, protoze si tam uklada 2 hodnoty. V komentari pise neco o 2 bajtech i kdyz tam ma 4.
2) nesmyslne slozity kod
LD A, B DEC A LD B, A ; otestuj borrow CP 0xFF ; byl původně 0, tedy borrow? JR NZ, .no_borrow
lze nahradit
DEC B LD A, B INC A JR NZ, .no_borrow
Ale hlavne nehleda snadna reseni ktera mu Z80 sam nabizi. Proc testovat -1, misto rovnou nuly? Nebo druhe snadne reseni je predel 0x80. Proc rovnou nenapsat neco jako
DEC C
JR NZ, .no_borrow
DEC B
.no_borrow
...
JR NZ, .loop
3) Neuklidil si po sobe ten zasobnik.
4) Pouzil BC registry tak ze je zmenil.
5) Prohazuje si na zasobniku MSB a LSB a nevi o tom. Nebo ma aspon bordel v komentarich co je co. Pri prvni iteraci urcite se chova k MSB, ktery ma v B jako by to byl LSB.
6) Do kodu pridava zbytecnosti, protoze nektere veci podle me nemohl najit snad ani na netu pri uceni jako tohle:
LD A, A ; LSB je v A
Protoze tohle by nenapsal ani zacatecnik. Tohle by dokazal vyprodukovat jen prekladac.
;----------------------------------------------------------
; Smyčka proběhne přesně 1000× (0x03E8).
; • SP zůstává beze změny.
; • Žádný registr kromě AF se nikdy nemodifikuje.
; • Do A můžete vkládat vlastní práci uvnitř LOOP_BODY.
;----------------------------------------------------------
org 0x0000 ; libovolný začátek programu
;--------------------------
; Paměť pro čítač
;--------------------------
COUNTER_LO: db 0 ; nízký bajt
COUNTER_HI: db 0 ; vysoký bajt
;--------------------------
; Inicializace čítače na 1000 (0x03E8)
;--------------------------
ld a,0xE8 ; low byte = 232
ld (COUNTER_LO),a
ld a,0x03 ; high byte = 3
ld (COUNTER_HI),a
;--------------------------
; Hlavní smyčka
;--------------------------
LOOP_START:
; --- VLASTNÍ KÓD SMYČKY -------------------------------
LOOP_BODY:
nop ; sem vložte svou práci
; ------------------------------------------------------
;--- Dekrementace 16-bitového čítače -------------------
ld a,(COUNTER_LO) ; A = low
sub 1 ; A = low-1, nastaví Carry pokud podteklo
ld (COUNTER_LO),a
ld a,(COUNTER_HI) ; A = high
sbc a,0 ; high = high-Carry
ld (COUNTER_HI),a
;-------------------------------------------------------
;--- Test, zda čítač dosáhl nuly -----------------------
or a ; high == 0 ? (NZ pokud ≠0)
jp nz,LOOP_START ; pokud high ≠ 0 pokračuj
ld a,(COUNTER_LO) ; high je 0, zkontroluj low
or a ; low == 0 ?
jp nz,LOOP_START ; pokud low ≠ 0 pokračuj
;-------------------------------------------------------
;--------------------------
; Smyčka skončila – čítač = 0
;--------------------------
; další kód programu…
jp $ ; nekonečno, jen pro příklad