Design (GitHub) je 2D CAD pro GNOME. Instalovat lze i z Flathubu. Běží také ve webovém prohlížeči.
Příspěvek na blogu herního enginu Godot představuje aplikaci Xogot přinášející Godot na iPad a iPhone. Instalovat lze z App Storu. Za Xogotem stojí Miguel de Icaza (GitHub) a společnost Xibbon.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za březen (YouTube).
ESP-IDF (Espressif IoT Development Framework), tj. oficiální vývojový framework pro vývoj aplikací na mikrokontrolérech řady ESP32, byl vydán v nové verzi 6.0. Detaily na portálu pro vývojáře.
DeepMind (Alphabet) představila novou verzi svého multimodálního modelu, Gemma 4. Modely jsou volně k dispozici (Ollama, Hugging Face a další) ve velikostech 5-31 miliard parametrů, s kontextovým oknem 128k až 256k a v dense i MoE variantách. Modely zvládají text, obrázky a u menších verzí i audio. Modely jsou optimalizované pro běh na desktopových GPU i mobilních zařízeních, váhy všech těchto modelů jsou uvolněny pod licencí Apache 2.0. Návod na spuštění je už i na Unsloth.
Cursor (Wikipedie) od společnosti Anysphere byl vydán ve verzi 3. Jedná se o multiplatformní proprietární editor kódů s podporou AI (vibe coding).
Průkopnická firma FingerWorks kolem roku 2000 vyvinula vícedotykové trackpady s gesty a klávesnice jako TouchStream LP. V roce 2005 ji koupil Apple, výrobu těchto produktů ukončil a dotykové technologie využil při vývoji iPhone. Multiplatformní projekt Apple Magic TouchstreamLP nyní implementuje funkcionalitu TouchStream LP na současném Apple Magic Trackpad, resp. jejich dvojici. Diskuze k vydání probíhá na Redditu.
Byla vydána nová verze 10.3 sady aplikací pro SSH komunikaci OpenSSH. Přináší řadu bezpečnostních oprav, vylepšení funkcí a oprav chyb.
Cloudflare představil open source redakční systém EmDash. Jedná se o moderní náhradu WordPressu, která řeší bezpečnost pluginů. Administrátorské rozhraní lze vyzkoušet na EmDash Playground.
Bratislava OpenCamp 2026 zverejnil program a spustil registráciu. Štvrtý ročník komunitnej konferencie o otvorených technológiách prinesie 19 prednášok na rôzne technologické témy. Konferencia sa uskutoční v sobotu 25. apríla 2026 v priestoroch FIIT STU v Bratislave.
bohuzel, jsem se ted musel venovat trosku bezne rutinni praci, takze scheme ma na chvilku pauzu, ale zaujal me jiz treti dil serialu o smarty a prislo me to docela mastodontni.
jedna vec mne na templatovacich enginech docela vadi, ze se snazi vytvorit si vlastni jazyk - at uz jsou to smarty, ultratemplates, cokoliv dalsiho nebo treba xslt, pricemz tyto jazyky nedosahuji kvalit beznych jazyku, protoze jejich syntaxe je desna nebo chybi standardni knihovny.
osobne pouzivam tutu hezkou hracku:
class Sitcom {
private $values = array();
public function set($name, $value)
{
$this->values[$name] = $value;
}
public function render($template)
{
foreach ($this->values as $___name => $___value)
$$___name = $___value;
ob_start();
include($template);
$___content = ob_get_contents();
ob_end_clean();
return $___content;
}
}
neni to nic duchaplneho, jenom do prostredi vykreslovaci funkce se nactou promenne a vyvola se php-kod (sablona), ktery k temto promennym muze pristupovat. navic je to odchycene do bufferu... aby slo s touto hodnotou pracovat.
sablona pak vypada takto:Hello <?= $name ?> What's the time? <?= $time ?>kod v aplikaci pak:
$tpl = new Sitcom();
$tpl->set("name", "Tim Taylor");
$tpl->set("time", "It's Tool Time!");
echo $tpl->render("sample.tpl");
nazvat to templatovacim enginem je silne slovo, ale umoznuje to docela efektivne oddelit logiku od prezentace a hlavne neklade to nejake extra naroky na nove uceni (zadne nestandardni funkce a konstrukce), jenom to cloveka nuti vic premyslet nad tim, co si jeste podrzi ve funkci a co posle do sablony.
na zaver, male rypnuti -- php je dobry textovy preprocesor, tak proc jeho funkci nevyuzit a snazit se v nem psat dalsi jazyky, ktere delaji de facto to same?
Tiskni
Sdílej:
<?
include("page/header.php");
echo "<h2>Nadpis</h2>\n";
$d["form"]->render();
include("page/footer.php");
?>Způsobí to, že šablon je potřeba trošku víc (pro každý typ stránky jedna), ale zas se s nima nemusím skládat v kódu a přijde mi to tak přehlednější i jednodušší.
The ultimate goals of template engines shouldn't really be to remove all logic from HTML. It should be to separate presentation logic from business logic.Prostě jde o to, aby tenhle bordel, který převádí datové struktury na HTML nestrašil, kde nemá. Mít v šabloně kus kódu, který jen vypisuje a případně i konvertuje data z nějakého pole do HTML není vůbec špatné, ba naopak, k tomu ta šablona je.
a ani nezavádí nějaké složité obskurdnosti do šablon a ani do kódu ... fpodstatě z tou myšlenkou byl navržen(btw na avc.sh.cvut.cz je přednáška). způsob šablonování, co tu uvádíte sem používal a ještě teď vlastně používám, ale rozhodně to chcu celé přepsat ...
function html_table_row($cells)
{
$result = "<tr>\n";
foreach ($cells as $cell)
$result .= "<td>$cell</td>\n";
$result .= "</tr>\n";
return $result;
}
to si v kazde sablone staci inkludnout soubor s danyma standardnima funkcema (jeste mam nekolik variant pro praci - s ul, ol, li) a zacit je pouzivat. <?= html_table_row(array(1, 2, 3, 4)) ?>
XSLT je jedna z (bohuzel) mala moznosti, jak pri sablonovani zustat u cisteho XML a neztratit jeho flexibilitu. Jinak zkuste PHPTAL, nejlepsi co jsem pro PHP nasel.
.
Jinak ten tvůj způsob jsem chtěl taky dřív používat ( než jsem objevil XSLT
), ale postupně to začíná být dost nepřehledné. Ber to takhle, co když ti najednou na serveru zakážou "short_open_tag"
. Můžeš to začít přepisovat a pak se podívej na ten kód, jak je "přehledný"
.
Ber to takhle, co když ti najednou na serveru zakážou "short_open_tag". Můžeš to začít přepisovat a pak se podívej na ten kód, jak je "přehledný"
.
sed -i 's/<\?=/<?php echo/g' *.php
."
Neptej se mě proč by si to měl dělat, ale jestli si dobře vzpomínám, tak například Abíčko taky nebylo vždycky v JavěNo pokud vim, tak vsechny tyhle nase komentare jsou XML ulozeny v DB. Jestli to Leos zene ke klientovi pres XSLT nevim, ale nedivil bych se.
Teď jak to tady pročítám, tak mně napadla další výhoda XSLT. Co když začnu psát aplikaci např. v PHP a po čase bych ji chtěl přepsat např. do Javy? Sablony zůstanou!Mně zase napadla další výhoda Lispu. Co když začnu psát aplikaci např. v PHP a po čase bych ji chtěl přepsat např. do Javy? Sablony zůstanou!
Ale pokud bych to psal pomocí šablon v PHP (nebo čemkoli jiném), nebo přímo pastnul do kódu, tak můžu začít od nuly vše.
Ještě jsem zapomněl dodat: XSLT přímo vzniklo z Lispu a je to na něm dost vidět (konkrétně DSSSL), takže prohlášení „XSLT je o něčem jiném než Lisp“ je asi tak informované jako „C# je o něčem jiném než Java.“ Podobnosti jsou až zarážející a je jich podstatně více, než rozdílů. 
Nějaká pěkná čtení:
http://www.topxml.com/xsl/articles/fp/fp.zip
Dynamicky typovaný funkcionální programovací jazyk, jehož základní datovou strukturou je hierarchický seznam prvků. V této struktuře jsou psány samotné jeho programy, takže mj. může transformovat i sám sebe, pokud je to zapotřebí. Safra, to je nějaké povědomé, kde já tohle už slyšel?
Docela by mě zajímalo, do jaké míry se ty hardwarové akcelerátory XSLT podobají lispovským procesorům. Přinejmenším konceptuelně je to naprosto identická konstrukce: eval+apply natvrdo zadrátovaný.
. Nic ve zlim, ale Lisp je masochismus
.
A jinak, tady byla diskuse o templatovacich systemech v jazycich, takze porovnavani Lisp vs XSLT neni na miste. Hlavne by me zajimalo, jak bych udelal to co jsem rikal.
Mam aplikaci (web) v nejakem jazyku a leze mi z toho XML. Pomoci XSLT prekonvertuju na XHTML a jedu... Pak zmenim jazyk na jinej a porad muzu pouzit jiny objekty, ktery mi taky vygenerujou XML a sablony pouziju znova.
Jak nahradim XSLT Lispem? V PHP jsem zadnej objekt na lisp nenasel.
) lidštější syntaxe vstupu a 2) výsledek bude běhat všude), nebo b) implementace XSLT využívající vysokého výkonu kompilovaného lispovského kódu – něco na způsob CL-PPCRE. (výhoda: 1) interoperabilita se stylesheety třeba veřejně dostupnými na Internetu, 2) možnost aplikovat XSLT nějak na S-výrazy a z toho plynoucí 3) wow faktor.
)
Každopádně je to pěkná výzva.
Budu teď muset pracovat s nějakým XML a přemýšlím, jestli není lepší načíst XML dokument prostě jako S-výraz. Rozhodně mi to je bližší.
V Lispu je to triviální, poněvadž nemá syntaxi, ale psát se s parserem pro Python se mi nechce.