Peter Steinberger, autor open source AI asistenta OpenClaw, nastupuje do OpenAI. OpenClaw bude převeden pod nadaci a zůstane otevřený a nezávislý.
Společnost Backblaze zveřejnila statistiky spolehlivosti pevných disků používaných ve svých datových centrech za rok 2025. Ke konci roku 2025 vlastnila 349 462 pevných disků. Průměrná AFR (Annualized Failure Rate), tj. pravděpodobnost, že disk během roku selže, byla 1,36 %. V roce 2024 to bylo 1,57 %. V roce 2023 to bylo 1,70 %. V roce 2022 to bylo 1,37 %.
Nástroj sql-tap je proxy mezi aplikací a databází, které zachytává všechny SQL dotazy a zobrazuje je v terminálovém rozhraní. Zde lze téměř v reálném čase zkoumat dotazy, sledovat transakce a spouštět SQL příkaz EXPLAIN. Podporované databázové systémy jsou pouze PostgreSQL a MySQL. Zdrojový kód je dostupný na GitHubu, pod licencí MIT.
Byla vydána nová verze 9.2 textového editoru Vim (Vi IMproved). Přináší vylepšené doplňování, podporu schránky ve Waylandu, podporu XDG Base Directory (konfigurace v $HOME/.config/vim), vylepšené Vim9 skriptování nebo lepší zvýrazňování změn. Vim zůstává charityware. Nadále vybízí k podpoře dětí v Ugandě. Z důvodu úmrtí autora Vimu Brama Moolenaara a ukončení činnosti jím založené charitativní organizace ICCF Holland projekt Vim navázal spolupráci s charitativní organizaci Kuwasha.
Byl představen editor MonoSketch, webová aplikace pro tvorbu diagramů, technických nákresů, flowchartů a různých dalších vizualizací, to vše jenom z ASCII znaků. Všechny operace běží pouze v prohlížeči uživatele a neprobíhá tedy žádné nahrávání dat na server. Zdrojový kód aplikace (drtivá většina Kotlin, žádné C#) je dostupný na GitHubu pod licencí Apache 2.0.
Byla vydána nová verze 3.7.0 multiplatformního svobodného frameworku pro zpracování obrazu G'MIC (GREYC's Magic for Image Computing, Wikipedie). Přehled novinek i s náhledy nových filtrů na PIXLS.US.
Všem na AbcLinuxu vše nejlepší k Valentýnu aneb Dni lásky ke svobodnému softwaru (I love Free Software Day, Mastodon, 𝕏).
Eric Migicovsky představil Pebble Emulator, tj. emulátor hodinek Pebble (PebbleOS) běžící ve webovém prohlížeči. Za 6 hodin jej napsal Claude Code. Zdrojové kódy jsou k dispozici na GitHubu.
Byla vydána nová verze 3.41 frameworku Flutter (Wikipedie) pro vývoj mobilních, webových i desktopových aplikací a nová verze 3.11 souvisejícího programovacího jazyka Dart (Wikipedie).
Rusko zcela zablokovalo komunikační platformu WhatsApp, řekl včera mluvčí Kremlu Dmitrij Peskov. Aplikace, jejímž vlastníkem je americká společnost Meta Platforms a která má v Rusku na 100 milionů uživatelů, podle Peskova nedodržovala ruské zákony. Mluvčí zároveň lidem v Rusku doporučil, aby začali používat domácí aplikaci MAX. Kritici tvrdí, že tato aplikace ruské vládě umožňuje lidi sledovat, což úřady popírají.
Minule jsem lehce nastínil, co je to Root a na jednoduchém příkladě ukázal jednu z mnoha věcí, ke kterým by se dal použít. Jak bylo řečeno, Root slouží k analýze dat. Obvykle ale chceme analyzovat i něco jiného než náhodná čísla vygenerovaná v Rootu. Dnes se tedy pokusím popsat, jakými způsoby lze data do Rootu načítat a ukládat.
Jelikož Root je framework v C++, lze pochopitelně k vstupům i výstupům použít standatní prostředky C++. V Rootu samotném jsou pak např. implementovány třídy pro usnadnění manipulace s daty v XML (a to jak SAX tak DOM parser), tak pro komunikaci se SQL serverem. Toto velmi usnadní práci zvláště když chceme uložit nějaký celý rootovský objekt, např. uložení plátna c1 do databáze lze jednoduše provést takto:
gBenchmark->Start("writeSQL");
c1->Write("Canvas");
Tento a další příklady lze najít v $ROOTSYS/tutorials/sql (resp. tutorilas/xml). Když už jsem zde dal za příklad ukládání plátna, ještě zmíním, že objekty jako plátno jdou velmi snadno (c1->Print("graf.eps")) ukládat do formátů ps, esp, jpg a mnoha dalších. Formát se se volí automaticky podle koncovky souboru (v našem případě grafy.esp tedy eps formát).
Pokud explicitně nezvolíme způsob uložení objektu (např. do databáze) a zavoláme na objektu (těmito objekty jsou v Rootu nejčastěji rootvské stromy - TTree) metodu Write() (musíme mít ale otevřeny nějaký rootovský soubor TFile), objekt se zapíše ve vlastním formátu Rootu (no, lépe řečeno, jedná se o serializaci objektů
. Jak se píše v Root user's guide, rootovský soubor je jako UNIXový adresář, může obsahovat adresáře a objekty v neomezeném množství úrovní. Obsah takovéhoto souboru pak můžeme zobrazit a procházet např. pomocí TBrowser (v příkazové řádce Rootu napíšeme new TBrowser() a spustí se, jak již název napovídá, grafický browser, kterým můžeme procházet obsah souboru nebo otvírat další soubory). Pokud chceme načíst nějaký objekt v programu, patrně nejsnadněji toho dosáhneme zavoláním metody Get("object_key") na objektu typu TFile (myTFile->Get(object_key)), kde klíč objektu obvykle zadáváme při jeho vytvoření (typicky první parametr konstruktoru) nebo při ukládání objektu(object->Write("new_key")). Seznam všech klíčů objektů uložených v souboru získáme pomocí myTFile->GetListOfKeys(). Výpis adresářů v souboru zas pomocí myTFile->ls() a do adresáře se přesuneme pomocí myTFile->cd().
Jak již bylo řečeno, ukládání probíhá serializací objektů. O to se starají streamry. O streamrech a podrobnostech ukládání objektů se můžete dočíst v manuálu. Další zajímavou funkcí IO systém Rootu je možnost vzdáleného přístupu k rootovským souborům. Soubor, který chceme ukládat přes síť, musí být typu TNetFile. Chová se stejně jako TFile (také je to jeho potomek), akorát místo na disk přesměruje výstup na demona rootd (který pochopitelně musí běžet
. Jména souborů jsou jako URL adresy s protokolem root (např. root://cosi.kdesi.cz/root/test.root). Podrobnosti (a jak rozběhnout demona) opět viz manuál. Soubory lze zpřístupnit i přes web sever. Soubor pak musí být typu TWebFile a z Root pak k němu přistoupit přes protokol HTTP:
TWebFile webFile("http://cosi.kdesi.cz/rootFile.root");
webFile.ls()
Tiskni
Sdílej: