Linus Torvalds vydal jádro Linux 6.19. Podrobný výčet změn je ke zhlédnutí na stránce Kernel Newbies, stručné výběry v LWN (část první, druhá).
Do prodeje jde tichá bezdrátová herní myš Logitech PRO X2 SUPERSTRIKE s analogovými spínači s haptickou odezvou (HITS, Haptic Inductive Trigger System). Cena je 4 459 Kč.
Microsoft na GitHubu zveřejnil zdrojový kód projektu LiteBox, jedná se o 'knihovní operační systém' (library OS) zaměřený na bezpečnost, využívající systémovou architekturu LVBS k ochraně jádra před útoky z uživatelského prostoru. LiteBox je napsán v Rustu a uvolněný pod licencí MIT. Projekt je teprve v rané fázi vývoje.
BreezyBox je open-source shell a virtuální terminál pro populární jednočip ESP32. Nabízí základní unixové příkazy, sledování aktuálního pracovního adresáře (CWD), jednoduchý instalátor a spouštěč aplikací v podobě ELF binárních souborů, zabudovaný HTTP server nebo třeba ovládání WiFi - ukázka použití coby 'malého osobního počítače'. Ačkoliv je BreezyBox inspirovaný BusyBoxem, oproti němu má tento projekt několik externích závislostí, zejména na ESP-IDF SDK. BreezyBox je dostupný pod licencí MIT.
Byl představen cross-assembler xa.sh, napsaný čistě v Bourne shell skriptu. Tento nástroj umožňuje zpracovávat assemblerový kód pro Intel 8080, přičemž je možné snadno přidat podporu i pro další architektury, například 6502 a 6809. Skript využívá pouze různé běžné unixové příkazy jako jsou awk, sed nebo printf. Skript si lze stáhnout z GitHubového repozitáře projektu.
Byla představena nová verze modelu Claude Opus 4.6 od společnosti Anthropic. Jako demonstraci možností Anthropic využil 16 agentů Claude Opus 4.6 k vytvoření kompilátoru jazyka C, napsaného v programovacím jazyce Rust. Claude pracoval téměř autonomně, projekt trval zhruba dva týdny a náklady činily přibližně 20 000 dolarů. Výsledkem je fungující kompilátor o 100 000 řádcích kódu, jehož zdrojový kód je volně dostupný na GitHubu pod licencí Creative Commons.
Kultovní britský seriál The IT Crowd (Ajťáci) oslavil dvacáté výročí svého prvního vysílání. Sitcom o dvou sociálně nemotorných pracovnících a jejich nadřízené zaujal diváky svým humorem a ikonickými hláškami. Seriál, který debutoval v roce 2006, si i po dvou dekádách udržuje silnou fanouškovskou základnu a pravidelně se objevuje v seznamech nejlepších komedií své doby. Nedávné zatčení autora seriálu Grahama Linehana za hatecrime však vyvolává otázku, jestli by tento sitcom v současné Velké Británii vůbec vznikl.
Společnost JetBrains oznámila, že počínaje verzí 2026.1 budou IDE založená na IntelliJ ve výchozím nastavení používat Wayland.
Společnost SpaceX amerického miliardáře Elona Muska podala žádost o vypuštění jednoho milionu satelitů na oběžnou dráhu kolem Země, odkud by pomohly zajistit provoz umělé inteligence (AI) a zároveň šetřily pozemské zdroje. Zatím se ale neví, kdy by se tak mělo stát. V žádosti Federální komisi pro spoje (FCC) se píše, že orbitální datová centra jsou nejúspornějším a energeticky nejúčinnějším způsobem, jak uspokojit rostoucí poptávku po
… více »Byla vydána nová verze 2.53.0 distribuovaného systému správy verzí Git. Přispělo 70 vývojářů, z toho 21 nových. Přehled novinek v poznámkách k vydání.
Rychlé a elegantní - obzvlášť, pokud bude chtít získat všechny atributy jednoho uživatele.
Díky, jdu zvracet
PS: Evidentně, estetika (a elegance) je velmi subjektivní
Těžko si dovedu představit, že by 100 atributů nebylo možné rozčlenit do skupin. Asi bych od sebe neodděloval jednotlivé položky adresy bydliště uživatele apod. Už jsem také viděl tabulku, ve které u každého druhého sloupce bylo datum jeho poslední modifikace a kdo ji provedl...
Problém je v tom, že o té aplikaci dohromady nic nevíme. Mám představu, že je to třeba nějaká matrika se 100 atributy a každá osoba má vyplněných třeba jen 5 údajů. Ostatní zůstávají prázdné. V tu chvíli mi mé řešení připadá logické. Ano, pokud budu chtít vypsat všechny atributy jednoho uživatele, bude select asi delší, než výstup. Ovšem v případě EAV to nemusí být o mnoho lepší.
Padlo tady EAV, hstore, hromada tabulek, NoSQL,... Najde se ještě něco?
Co je špatného na EAV? Že databáze vysype ke každému atributu znova jméno? A? Fór je v tom, že databáze to unese (pokud ne, tak se bavíme o takovym molochu, že Tvoje řešení taktéž není vhodné). Ale psaní dotazů - teda práce programátora - bude oproti Tvému řešení triviální. Jak v Tvém řešení získáš jednoduchým selectem všechny atributy daného uživatele?
Tím, že to rozdělíš do tabulek, tak naprosto ztratíš možnost s atributy pracovat dohromady. Kromě o nemnoho rychlejších některých dotazů tím ale nezískáš nic: z EAV struktury jsem totiž schopný naprosto triviálně emulovat dotaz jakoby nad (rozdělenou) tabulkou obsahující daný atribut. Opačně (pokud neberu jako alternativu hromadu unionů) to ale nejde.
... popř. pokud má být uživatel víceaplikační, tak další tabulku s vazbou N:1 (todle řešení bych preferoval, protože i když to neplánuješ teď, tak....).Tohle jsem nepochopil. Co by v téhle tabulce bylo?
CREATE TYPE t_baseclass as OBJECT (... nejake zakladni attributy ...)Pak tuto "abstraktni" (NOT FINAL) tridu ulozit do tabulky:
CREATE TABLE base OF t_baseclass;Do tabulky base pak muzes ulozit vsechny potomky tridy t_baseclass, vcetne vsech jejich dodatecnych atributu.
$item = $result->fetch(); $item['attr'] = json_decode($item['attr']);A obdobně před updatem/insertem. Velkou výhodou je implementační jednoduchost. Pokud máš složitější data a potřebuješ je jen uložit/načíst, jednodušší způsob asi nenajdeš. Pokud nad nějakou omezenou množinou dynamických attributů potřebuješ postavit index, například kvůli řazení, ulož je (duplicitně) do pomocného sloupce. Pokud se to hodí, můžeš tyto dynamické parametry umístit do samostatné tabulky, kde primárním klíčem bude ID uživatele a ID aplikace. Pak bude snadné smazat data patřící dané aplikaci. V praxi jsem tohle použil a dopadlo to dobře.
. Pokud není člověk vyloženě nucenej použít mysql (což zde evidentně není), tak to není argument: a zde je evidentně volnost v použitých prostředcích.
Tiskni
Sdílej: