Společnost Meta (Facebook) předává React, React Native a související projekty jako JSX nadaci React Foundation patřící pod Linux Foundation. Zakládajícími členy React Foundation jsou Amazon, Callstack, Expo, Huawei, Meta, Microsoft, Software Mansion a Vercel.
Samsung na akci Galaxy Unpacked February 2026 (YouTube) představil své nové telefony Galaxy S26, S26+ a S26 Ultra a sluchátka Galaxy Buds4 a Buds4 Pro. Telefon Galaxy S26 Ultra má nový typ displeje (Privacy Display) chránící obsah na obrazovce před zvědavými pohledy (YouTube).
Byla vydána grafická knihovna Mesa 26.0.1 s podporou API OpenGL 4.6 a Vulkan 1.4. Je to první stabilní verze po 26.0.0, kde se novinky týkají mj. výkonu ray tracingu na GPU AMD a HoneyKrisp, implementace API Vulkan pro macOS.
Byla vydána nová verze 4.6 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Využíván je Free Pascal Compiler (FPC) 3.2.2.
Byla vydána nová verze 3.23.0 FreeRDP, tj. svobodné implementace protokolu RDP (Remote Desktop Protocol). Opravuje 11 bezpečnostních chyb.
Španělský softwarový inženýr oznámil, že se mu podařilo na dálku ovládat sedm tisíc robotických vysavačů po celém světě. Upozornil tak na slabé kybernetické zabezpečení těchto technologií a jejich možné a snadné zneužití. Nesnažil se hacknout všechny robotické vysavače po světě, ale pouze propojil svůj nový DJI Romo vysavač se zařízením Playstation. Aplikace podle něj ihned začala komunikovat se všemi sedmi tisíci spotřebiči a on je
… více »Momo je fenka cavapoo, která svými náhodnými stisky kláves bezdrátové klávesnice vytváří jednoduché počítačové hry. Technicky to funguje tak, že Raspberry Pi s připojenou bluetooth klávesnicí posílá text do Claude Code, který pak v Godotu píše hry a sám je i testuje pomocí screenshotů a jednoduchých simulovaných vstupů. Za stisky kláves je Momo automaticky odměňována pamlsky. Klíčový je pro projekt prompt, který instruuje AI, aby i
… více »GNU awk (gawk), implementace specializovaného programovacího jazyka pro zpracování textu, byl vydán ve verzi 5.4.0. Jedná se o větší vydání po více než dvou letech. Mezi četnými změnami figuruje např. MinRX nově jako výchozí implementace pro regulární výrazy.
Internetový prohlížeč Ladybird ohlásil tranzici z programovacího jazyka C++ do Rustu. Přechod bude probíhat postupně a nové komponenty budou dočasně koexistovat se stávajícím C++ kódem. Pro urychlení práce bude použita umělá inteligence, při portování první komponenty prohlížeče, JavaScriptového enginu LibJS, bylo během dvou týdnů pomocí nástrojů Claude Code a Codex vygenerováno kolem 25 000 řádků kódu. Nejedná se o čistě autonomní vývoj pomocí agentů.
Byl vydán Mozilla Firefox 148.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Nově lze snadno povolit nebo zakázat jednotlivé AI funkce. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 148 bude brzy k dispozici také na Flathubu a Snapcraftu.
Současné firmy, stejně tak jako ty dřívější, dokáží generovat velké objemy dat o svých aktivitách a více či méně je podrobují zkoumání. To vše proto, aby zachytily trendy nebo hrozby v tržních segmentech jejich zájmu. Co se však mění, je způsob, jakým chtějí svá data zkoumat. Stále více je zájem zaměřen na porovnání stavů v určitých okamžicích jejich historie, přičemž starší data jsou typicky zajímavá v delších intervalech, řádu měsíců, nová data jsou zajímavá v intervalech dnů.
ROLAP team společnosti GoodData proto začal hledat v současných datově orientovaných enginech způsob, jak uchovávat historická data a současně umožnit nahlížet na jejich stav v libovolném historickém okamžiku s ohledem na možnost tyto okamžiky porovnávat. Ačkoli se od začátku jevil ověřený přístup implementace pomalu se měnících dimenzí v konvenční relační databázi jako optimální, ukázalo se, že akceptovatelný výkon takovéhoto řešení je spojen s neakceptovatelnými náklady. Když bylo zřejmé, že žádná dostupná technologie nesplňuje požadavky v masovém měřítku, zaměřil se ROLAP team na hledání vlastního řešení.
Zákaznická data často představují tzv. "snapshot", tedy otisk stavu uživatelem sledovaných aktivit k určitému času. Jednotlivé snapshoty jsou svázané unikátní entitou, jež je platná přes vybrané snapshoty. Zákazník pak typicky potřebuje znát stav svého systému v určitém okamžiku, který porovnává s jiným. Zatímco data starší více než rok nejčastěji porovnává v kvartálním intervalu, data starší tří měsíců pak v měsíčním intervalu a data do tří měsíců po týdnech.
Velmi často poslední (neúplný) týden chce zákazník vidět po dnech. Použití konvenčního databázového serveru vede na tvorbu ohromného množství záznamů na úrovni jednotlivých dnů, které jsou často identické v po sobě následujících snapshotech. Namísto toho zaznamenání pouhých změn mezi jednotlivými snapshoty představuje malé množství dat. Z pohledu dat je vlastně zapotřebí jen přehrávat změny tak, jak se staly v čase, a v patřičný okamžik uživatelům data poskytnout. Tato jednoduchá věta pak popisuje myšlenku na jejímž konci je datové úložiště známé v GoodData jako EventStore.
Vše co se děje uvnitř EventStore se zcela vymyká klasickému světu SQL. Data na vstupu do EventStoru jsou rozbita na sloupce, ze sloupců jsou vybrány změněné hodnoty entity a jen ty jsou uložené společně s okamžikem jejich platnosti. Přečtení dat pak připomíná přehrávač, který do výstupní matice dat zapisuje změny. Na konci čtení je kompletní matice s hodnotami platnými v rozhodném časovém okamžiku. Přehrávač přitom na začátku přehrává rychle po kvartálech, na konci pomalu po dnech.
Zatímco princip NoSQL úložiště byl dostatečně zřejmý, programovací jazyk nikoliv. Implementace, ve které by toto unikátní řešení mohlo fungovat, potřebovalo neméně unikátní jazyk. Perl se v tomto ohledu ukázal jako velice mocný programovací jazyk. Zejména jeho práce s asociativními poli (hashes) zcela přesně vyhovovala potřebám úložiště. Identifikace změn v nově nahrávaných datech, stejně tak přehrávání změn a získávání požadovaných snapshotů, jsou v Perlu neuvěřitelně přímočaré.
Použití uzávěrů (closures) vede k rychlému a přitom stále dostatečně čitelnému kódu. Pro každou transformaci či agregaci dat, zadanou strukturovaným předpisem AST (Abstract syntax tree), je za běhu vygenerován kód, který “eval” zkompiluje do anonymní funkce (zde do “closure”). Přímo za běhu tak využíváme interpret jazyka Perl pro kompilaci dynamicky sestaveného kódu. S podobným řešením se ve statických jazycích potkáte jen výjimečně. Perl také umožnil velice efektivně implementovat podporu pro generování historických relací. Nyní je možné výstup EventStoru nahrát přímo do klasické relační databáze, včetně pomalu se měnících dimenzí a v ní provádět klasickou ROLAP analýzu.
Úspěch celého řešení byl završen nasazením EventStoru v cloudovém prostředí Amazonu. Bylo tak dotaženo k dokonalosti webové řešení pro analýzu dat, od sběru, přes uchování, přepočítání až po vizualizaci. “Webovost” řešení je umocněna skutečností, že většina dat od zákazníků pochází z jejich webových systémů. Dá se říci, že data jsou na webu uložena a zákazníci si je nakonec přes web i zobrazí a analyzují. Co dodat závěrem? Snad jen, že ROLAP team GoodData stále hledá inovátory, kteří se nebojí opustit klasická řešení.
Jiří Schmid pracuje v oblasti BI od roku 2003, postupně prošel pozicemi od analytika a implementátora BI projektů až k vývoji klíčových komponent BI software GoodData, kde v současnosti pracuje jako vedoucí ROLAP teamu.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
S podobným řešením se ve statických jazycích potkáte jen výjimečně.Pokud tomu dobře rozumím, tak tohle by neměl být problém v jazycích, jenž podporují tzv. quotations (například C#, F#, OCaml nebo Haskell)?
Navic jsem 100% presvedcen, ze vetsina lidi (vcetne mne) nepochopila zcela o co jde.Není to tak složité. ROLAP (kde R znamená Relational) tým GoodData seznal, že relační databáze se na spoustu věcí nehodí, a tak vymyslel MOLAP (kde M znamená Multidimensional). A protože dneska je v módě všechno, co není SQL, označit za NoSQL, i když je to třeba postaveno nad SQL, tak tomu taky řekli NoSQL.
. Možná jsme to chytli od nich.
EventStore je vpodstatě součastí ETL procesu a některá data předpočítává. Za EvenStorem je klasická data warehouse databáze pro ROLAP. Většina zákazníků EventStore nepoužívá a nepotřebuje. Ti ostatní nám zaplatili vývoj tohoto řešení.
To, že eval a uzávěry v Perlu jsou normální i v jiných dynamických jazycích je jasné.
Perl je dost rozumný, ostatně jako Ruby a Python. Asi by se to zvrhnlo na flamewar, tak jen připojím link na snad ještě stále aktuální seznam odkazů Perl mýty.
I já jse kdysi dělal koniny a dneska také.
Prostě mne to ne že naštvalo, ale rozveselilo
Omlouvám se, jestli jsem to přehnal.
I autorovi a nakonec všem vám.
Díky.