Eric Lengyel dobrovolně uvolnil jako volné dílo svůj patentovaný algoritmus Slug. Algoritmus vykresluje text a vektorovou grafiku na GPU přímo z dat Bézierových křivek, aniž by využíval texturové mapy obsahující jakékoli předem vypočítané nebo uložené obrázky a počítá přesné pokrytí pro ostré a škálovatelné zobrazení písma, referenční ukázka implementace v HLSL shaderech je na GitHubu. Slug je volným dílem od 17. března letošního
… více »Sashiko (GitHub) je open source automatizovaný systém pro revizi kódu linuxového jádra. Monitoruje veřejné mailing listy a hodnotí navrhované změny pomocí umělé inteligence. Výpočetní zdroje a LLM tokeny poskytuje Google.
Cambalache, tj. RAD (rapid application development) nástroj pro GTK 4 a GTK 3, dospěl po pěti letech vývoje do verze 1.0. Instalovat jej lze i z Flathubu.
KiCad (Wikipedie), sada svobodných softwarových nástrojů pro počítačový návrh elektronických zařízení (EDA), byl vydán v nové major verzi 10.0.0 (𝕏). Přehled novinek v příspěvku na blogu.
Letošní Turingovou cenu (2025 ACM A.M. Turing Award, Nobelova cena informatiky) získali Charles H. Bennett a Gilles Brassard za základní přínosy do oboru kvantové informatiky, které převrátily pojetí bezpečné neprolomitelné komunikace a výpočetní techniky. Jejich protokol BB84 z roku 1984 umožnil fyzikálně zaručený bezpečný přenos šifrovacích klíčů, zatímco jejich práce o kvantové teleportaci položila teoretické základy pro budoucí kvantový internet. Jejich práce spojila fyziku s informatikou a ovlivnila celou generaci vědců.
Firefox 149 dostupný od 24. března přinese bezplatnou vestavěnou VPN s 50 GB přenesených dat měsíčně (s CZ a SK se zatím nepočítá) a zobrazení dvou webových stránek vedle sebe v jednom panelu (split view). Firefox Labs 149 umožní přidat poznámky k panelům (tab notes, videoukázka).
Byla vydána nová stabilní verze 7.9 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 146. Přehled novinek i s náhledy v příspěvku na blogu.
Dle plánu byla vydána Opera GX pro Linux. Ke stažení je .deb i .rpm. V plánu je flatpak. Opera GX je webový prohlížeč zaměřený na hráče počítačových her.
GNUnet (Wikipedie) byl vydán v nové major verzi 0.27.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.
Byly publikovány informace (technické detaily) o bezpečnostním problému Snapu. Jedná se o CVE-2026-3888. Neprivilegovaný lokální uživatel může s využitím snap-confine a systemd-tmpfiles získat práva roota.
Tahle myšlenka samozřejmě nikoho programovat nenaučíNejsem si jistý, jestli reagujeme na stejnou myšlenku. Napadají mě dvě možnosti: 1) Výborný programátor se obejde bez intelektu, stačí, když dodržuje pořádek. S takovou myšlenkou nemůžu souhlasit, pokud slovem programátor myslíš stejnou profesi (případně koníček) jako já (tzn ne toho, kdo napíše pár řádků html, pár řádků php a nějaký ten SQL select). 2) Výborný programátor by měl umět vyjadřovat věci jednoduše a konzistentně. S tím naopak souhlasím velmi. Jsou to dvě důležité vlastnosti v jakémkoli oboru, kde lidé na něčem spolupracují. Bohužel text citátu spíš vypadá jako ta první varianta.
Takhle jsem ho pochopil jáMožná je citát právě ukázkou neschopnosti vyjádřit se jasně a srozumitelně, takže je v důsledku svou vlastní kritikou (nebo je jen vytržený z kontextu).
1) Výborný programátor se obejde bez intelektu, stačí, když dodržuje pořádek.Přesněji řečeno je to tak, že záleží víc na tom druhém než na tom prvním. Můžete být dobrý/průměrný/slabý programátor s dobrými návyky, ale jak je nemáte tak jste k ničemu.
tzn ne toho, kdo napíše pár řádků html, pár řádků php a nějaký ten SQL selectNa tomhle naopak záleží ze všeho nejmíň.
…jak to neni jednoduche, bude to asi blbe.Přesně. Dřív jsem míval dojem, že je třeba příslušná část kódu opravdu těžká, že to jednodušej udělat nepůjde. Kdykoliv si dneska uvědomím, že se s něčím hodně peru, začnu přemýšlet, jestli nedělám nějakou kravinu. Většinou jo :)
)
"never touch a running system"Zrovna tenhle je dost na hovno.
to je taka vseobecna pravda.Souhlasím, jsou to takové blábolivé popisy obecně známých pravd. Někteří lidé si v tom dost libují, a když není co říct, tak do diskuze prostě plácnou "KISS", "DRY" apod. Zvláštní je, že to dělají především - avšak v žádném případně ne výhradně - uživatelé nejmenované distribuce, která je dnes podobnou hračkou, jakou bylo onehdá Gentoo.
a když není co říct, tak do diskuze prostě plácnou "KISS", "DRY" apod.Nejvtipnější je, když to někdo plácne na stránky svého „projektu“ hned vedle zkratek MVC a AJAX
KISS DRY AJAX je pekné kombo 
jednoduchost a konvenceNa to pozor. Když se přežene konvence, jednoduchost se ztratí. Mé současné peklo na projektu…
Když se přežene konvenceJe pak taky otázkou, zda je daná konvence dobrá nebo špatná...

