Waydroid (Wikipedie, GitHub) byl vydán v nové verzi 1.6.0. Waydroid umožňuje spouštět aplikace pro Android na běžných linuxových distribucích. Běhové prostředí vychází z LineageOS.
Příspěvek na blogu Raspberry Pi představuje novou kompletně přepracovanou verzi 2.0 aplikace Raspberry Pi Imager (YouTube) pro stažení, nakonfigurování a zapsání obrazu operačního systému pro Raspberry Pi na SD kartu. Z novinek lze vypíchnout volitelnou konfiguraci Raspberry Pi Connect.
Memtest86+ (Wikipedie), svobodný nástroj pro kontrolu operační paměti, byl vydán ve verzi 8.00. Přináší podporu nejnovějších procesorů Intel a AMD nebo také tmavý režim.
Programovací jazyk Racket (Wikipedie), tj. jazyk z rodiny jazyků Lisp a potomek jazyka Scheme, byl vydán v nové major verzi 9.0. Hlavní novinku jsou paralelní vlákna (Parallel Threads).
Před šesti týdny bylo oznámeno, že Qualcomm kupuje Arduino. Minulý týden byly na stránkách Arduina aktualizovány podmínky používání a zásady ochrany osobních údajů. Objevily se obavy, že by otevřená povaha Arduina mohla být ohrožena. Arduino ubezpečuje, že se nic nemění a například omezení reverzního inženýrství v podmínkách používání se týká pouze SaaS cloudové aplikace.
Knihovna libpng, tj. oficiální referenční knihovna grafického formátu PNG (Portable Network Graphics), byla vydána ve verzi 1.6.51. Opraveny jsou 4 bezpečnostní chyby obsaženy ve verzích 1.6.0 (vydána 14. února 2013) až 1.6.50. Nejvážnější z chyb CVE-2025-65018 může vést ke spuštění libovolného kódu.
Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 159 (pdf).
Hru Warhammer: Vermintide 2 (ProtonDB) lze na Steamu získat zdarma napořád, když aktivaci provedete do pondělí 24. listopadu.
Virtualizační software Xen (Wikipedie) byl vydán v nové verzi 4.21. Podrobnosti v poznámkách k vydání a přehledu nových vlastností.
Evropská komise schválila český plán na poskytnutí státní pomoci v objemu 450 milionů eur (téměř 11 miliard Kč) na rozšíření výroby amerického producenta polovodičů onsemi v Rožnově pod Radhoštěm. Komise o tom informovala v dnešní tiskové zprávě. Společnost onsemi by podle ní do nového závodu v Rožnově pod Radhoštěm měla investovat 1,64 miliardy eur (téměř 40 miliard Kč).
Poslední dobou se zabývám vývojem webových aplikací. Ovšem web má svoje specifika a na tvorbu aplikací nikdy nebyl navržen. Takže podstatnou část času trávím předstíráním, že tomu tak není.
To sebou nese věci jako spousty HTML, CSS a Javascriptového kódu. To vše v kombinaci s Javou a PL/SQL dává vcelku zajímavou směsici jazyků. Ne žádný framework nepoužíváme. Naštěstí se Sun rozhodl specifikaci JSP rozšířit podporu Expression Language a tak je možné psát vlastní tagy jako JSP stránku. Dříve bylo potřeba napsat servlet a ještě speciální mapovací soubor. Brr, tohle je přesně to, co nenávidím na C/C++ a oni to narvou do tzv. vyššího programovacího jazyka*. Možná byla škoda se učit dynamické jazyky jako Python a Lisp, třeba by se mi Java a XML mohlo i líbit**
. Ale naštěstí se takto dají vcelku hezky uzavírat externí komponenty do vlastních značek a tím si rozšířit zásobu widgetů o ty, které se považují v běžných toolkitech za nepostradatelné.
Bohužel to není úplně univerzální řešení, takže jsem se začal poohlížet po různých frameworcích. Prozkoumal jsem django, zope (zuřivý Pythonista
) a nakonec i Google Web Toolkit (jeho výstup mi Konqueror nepobral).
V té chvíli jsem si uvědomil, že za nějaký čas se s vývojem webových aplikací stane totéž, co s vývojem aplikací pro X. My, co umíme napsat v HTML, CSS a Javascriptu (OK, ten behaviour skript, který přinutí MSIE se tvářit jako pořádný prohlížeč, si stáhnu z webu
) budeme marně poukazovat na výhody takového psaní. Na to, že máme vše 100% pod kontrolou a že toolkity tvůrce, oproti čistému Xlibu, omezují. Nadstavbové toolkity s integrovaným XMLHttpRequestem (základní součástka Ajaxu), s perfektně odladěnými Javascriptovými kódy od IE 5.0 až po elinks zefektivní práci (opravdu radost kontrolovat kód v x prohlížečích). A za pomocí miliónu technických obezliček přesvědčí uživatele, že je to v podstatě normální aplikace, přestože k tomu web určen nebyl a není.
BTW: Na mapovacích XML nesmyslech pro Javu mi vadí přesně ta věc, která mi vadí na hlavičkových souborech v C/C++. Prostě jedna definice zapsaná na více místech dělá při změnách bordel. Není to dobré a v případě Javy se jedná o obejití problémů s reflexí a introspekcí, což je přesně ta oblast, kde dynamické jazyky naopak excelují. Bohužel, jazyk D, který by aspoň pro mě představoval ideální náhradu za C++ (složitější a komplikovanější jazyk aby pohledal), se nejspíš neprosadí. Ten aspoň odstraňuje hlavičkové soubory.
BTW2: Od té doby, co mi generátor javovského kódu v Pythonu zabral necelou necelou polovinu znaků, než samotný vygenerovaný program, se nad syntaktickou rozvláčností Javy šklebím stále víc. Bohužel, cesta, že bych si pro všechen kód psal generátor v Pythonu není schůdná. Díky alespoň za foreach v 1.5. A s Lispem bych měl taky přestat, ministerstvo zdravotnictví varuje, že programování v Lispu zapříčiňuje úbytek kodérů v Javě 
Tiskni
Sdílej:
Mno pokud přehlédnu všechny poznámky proti javě, tak je to pěkný blogpost.
Btw javascript: co nutí programátory webaplikací programovat něco v JS? Nevím, co konkrétně píšeš za programy, ale osobně to vidím takto: prohlížeč umí (by měl umět) pouze xhtml+css (tedy zobrazit "statickou" stránku) a o všechny requesty se postará server, který opět odešle čistý xhtml. A přiznám se, že jsem nikdy na webu nepsal v JS (už proto, že jej neumím
), tak jsem to nikdy ani nepotřeboval a zatím všude, kde jsem viděl použitý java script to lze nahradit requestem zpracovaným na serveru.
Zkoušel jste někdo Groovy?
.
Poznámkami proti Javě začínám být pověstný, bohužel pro mě, neměl jsem se učit dynamické jazyky. Dobře mi tak
.
Mno bohužel pro mě je Java první objektově orientovaný jazyk, který umím (mimo C#, jazyků jsem poznal spoustu, včetně funkcionálního scheme, který je možná dobrý na machrovaní ale na pořádnou práci se nehodí). Ano, objektovost javy není dokonalá (a tvoje nářky na upovídanost bych možná kontroval přehledností kódu) a trochu mě to štve, ale (a no flame), je to snad jediný OOP jazyk, který je použitelný na velké projekty a snadno portovatelný na jiné platformy.
Ano, objektovost javy není dokonalá (a tvoje nářky na upovídanost bych možná kontroval přehledností kódu) a trochu mě to štve, ale (a no flame), je to snad jediný OOP jazyk, který je použitelný na velké projekty a snadno portovatelný na jiné platformy.Tak "přehlednost kódu" alespoň mně přijde u Javy právě naprosto žalostná (třeba v porovnání s Pythonem). A s tím že by byla Java jediným OOP jazykem použitelným na velké projekty také nemohu souhlasit, i Python se dá výborně použít na velké věci (a vsadil bych se, že třeba takové Ruby na tom bude podobně). Na Javu jsem hodně alergický, s jazyky jako Python či Ruby se nedá srovnávat (v její neprospěch), rozšířila se jen díky masivní marketingové masáži Sunu...
. Navíc je díky Apache dostupných mnoho výborných svobodných nástrojů. Tuto podporu už mimo .Netu (a ani silný Microsoft nedokázal daný stav zvrátit tak, jak by si možná představoval) nemá žádná jiná platforma a je to znát. Snad už chybí jenom svobodná implementace Javy 1.5 (a za chvilku i 1.6).
BTW: pokud se ti zdá, že Pythonisti do Javy buší, doporučuji pokec se Smalltalkerem
Java se používá na velké projekty, to je pravda. Ovšem Java se všude používá ... prostě proto, že se Java všude používá a že ji Sun protlačil. Navíc jsou k Javě dostupná dvě skvělá svobodná vývojová prostředí a jedno vynikající komerční, Javu používá Oracle, nebo IBM. A pokud by Sun implementoval delegáty do Javy, možná by jí propagoval i MicrosoftJistě, to je dnes hlavní argument. Ale Java se nerozšířila sama od sebe. A pokud pomineme (populární) teorii o idiotech masírovaných marketingem, tak ten důvod je celkem zřejmý: používání Javy dokázalo výrazným způsobem snížit náklady na vývoj a hlavně zvýšit jeho objem (v době kdy to, shodou okolností, bylo velmi potřeba). Java je totiž jazyk použitelný i pokud jsou v týmu podprůměrní či dokonce mizerní programátoři. Výsledek sice není nic moc, ale je celkem přehledný a čitelný. Prostě to nejde tolik zprasit. Dejte takovému člověku C++ a může se to psát znova (nějaký LISP je mimo mísu). Tomu se říká "softwarové inženýrství v praxi" a kdo nezažil, nepochopí (maximálně tak je možné si rozšířit obzory na www.thedailywtf.com ).. Navíc je díky Apache dostupných mnoho výborných svobodných nástrojů. Tuto podporu už mimo .Netu (a ani silný Microsoft nedokázal daný stav zvrátit tak, jak by si možná představoval) nemá žádná jiná platforma a je to znát. Snad už chybí jenom svobodná implementace Javy 1.5 (a za chvilku i 1.6).
BTW: pokud se ti zdá, že Pythonisti do Javy buší, doporučuji pokec se SmalltalkeremNo jo, ale smalltalkeři na to mají vcelku právo. Srovnávat Smalltalk a Python... no, možná až bude mít python pořádné closure. Ale i tak smalltalk povede přehledností.
Java je totiž jazyk použitelný i pokud jsou v týmu podprůměrní či dokonce mizerní programátoři. Výsledek sice není nic moc, ale je celkem přehledný a čitelný.Tak za tento argument by mě Javisti umlátili
. Ale asi na tom něco
bude.
Pochopitelně i Java má výhody, ovšem ty imnho nevycházejí z "kvality" jazyka, ale z obrovské podpory, kterou má. Java má velké množství různých opensource nástrojů, které mívají i komerční varianty. Něco podobného jako Apache, nebo Eclipse afaik nemá žádný jiný jazyk (FSF není rovnocenné), navíc samotný Sun opensource vcelku podporuje. Proto, pokud se má něco řešit, je většinou rozhodnutí použít Javu rozumné, protože existuje množství odzkoušených nástrojů, jak to, či ono udělat.
) a začalo se dělat na velkých plochách, ale trošičku (trošičku dost) poklesly výnosy z plochy. Vykompenzovala to ale obdělávaná plocha. No a jednoho dne jsme přešli na intenzivní hospodářství. Člověk dostal kvalitní kombajn (Lisp), umělá hnojiva, proti kterým někteří protestují (makra
), testují se i geneticky modifikované plodiny, proti kterým se protestuje ještě víc (makra píšící makra
), ale pokud se jednou budeme chtít dostat opravdu daleko, je možné, že nám nezbyde než dát prostor menšímu počtu kvalitnějších specialistů.
Jen mi přijde, že Java je glorifikovaný pluh. Se spoustou výhod, ale ne konec cesty...a zatímco s tím pluhem by při trošce praxe uměla dělat hromada lidí, přijde den, kdy to tak nepůjde. Informační explozi už asi nezastavíme.
Ale vždyť on nefunguje jinak, to se snažím naznačit.
Mno z čistě akademického hlediska možná ano. Taky mám rád jiné jazyky, než je java, ale...
... ale a chápu, že se to zdějšímu osazenstvu nebude moc líbit, ale pokud chci něco programovat můžu si vybrat nějaký jazyk, kde výsledný kód bude superoptimalizovaný, využitý každý bajt paměti a každý tik procesoru. Jenže takový kód budu psát (a hlavně následně optimalizovat) nereálně dlouho. Pokud si místo toho vyberu jazyk, kde napíšu to během pár týdnů (a výsledný kód bude o pár procent pomalejší), tak se mi to mnohonásobně vyplatí (a klidně si můžu koupit lepší HW). Navíc ten superotimalizovaný kód bude optimální pouze na jednom cpu, už proto, že na jiné platformě ani nepojede.
Tohle dělá jediná skupina lidí, a to autoři demíček. Zadruhé, jak to souvisí s tím, co jsem psal? Kupříkladu zrovna ten Lisp je nejen rychlejší na psaní, ale v konečném důsledku je i rychlejší co do výsledného kódu. A to není nic akademického, to jsou pragmatické cíle. (Proč by se jinak používal v extrémních nasazeních, že jo?
)
Ale vždyť on nefunguje jinak, to se snažím naznačit.On snad někdo tvrdí, že ja Java vrchol všecho lidského snažení? :-O Právě naopak. Ale klidně se vsadím, že ten další den bude opět zklamání. Žádný LISP, žádný Smalltalk. Stejně jako po C a C++ přišla Java.Jen mi přijde, že Java je glorifikovaný pluh. Se spoustou výhod, ale ne konec cesty...a zatímco s tím pluhem by při trošce praxe uměla dělat hromada lidí, přijde den, kdy to tak nepůjde. Informační explozi už asi nezastavíme.
Ono je taky docela obtížné porovnávat. V Javě se jiné než mostrózní projekty dělat nedají, ve Forthu je zase zvykem dělat všechno nemožně malé – 100 kB appka je obr, byť 10 kB CAD je úctyhodný výkon.
Srovnatelná aplikace v Pythonu bude menší a bude vzbuzovat méně bázně. Je to nevýhoda?
Řekl bych ale, že nejzrůdněji vypadá Hello World v COBOLu...
.
Verze 1.5 taky (naštěstí) zavádí spoustu "nečistých" věcí, jako procedury s více parametry, šablony a podobné věci, které ve svém důsledku umožňují jednodušší obcházení typového systému, takže se teď v Javě programuje o něco lépe
.
„je to snad jediný OOP jazyk, který je použitelný na velké projekty a snadno portovatelný na jiné platformy“Pokud jsi nikdy nepřišel do kontaktu a Franz Allegro Common Lispem ani Cincom Smalltalkem, pak na takovýhle názor máš samozřejmě právo.
Prakticky na jakoukoli rozumnou aplikaci se dá najít lepší nástroj než Java, ty nerozumné jim s radostí přenechám.
ale nevím jak to je s gui, protože s tím jsem ještě nic nepsal...
S tím, že si asi udělám minikompilátorek na SSE operace nad velkými datasety, zjistil jsem, že nejsem sám, komu by rychlá numerika v Ruby prospěla. A potřebuju si ošoupat assemblerové ostruhy.
(Momentálně nepotřebuju žádný zázrak, jde jen o obyčejný problém zhruba třiceti těles...
)
Ale jo, Java všem těmhle věcem perfektně vyhovuje, já k ní akorát nevzhlížím s moc velkou radostí vzhledem k nechutně primitivnímu a rigidnímu jazyku, na úrovni koncepce a jazyka jako takového. Knihovny a runtime (runtime zčásti) beru.
S tím, že si asi udělám minikompilátorek na SSE operace nad velkými datasety...
Jak jsou na tom současné kompilátory v použití "vektorových" instukcí? Občas mám pocit, že se kompiluje do z86 kódu bez nějakých dalších instrukčních sad.
S těma se pracuje přímo nádherně... a co sem tak viděl jsou mezi vědci docela oblíbené
Protože tak rychlý, jak by to mohlo být, to asi nebude. Pokud to nenakódili nějak opravdu pekelně, z čehož je nepodezřívám. Mám dojem, že to je jen Cčko. Jinak ten projekt je samozřejmě super.
Rozhodně lepší než gigabajtový Matlab za neskutečný prachy.
Půjdu se na Python+SciPy mrknout. Potřebuju udělat nějaké ty simulace a buď mi to pomůže, nebo mě to aspoň nějak obohatí.
Stejně si myslím, že by bylo užitečné mít nějaký společný, vysoce výkonný kernel s vazbami do obou jazyků, využívající paralelní jednotky. Sice jsem nedělal podrobnější průzkum, ale pochybuju, že něco takového existuje. Většina free věcí je v přenositelném Cčku. Na tom, samozřejmě není nic špatného, tedy s výjimkou matematického výkonu…
. To jsem zvědav, co se dozvím
.
Jen tu poukazuju na to, že nejen Java je dobře multiplatformní (jak si tu pokud se nepletu někde tvrdil). A Python má navíc oproti Javě přímo překrásnou syntaxi
Není nad dynamické jazyky
Koneckonců je, ehm, veřejným tajemstvím, že Java obšlehla runtime od Selfu a Anamorphic Strongtalku…
A tím chci právě říct, že Java není žádný superpřenositelný zázrak, ale je na tom stejně jako všichni ostaní.
ale je na tom stejně jako všichni ostaní.
Mno s tím nesouhlasím, ale to by bylo na dlouhou diskusi. Psal jsem i v C a skutečně přenostilelné programy (chytnu kód a přeložím ho jinde bez jakékoliv úpravy) byli max. typu hello world.
(teď samozřejmě přeháním)
. Je fakt, že výkonově bude Javě soupeřem Lisp, OCaml a Haskelem si nejsem jist. Python, Perl a ostatní pravděpodobně ne.
Jinak, malé porovnání - Java je dostupná pro Windows, Linux, Solaris na Sparcu i na x86. Common Lisp - vedle zdrojových kódů jsou dostupné binárky pro Windows (musí se pohledat na sf.net, nevím, proč to nemají na hlavní stránce), Linux, Solaris, AIX, porty pro xBSD a Darwina a balíky pro Fink a Cygwin (nebudu zlý a nebudu počítat všechny platformy, na kterých Lisp fungoval
).
Jinak, ohledně srovnání výkonu Lispu a Javy jsem našel v google cache, mám i originální pdf. Něco je i na openmap.bbn.com
BTW: neber to jako přemlouvání k Lispu, z hlediska toho, co jsem chtěl především napsat (webové aplikace) je hádka Lisp vs Java vcelku OT.
Jenom se snažím ukázat javistům, že existují jazyky, které existují pro více platforem, než jejich Java. Ta je multiplatformní jenom tak, jak Sun dovolí, ostatní jsou na tom lépe.
Mimochodem, budu za kacíře, ale na numeriku je podle mě pořád nejlepší některá z moderních inkarnací Fortranu…
(Hádám, že Heron potřebuje dělat „sájentifikl kompjůtešn“, ale s jistotou to vědět nemůžu.
)
Hádám, že Heron potřebuje dělat „sájentifikl kompjůtešn“, ale s jistotou to vědět nemůžu.
Vyhráls 
Mimochodem, budu za kacíře, ale na numeriku je podle mě pořád nejlepší některá z moderních inkarnací Fortranu…
Asi jo. Jednou jsem přepisoval kód z Fortranu do C a říkal jsem si, jestli by nebylo lepší se naučit Fortran a zbytek programu dopsat v něm nebo z toho udělat knihovnu a tu přiliknovat k tomu Céčkovského programu. Jednalo se o nějaké dobře optimalizované FFT (optimalizované na daný problém).
Jinak, ohledně srovnání výkonu Lispu a Javy jsem našel v google cache, mám i originální pdf. Něco je i na openmap.bbn.comNěco novějšího by nebylo? Za těch 10 let (a zvlášť za posledních 5 let) udělal vývoj virtuálních stroju (pro všechny jazyky) obrovské pokroky. Navíc skutečně, programy hotové za 8 hodin? To je úplný nesmysl na to používat Javu. Java má (jak jsem vlastně již psal) smysl, když je plánovaný čas v řádu měsíců a let, počítá se s fluktuací lidí a hlavně: počítají se peníze.
BTW: neber to jako přemlouvání k Lispu, z hlediska toho, co jsem chtěl především napsat (webové aplikace) je hádka Lisp vs Java vcelku OT.Hádka LISP vs. Java je jako hádka Harley vs. Škoda.
Jinak spousta lidí si myslí, že to, co udělali s Lispem (třeba Orbitz), by v jiném jazyku prostě dřív nestihli. (Třeba zrovna autoři Orbitzu tvrdí, že při přepisu částí kódu do C++ se jim kód expandoval zhruba 10x.)
Něco novějšího by nebylo? Za těch 10 let (a zvlášť za posledních 5 let) udělal vývoj virtuálních stroju (pro všechny jazyky) obrovské pokroky.Nevím, zase tolik se Lispem nezabývám. Uznávám, že toho víc zvládnu v Javě (se kterou dělám v denně), než v Lispu
.
Navíc skutečně, programy hotové za 8 hodin? To je úplný nesmysl na to používat Javu. Java má (jak jsem vlastně již psal) smysl, když je plánovaný čas v řádu měsíců a let, počítá se s fluktuací lidí a hlavně: počítají se peníze.No, kdo by zaplatil test, kde budou programátoři psát půl roku nějaký projekt? Navíc v několika jazycích? A ještě tak, aby se zjistilo, že ten jeho jazyk zas tak za moc nestojí?
Že by zákazníci? Třeba jenom primitivní požadavek: dokud uživatel nevyplní jméno a heslo, musí být tlačítko k odeslání zakázané (disabled). A hned je tam javascript. A tohle je velmi jednoduchý příklad.Btw javascript: co nutí programátory webaplikací programovat něco v JS?
Někdo manažerům ukázal, že s webem se dá docela kouzlit a oni chtějí víc. Najdou se firmy, které na tuto poptávku zareagují. Konkurence nemůže zůstat pozadu (z čistě existenčních důvodů), a tak se tvoří čím dál složitější weby.
</reklama>
Konecne zmenili licencni problem, pred tim to bylo nechutne drahe