abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 12:11 | Nová verze

    Byla vydána nová major verze 7.0 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Nově je postavena je na Debianu 13 (Trixie) a GNOME 48 (Bengaluru). Další novinky v příslušném seznamu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:44 | IT novinky

    Společnost Meta na dvoudenní konferenci Meta Connect 2025 představuje své novinky. První den byly představeny nové AI brýle: Ray-Ban Meta (Gen 2), sportovní Oakley Meta Vanguard a především Meta Ray-Ban Display s integrovaným displejem a EMG náramkem pro ovládání.

    Ladislav Hagara | Komentářů: 0
    dnes 01:11 | Nová verze

    Po půl roce vývoje od vydání verze 48 bylo vydáno GNOME 49 s kódovým názvem Brescia (Mastodon). S přehrávačem videí Showtime místo Totemu a prohlížečem dokumentů Papers místo Evince. Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.

    Ladislav Hagara | Komentářů: 3
    včera 16:22 | Nová verze

    Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | Nová verze

    Byla vydána nová verze 258 správce systému a služeb systemd (GitHub).

    Ladislav Hagara | Komentářů: 5
    včera 15:11 | Nová verze

    Byla vydána Java 25 / JDK 25. Nových vlastností (JEP - JDK Enhancement Proposal) je 18. Jedná se o LTS verzi.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | Humor

    Věra Pohlová před 26 lety: „Tyhle aféry každého jenom otravují. Já bych všechny ty internety a počítače zakázala“. Jde o odpověď na anketní otázku deníku Metro vydaného 17. září 1999 na téma zneužití údajů o sporožirových účtech klientů České spořitelny.

    Ladislav Hagara | Komentářů: 5
    včera 11:33 | Zajímavý článek Ladislav Hagara | Komentářů: 0
    16.9. 21:44 | Nová verze

    Byl vydán Mozilla Firefox 143.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Nově se Firefox při ukončování anonymního režimu zeptá, zda chcete smazat stažené soubory. Dialog pro povolení přístupu ke kameře zobrazuje náhled. Obzvláště užitečné při přepínání mezi více kamerami. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 143 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    16.9. 17:22 | Nová verze

    Byla vydána betaverze Fedora Linuxu 43 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 21. října.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (52%)
     (60%)
     (0%)
     (8%)
     (12%)
     (4%)
     (12%)
     (4%)
     (8%)
    Celkem 25 hlasů
     Komentářů: 2, poslední dnes 09:57
    Rozcestník
    Štítky: není přiřazen žádný štítek


    Vložit další komentář
    30.10.2019 20:26 Marek the Brave
    Rozbalit Rozbalit vše Re: Relational pipes v0.14
    Kolik lidí to používá?
    xkucf03 avatar 30.10.2019 20:55 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Relational pipes v0.14

    Vzhledem k tomu, že je to nestabilní1 vývojová verze, tak kromě mě asi moc lidí ne :-)

    [1] nestabilní z pohledu API – a cílem těchto verzí je právě to API (parametry příkazové řádky, formát, C++ rozhraní) odladit – budu rád, když se na to podívá někdo další (víc očí, víc vidí)

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    31.10.2019 10:23 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Relational pipes v0.14
    Stále mi není jasný, na co to vlastně je. Když koukám na příklady, u těch jednoduších si říkám, že by na to stačil shell, u těch složitějších, že bych vzal python. Např. ten příklad s nejpoužívanější knihovnou mi nepřijde, že by byl v shellu složitější:

    find /usr/bin -type f -exec ldd {} \; | sed -e 's/ =>.*//' -e 's/(.*//' | sort | uniq -c | sort -nr | head -n 20

    Neměřil jsem to, ale hádám, že ani nebude pomalejší, protože bottleneck je stejně volání ldd ...

    Jinak abych nebyl jen negativní, je cool, že se ti podařilo dát projekt dohromady a v jazyce, který je pro tebe nový...
    xkucf03 avatar 31.10.2019 12:30 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Relational pipes v0.14
    Když koukám na příklady, u těch jednodušších si říkám, že by na to stačil shell, u těch složitějších, že bych vzal python.

    Je to právě někde mezi tím. Jde o mírné vylepšení unixového shellu tak, aby se odstranily jeho problémy, ale zachovalo se to dobré a pořád jsi mohl zůstat v shellu. Tzn. můžeš tu rouru poskládat ad-hoc na příkazové řádce (teď s tím Bash completion se to konečně dá používat :-), zpracovat nějaká data a zahodit ji (resp. zůstane ti v historii shellu, takže se k ní můžeš vrátit) tzn. něco jako Perl onelinery. A když zjistíš, že se ti to líbí a chtěl bys to používat opakovaně, tak to prostě jen uložíš do .sh souboru a používáš. Zatímco kdybys to musel od samého začátku programovat (tzn. založit si nový soubor, pak ho zase mazat nebo dávat do nějaké správné složky, přepínat okna, spouštět interpret/kompilátor atd.), tak by ses na to asi vykašlal. Mně se celkem často stává, že mám otevřený terminál, jsem v nějaké složce, chci tam něco řešit… ale nestojí mi to za to, abych kvůli tomu začal programovat (vím, že to zní trochu divně, když se programováním živím, ale snad chápeš, co tím chci říct).

    Spousta lidí umí SQL (Scheme, AWK, XPath, Python atd.) a je to pro ně přirozený jazyk, ale nikdy by je nenapadlo řešit pomocí něj jednoduché úlohy, protože by si kvůli tomu museli zakládat schéma a tabulky na nějakém serveru, pak to uklízet, řešit hesla… takže to radši nějak zmastí pomocí příkazů typu grep, cut, sed, sort… přitom by to šlo řešit elegantně třeba pomocí GROUP BY nebo window či jiných funkcí atd. Jeden z principů těch Relačních rour je nevytvářet nic moc nového, ale jen zpřístupnit a propojit stávající technologie (programovací/dotazovací jazyky, shelly, formáty…).

    Pak jde o násobení možností, které nastává díky tomu jednotnému datovému modelu (relace, místo stromových struktur či grafů obvyklých v objektových programovacích jazycích). Když se podíváš na Big picture na titulní stránce, tak je tam 8 vstupních formátů, 8 výstupních, takže to dává 8×8 možností × počet transformací a s každým dalším modulem se to násobí. To mi na tom přijde zajímavé – že dopíšeš malý jednoduchý modul a najednou jde použít v mnoha různých kontextech, mnoha způsoby.

    Klasické unixové roury jsou přesně to samé a hrozně se mi kvůli tomu líbí, ale vždycky mne na nich rozčilovalo to, že jim chybí malý kousek k dokonalosti – ten dobře definovaný společný formát, kterým by se předávala strukturovaná data. Proto to chci k tomu dobře definovanému formátu dotáhnout. V současnosti ta implementace nástrojů předbíhá definici toho formátu (formální specifikace dosud není vydaná), ale to proto, abych mohl praktickým používáním odladit ten formát a nebyl to jen teoretický návrh, který vypadá dobře na papíře, ale pak se v praxi ukáže, že tomu něco chybí nebo přebývá.

    Jako Pythonista bys mohl pomoci s návrhem toho modulu relpipe-tr-python – dlouho jsem na to nesáhl a mezi tím jsem pokročil mnohem dál s Guile a AWK moduly, se kterými jsem teď celkem spokojený. Jde v nich filtrovat i upravovat záznamy, přidávat nebo ubírat atributy, měnit jejich typ nebo i přidávat záznamy. V podstatě tam jde dělat totéž co v SQL, akorát to píšeš v jiném jazyce. Totéž bych chtěl pro ten Python, ale je potřeba nějak vyřešit kolize mezi názvy atributů a klíčových slov (v Guile jsem tam dal $ prefix; v AWKu jsem tam dal seznam rezervovaných jmen, která se escapují, když je kolize). Tu syntaxi --where--for-each bych tam ideálně chtěl zachovat, ať je to jednotné. Může to fungovat i tak, že budeš hodnoty těch atributů tahat z nějaké mapy, ale to mi přijde nepohodlné na psaní (klíče by byly jako textové řetězce v uvozovkách, takže by se v Pythonu ty filtry/transformace nepsaly tak hezky, jako v AWK nebo Guile).

    $ relpipe-in-fstab | relpipe-tr-awk --debug-variable-mapping --relation '.*' --where 'device == "proc"' | relpipe-out-tabular 
    fstab.variableMapping:
     ╭────────────────────┬───────────────────╮
     │ attribute (string) │ variable (string) │
     ├────────────────────┼───────────────────┤
     │ device             │ device            │
     │ dump               │ dump              │
     │ mount_point        │ mount_point       │
     │ options            │ options           │
     │ pass               │ pass              │
     │ scheme             │ scheme            │
     │ type               │ type              │
     ╰────────────────────┴───────────────────╯
    Record count: 7
    fstab:
     ╭─────────────────┬─────────────────┬──────────────────────┬───────────────┬─────────────────────┬────────────────┬────────────────╮
     │ scheme (string) │ device (string) │ mount_point (string) │ type (string) │ options    (string) │ dump (integer) │ pass (integer) │
     ├─────────────────┼─────────────────┼──────────────────────┼───────────────┼─────────────────────┼────────────────┼────────────────┤
     │                 │ proc            │ /proc                │ proc          │ noexec,nosuid,nodev │              0 │              0 │
     ╰─────────────────┴─────────────────┴──────────────────────┴───────────────┴─────────────────────┴────────────────┴────────────────╯
    Record count: 1
    
    
    
    $ relpipe-in-fstab | relpipe-tr-guile --debug-variable-mapping --relation '.*' --where '(string= $device "proc")' | relpipe-out-tabular 
    fstab.variableMapping:
     ╭────────────────────┬───────────────────╮
     │ attribute (string) │ variable (string) │
     ├────────────────────┼───────────────────┤
     │ device             │ $device           │
     │ dump               │ $dump             │
     │ mount_point        │ $mount_point      │
     │ options            │ $options          │
     │ pass               │ $pass             │
     │ scheme             │ $scheme           │
     │ type               │ $type             │
     ╰────────────────────┴───────────────────╯
    Record count: 7
    fstab:
     ╭─────────────────┬─────────────────┬──────────────────────┬───────────────┬─────────────────────┬────────────────┬────────────────╮
     │ scheme (string) │ device (string) │ mount_point (string) │ type (string) │ options    (string) │ dump (integer) │ pass (integer) │
     ├─────────────────┼─────────────────┼──────────────────────┼───────────────┼─────────────────────┼────────────────┼────────────────┤
     │                 │ proc            │ /proc                │ proc          │ noexec,nosuid,nodev │              0 │              0 │
     ╰─────────────────┴─────────────────┴──────────────────────┴───────────────┴─────────────────────┴────────────────┴────────────────╯
    Record count: 1

    Jde o to, aby člověk mohl jednoduše napsat pár výrazů ve svém oblíbeném jazyce do toho --where--for-each a jinak to bylo stejné.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    1.11.2019 00:29 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Relational pipes v0.14
    Jako Pythonista bys mohl pomoci s návrhem toho modulu relpipe-tr-python
    Na to nejsem ten správnej člověk, proti relacím a SQLku nic nemam, ale nadšenec taky nejsem.

    A python už teď taky moc nedělám. Spíš jsem ho zmiňoval proto, že to je imo takaová lingua franca na tyhle věci...
    26.2.2022 12:10 upozorneni
    Rozbalit Rozbalit vše Re: Relational pipes v0.14
    UPOZORNÉNÍ --- Autor tohoto softwaru je ruský kolaborant, podobruje šíření ruských desinformací ve válce o Ukrajinu.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.