treba to rychlo nakodit a pod.Tohle moc nechápu – konvence by přece měla být něco přirozeného, člověk tak píše ze zvyku, nemusí na to nijak zvlášť myslet – tudíž ho to ani nemůže zdržovat. Problém může být leda v tom, že každý můžeme mít ty zvyky jiné – to je potom na vzájemné dohodě.
Problém může být leda v tom, že každý můžeme mít ty zvyky jiné – to je potom na vzájemné dohodě.no niekto ma take navyky, ze na formatovanie uplne dlabe
Odhliadnuc od toho, je treba sa samozrejme zosuladit. Castokrat sa stava, ze typek fixuje bug, opravi nejaku sekciu v kode, ale absolutne sa vybodne na formatovanie, konvencie pomenovania premennych, procedur a pod., ktore v danom kode su. No a takymto stylom sa za pol roka spolocne developeri dopracuju k tak sprasenemu kodu, ktory nikto nedokaze efektivne citat (co je inak problem aj viacerych open-source projektov).
Opakom toho je, keď pošleš funkčný patch na dôležitý bug, ale pol roka ťa drbú len kvôli štýlu a k skutočnému obsahu sa nikto nevyjadrí. To človeka fakt poteší
Ale inak uznávam, že z dlhodobého hľadiska máš pravdu.
Prečo by sa to nemalo dať čítať? Len preto, že to má trochu iný štýl, než je konvencia daného projektu? Fakt úžasné...
Mno, skôr mi ide o to, že občas sa na bugzillách človek stretne až s fanatickými zástancami konvencií, ktorí uprednostňujú formu pred obsahom a trpia tým všetci, lebo treba čakať na dôležité patche. Na druhej strane, z hľadiska dlhodobého sa asi vyplatí počkať.
Problém může být leda v tom, že každý můžeme mít ty zvyky jiné – to je potom na vzájemné dohodě.Jo, je důležitější mít jednu strukturu v celém projektu, než systém každej pes jiná ves. Co se týče prostého formátování textu, dnešní nástroje umí na jeden příkaz přeformátovat všechny soubory za několik málo sekund takže není problém takovou konvenci kdykoliv změnit nebo přeformátovat cizí kus kódu (klidně i po praseti). Horší to je bohužel s konvencema ohledně jmen, struktury a obecně stylu psaní. Tam někdy pomáhá code review, někdy motivace a někdy je to boj s větrnými mlýny.
pretoze napr. nestihaju, treba to rychlo nakoditTo je zmáčknutí jedné klávesové zkratky v IDE tak zdržuje?
Skús
:set mouse=a
Druhá možnosť je nabindovať si na nejakú klávesu príkaz
:set invnumber
(Při editaci to nevadí, ale pozor na dlouhé ladicí výpisy.)
Gvim sa v tomto ohľade ale chová úplne rovnako ako vim. V defaultnom nastavení kopíruje aj čísla riadkov.
IDE nebo lepší editory mají funkci „zpět“, takže pokud zmáčkneš např. Ctrl+Alt+F a zjistíš, že se ti kód rozhodil, tak zmáčkneš Ctrl+Z a opravíš chyby. V IDE na to ale většinou nedojde, protože to ti chyby kontroluje průběžně a podtrhává.
Hlavně jde ale o to, že konvence formátování kódu by měla být relativně jednoduchá sada pravidel (když je jsou konvence příliš komplikované, tak si je lidi stejně nepamatují a kašlou na ně). A tahle jednoduchá pravidla není problém zautomatizovat a nechat tuhle práci dělat robota-program – jednak to šetří drahý čas programátorů a jednak je zarušeno, že všichni budou formátovat stejně (což se hodí i při práci s verzovacím systémem – pak tě nerozptylují změny formátování a řešíš jen podstatné změny v kódu).
IDE nebo lepší editory mají funkci „zpět“, takže pokud zmáčkneš např. Ctrl+Alt+F a zjistíš, že se ti kód rozhodil, tak zmáčkneš Ctrl+Z a opravíš chybyv editore, co som pouzival CTRL+Z nepomohlo, nepametal si tolko krokov dozadu
Inak, ked sa da tak IDE samozrejme pouzivam, zvyraznovanie syntaxe a pod. je dobra vec len nie vzdy mas moznost pouzivat svoje IDE, na ktore si zvyknuty. U nas na projekte sa castokrat stava, ze opravujes (debugujes) veci priamo niekde na (production, disaster) unix servri, kde nemas moznost si nainstalovat, pouzivat vlastne IDE (okrem vi-cka tam nic lepsie neni); inak ja pisem kod hned formatovany (sam by som sa v tom nevyznal, keby som pisal ako prasa) a nepotrebujem este klikat na button, ktory mi to dodatocne kod sformatuje
a jednak je zarušeno, že všichni budou formátovat stejnětak takyto idealny stav IMHO nikdy nenastane; to by si musel vsetkym developerom, ktori su kdekade po svete a ktorych poznas iba po maily nanutit pouzivat rovnake IDE, co je IMHO nemozne a aj tak by sa nato vela ludi vysralo
tak takyto idealny stav IMHO nikdy nenastane; to by si musel vsetkym developerom, ktori su kdekade po svete a ktorych poznas iba po maily nanutit pouzivat rovnake IDE, co je IMHO nemozne a aj tak by sa nato vela ludi vysraloStačí pro daný projekt nadefinovat konvence formátování. Pokud nejsou nějaké šílené, každý vývojář si to může nastavit ve svém formátovači (případně rovnou můžete vystavit konfigurace pro nejčastěji používané formátovače).![]()
a nepoužívá cizí knihovny, protože to všechno přece zvládne sám daleko lépeTak tady bych byl opatrný. Používání cizích knihoven spolu nese learning curve. A to nejen na úrovni API, ale hlavně na úrovni vnitřní implementace. Není nic lepšího, než se v testech dostat do křížku se side-effectem nějaké knihovny. Jako příklad za vše můžu uvést třeba Apachí Commons Configuration. Nese si s sebou tisíce dalších knihoven a chyb. A přitom člověk zpravidla potřebuje jen nasypat nějaký properties do HashMapy. Pardón, ale připadá mi jedna třída mnohem jednodušší na správu, než tuny balastu, nad kterými nemám kontrolu. Hoši támhle v Anglii takhle vyměnili under-layering knihovny v našem produktu. Vedlo to k tomu, že současné implementace u zákazníků se musí kompletně předesignovat. Jen proto, že někdo udělal kompilát 3rd-party knihoven a teď zamíchal polívčičku. Celý tohleto code reusability je velice ošemetná záležitost a na prvním místě bych to rozhodně nevypichoval. Zvlášť co se open source týče.
Nie pre vsetky jazyky su take idealne IDE ako pre Javu ci C#Nástroje lint, indent a ctags (pro C) tu byly ještě dávno před tím, než Java a C# vznikly.
Kde kdo nepoužívá automatické formátování kódu,Tak minimálně takovýten klasický smartindent je v podstatě nutnost.
nepoužívá IDETo je každého věc.
nepřekládá se zapnutými varováními kompilátoru, nepoužívá automatické testyO tom by se už dalo bavit.
nepoužívá cizí knihovny, protože to všechno přece zvládne sám daleko lépe.Případ od případu.
s codesweepermi nemam dobre skusenosti a nepouzivam ichTo nevadí, ono stačí když to použije příjemce Vašeho zdrojáku.
jednu dobu jsem dělal s lidmi, kteří měli konvenci psát názvy tabulek/objektů VELKÝMI písmeny (asi proto, že to byly důležité tabulky a závisel na nich celý náš byznys), jenže SQL klíčová slova psali taky „konvenčně“ velkými písmeny. To je pak trochu devalvace – držím se proto velkých klíčových slov a malých identifikátorů, pak je SQL přehledné i bez obarvení syntaxe + to chce hezky odsadit (aspoň ty delší dotazy).
Tiskni
Sdílej: