Samsung představil svůj nejnovější chytrý telefon Galaxy Z TriFold (YouTube). Skládačka se nerozkládá jednou, ale hned dvakrát, a nabízí displej s úhlopříčkou 10 palců. V České republice nebude tento model dostupný.
Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 25.11.1. Přehled novinek v Changelogu.
Byla vydána nová verze 15.0 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.
UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04 1.1 a 20.04 OTA-11. Vedle oprav chyb a drobných vylepšení je řešen také středně závažný bezpečnostní problém.
I letos vyšla řada ajťáckých adventních kalendářů: Advent of Code 2025, Perl Advent Calendar 2025, CSS Advent Calendar 2025, Advent of A11Y 2025, Advent of AI Security 2025, Advent of Agents (in Google) 2025, Advent of Svelte 2025, …
Fedora zve na dvoudenní testování (2. a 3. prosince), během kterého si můžete vyzkoušet nové webové uživatelské rozhraní (WebUI) projektu FreeIPA. Pomozte vychytat veškeré chyby a vylepšit uživatelskou zkušenost ještě předtím, než se tato verze dostane k uživatelům Fedory a celého linuxového ekosystému.
Eben Upton oznámil zdražení počítačů Raspberry Pi, kvůli růstu cen pamětí, a představil 1GB verzi Raspberry Pi 5 za 45 dolarů.
Linus Torvalds na YouTube kanálu Linus Tech Tips staví dokonalý linuxový počítač.
Po 9 týdnech vývoje od vydání Linuxu 6.17 oznámil Linus Torvalds vydání Linuxu 6.18. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a Linux Kernel Newbies. Vypíchnout lze například podporu protokolu PSP (PSP Security Protocol, PSP encryption of TCP connections).
Byla vydána nová stabilní verze 25.11 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Xantusia. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.
Osobně bych šel do staticky typovaného jazyka s odvozováním typů, abychom se vyhli těm nejtriviálnějším chybám.Statický typový systém může odhalit docela dost chyb – cituji z popisu jazyka Ur/Web, který je určen pro tvorbu spolehlivých webových aplikací:
The signature of the standard library is such that well-typed Ur/Web programs "don't go wrong" in a very broad sense. Not only do they not crash during particular page generations, but they also may not:
- Suffer from any kinds of code-injection attacks
- Return invalid HTML
- Contain dead intra-application links
- Have mismatches between HTML forms and the fields expected by their handlers
- Include client-side code that makes incorrect assumptions about the "AJAX"-style services that the remote web server provides
- Attempt invalid SQL queries
- Use improper marshaling or unmarshaling in communication with SQL databases or between browsers and web servers
Ač to vypadá zajímavě, je to teprve na začátku. Jen dva díly tutoriálu, reference manuál nejde. Osobně bych potřeboval knihovnu pro napojení na Facebook, něco jako ORM atd. To univerzum knihoven je příliš malé.
Ten HelloWorld ocsigenu nevypadá z nejpřívětivějších:) Ale to je taky tím že už jsem spoustu let zvyklý na jiné jazyky...
http://ocsigen.org/howto/helloworld
open Lwt
open Eliom_content.Html5.D
open Eliom_service
open Eliom_parameter
open Eliom_registration.Html5
let main_service =
register_service ~path:["hello"] ~get_params:unit
(fun () () -> return (html (head (title (pcdata "Hello World of Ocsigen")) [])
(body [h1 [pcdata "Hello World!"]])))
import Happstack.Server
main = simpleHTTP nullConf $ ok "Hello, World!"
Statický typový systém může odhalit docela dost chybNebo taky nemusi. Pokazde kdyz udelate
void x(void *p) {
...
some_struct* t = (some_struct*)p;
...
}
...jde type checking do pr...kenny vohrady.
Suffer from any kinds of code-injection attacksTo by se ten jazyk musel ale používat na všechno a řetězce v něm být pouhé texty, ne kód jako například SQL příkazy nebo javascript a kvůli některým vlastnostem by to v podstatě nemělo být ani HTML. To už by mi přišlo jako docela hezký framework. Nicméně s těmito vlastnostmi přichází neflexibilita. Tudíž je ten jazyk prakticky bez šance získat výrazný podíl na webových aplikacích a je vhodný jen pro určitou škálu projektů.
To by se ten jazyk musel ale používat na všechno a řetězce v něm být pouhé textyAno, on se používá na všechno – generuje se z něj C kód pro server, SQL pro databázi, HTML a JavaScript pro klienta.
Array.new(10).size.must_equal 10 není MiniTest::Unit ale MiniTest::Spec. assert právě naopak je součást MiniTest::Unit. To musí vypadat ta aplikace teda, když netušíte ani takovýhle základní fakt. Snad se v tom kolega vyzná líp.
describe a it pro "okomentování testů" a uvnitř použít klasický assert. Tahle možnost se mi líbí pro integrační testy a hojně jí využívám.
Jinak jako důkaz se můžete podívat na testy Rails. Ačkoliv jsou všechny přepsány do MiniTestu, používají klasický assert (schválně).
Lepší?
Máte pravdu. Tušil jsem, že tam budu mít chyby; bylo to psáno v rychlosti:) "must_equal" je v
MiniTest::Spec a ne v MiniTest::Unit. Opravím to.
Tiskni
Sdílej: