Jonathan Thomas oznámil vydání verze 4.0 nelineární střižny OpenShot. Nově podporuje nahrávání obrazu a zvuku, vylepšuje uživatelské rozhraní, mj. color grading, přidává další efekty a mnoho dalšího (seznam změn).
Proběhlo hlasování o používání LLM při vývoji Debianu. Vývojáři Debianu si odhlasovali zodpovědné využívání generativní umělé inteligence.
Sovereign Tech Agency (Wikipedie) prostřednictvím svého fondu Sovereign Tech Fund podpoří vývoj Flatpaku částkou 508 640 eur.
Byla vydána první veřejná verze v7.0-mk2 projektu Multikernel (mklinux), který umožňuje spouštět více nezávislých linuxových jader současně na jednom stroji bez hypervizoru.
Heureka Group uspěla v soudním sporu se společností Google. Městský soud v Praze vydal rozhodnutí v oblasti soukromoprávního vymáhání soutěžního práva. Společnosti Heureka Group přiznal náhradu ušlého zisku ve výši 250 milionů korun, což spolu s úroky z prodlení a náhradou nákladů řízení činí více jak 410 milionů korun. Základem celého sporu bylo protisoutěžní jednání technologického giganta Google v letech 2013 až 2017. Google na
… více »Dnešním dnem končí LTS podpora Debianu 11 s kódovým názvem Bullseye. K dispozici je Extended LTS podpora.
Firma X zaslala předžalobní výzvu vývojáři projektu Nitter (Wikipedia), open-source alternativního frontendu k sociální síti X (ex-Twitter), a provozovatelům instancí jako XCancel, které umožňovaly číst příspěvky bez přihlášení, reklam a javascriptu. Údajně se dopouštějí „sběru dat“. Zdrojový kód Nitteru vývojář archivoval. Vývoj již dříve přerušil v roce 2024 po tehdejším omezení API X. X je dceřiná společnost SpaceXAI Elona Muska, provozující mj. kontroverzního chatbota Grok.
Bylo vydáno Ubuntu 26.04.1 LTS, tj. první opravné vydání Ubuntu 26.04 LTS s kódovým názvem Resolute Raccoon. Přehled novinek a oprav na Discourse.
Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) vydal Zprávu o stavu kybernetické bezpečnosti ČR za rok 2025 (pdf). Incidentů ubylo, sofistikovanost útočníků roste.
Open source softwarový stack AMD ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán v nové major verzi 10.0. S ROCm.AI. Přehled novinek v aktualizované dokumentaci.
`cat *.txt >all`;(samozrejme existuje milion jinejch zpusobu)
;
@g = ();
@b = ();
$map{"g"} = \@g;
$map{"b"} = \@b;
open(F, "file.txt");
while (<F>)
{
if (m/(.*):(.*)/)
{
push @{ $map{$1} }, $2;
}
}
close(F);
print "G:\n";
for $i (@g) { print "\t$i\n"; }
print "B:\n";
for $i (@b) { print "\t$i\n"; }
ocekava se ze file.txt bude ve formatu:
g:nick1 g:nick2 b:nick3 b:nick4 g:nick5 ...
Nebo to rozdel do sekci a identifikator dej pouze pred prvni zaznam dane sekce (neco na zpusob *.ini souboru ve Windows). Zpusob zapisu oddelovace si zvol jaky ti vyhovuje - napriklad
[nazev sekce] data data
nebo
::nazev sekce data data
nebo
nazev sekce: data data
atd.
Spojeni do jednoho souboru muzes udelat napriklad takto
for X in *.txt; do
echo "[${X%.txt}]">>all.txt;
cat $X >>all.txt;
done
Puvodni jmena souboru (bez pripony) jsou pouzity jako oddelovace/nazvy sekci. Vysledny soubor s daty tedy muze vypadat takto
[kluci] mnick1 # komentar mnick2 mnick3 [holky] fnick1 fnick2 fnick3
Pokud vylozene nepotrebujes extra promenne tak bych to pak nacital do HASHe - treba nasledujicim zpusobem
my %data;
my $line;
my $sekce = 'neznama';
my $config = 'all.dat';
# nacteme data/konfiguraci
if (open(DATAIN, $config)) {
while ($line = <DATAIN>) {
chomp($line);
next if ($line =~ /^\s*$/);
next if ($line =~ /^\s*#/);
if ($line =~ /^\s*\[([^\]]+)]\s*$/) {
# nalezena nova sekce dat
$sekce = $1;
$sekce =~ s/^\s*//;
$sekce =~ s/\s*$//;
} else {
# cteme data
push @{$data{$sekce}}, $line;
}
}
# data nactena - zavreme soubor
close(DATAIN);
} else {
die("Nelze otevrit soubor '$config'");
}
# pokracuje vlastni kod programu
# ...
Jednotlive kategorie/seznamy jsou pristupne jako @{$data{'jmeno seznamu'}} (napr.: @{$data{holky}} a polozky pak $data{'jmeno seznamu'}[index] (napr.: $data{'holky'}[1]. Seznam vsech nactenych kategorii/seznamu ziskas pomoci keys %data.
Diky za doporuceni a odkaz na CPAN. Pro vasi informaci na CPANu mam nekolik modulu a vyvoj v PERLu mne i pred lety zivil. Pri pouzivani CPAN modulu jsem bohuzel casto narazil na velmi promenlivou kvalitu kodu a dokumentace. Velmi casto je k dispozici nekolik modulu pro stejny ukol a zadny z nich to nedela poradne… To je ale namet na uplne jinou a poradne dlouhou diskusi.
Po precteni tazatelova prispevku jsem mu chtel ukazat kousek PERLoveho kodu a silu PERlu. Tazatel zrejme prechazi z C ci neceho podobneho. Pri pouhem uvedeni odkazu na CPAN ci konkretni modul tak tazatel zrejme zustane u psani ceckoveho kodu v PERLu a nevyuzije silu a prednosti tohoto jazyka.
Napriklad pokud pouze plnim pole, nepotrebuji si udrzovat index posledniho prvku, tedy namisto
$holky[$a] = $radek; $a++;
lze jednoduse pouzit
push @holky, $radek;
Pokud potrebuji pocet prvku, ziskam jej z @holky ve skalarnim kontextu, jenz si lze vynutit pomoci scalar(@holky). Index posledniho prvku pak je $#holky. Tazatel take jeste prilis nezna kouzlo regularnich vyrazu umoznujici volnost v psani zaznamu ve vstupnim souboru (napriklad volitelne mezery jenz nekdy text udelaji pro cloveka prehlednejsim) namisto pouziti substr() kde musim mit zaznam presnou strukturu.
open(my $input, ...) místo open(INPUT, ...). Vypadá to jako nuance ale má to dalekosáhlé dopady (k lepšímu). A také není potřeba mít if...else otevření selhalo, ale stačí použít autodie.
Tiskni
Sdílej: