KDE slaví 30 let. Přesně před 30 lety, 14. října 1996, poslal Matthias Ettrich do diskusní skupiny comp.os.linux.misc zprávu, která započala historii projektu KDE. Důležité milníky jsou zobrazeny na časové ose.
Byl vydán Mozilla Firefox 158.0. Stejně jako Chrome 155 s podporou JPEG XL (test). Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 158 bude brzy k dispozici také na Flathubu a Snapcraftu.
Svobodný kancelářský balík ONLYOFFICE (Wikipedie) byl vydán ve verzi 10.0. Jak online Docs, tak i offline Desktop Editors. Přehled novinek také na YouTube.
Mozilla představuje Firefox Enterprise určený jako podnikový prohlížeč pro organizace s přísnými požadavky na bezpečnost, správu a dodržování předpisů. S profesionální podporou. Dostupný je zatím ve Francii, Německu, Rakousku a Švýcarsku.
Kybernetický útok zasáhl nejméně 150 supermarketů Intermarché a několik prodejen řetězců Leclerc a Coopérative U. Chladicí jednotky napadených obchodních domů byly nastaveny na nepřetržité odmrazování a teplota v nich mnohdy vystouala až nad 50°C. Škody napáchané na chlazeném a mraženém zboží budou patrně dosahovat miliónů eur.
… více »Stát Kalifornie zažaloval výrobce 3D tiskových filamentů Polymaker. Vrchní soud San Diego County tvrdí, že firma propagací svých výrobků mezi příznivci 3D tištěných zbraní podporovala výrobu takzvaných 'ghost guns' (DIY zbraní) a že její PLA filament pro 3D tiskárny lze za těchto okolností považovat za součást určenou k výrobě střelné zbraně. Žaloba požaduje mimo jiné finanční sankce a soudní zákaz činnosti, Polymaker se hájí tím, že filament je běžný a sám o sobě legální produkt. Celý text žaloby (PDF na Google Drive).
V červnu byla představena aplikace Myna pro převod řeči na text v prostředí desktopu Ubuntu. Včera byla Myna zpřístupněna širší komunitě Ubuntu formou technologické ukázky dostupné v Ubuntu 24.04 LTS, Ubuntu 26.04 LTS a Ubuntu 26.10 s GNOME na Waylandu.
Ubuntu 27.04 bude Tenacious T-Rex.
Byla vydána nová verze 2026.4.0 "Never-slop" svobodného softwaru ScummVM (Wikipedie) umožňujícího bezproblémový běh mnoha klasických adventur na zařízeních, pro které nebyly nikdy určeny. Přehled novinek v poznámkách k vydání a na GitHubu. ScummVM oslavil 25 let. Verze 0.0.1 vyšla 8. října 2001.
Kanadský vývojář Anthony Sistilli vytvořil ironický DIY projekt parodující kamerové systémy Flock, s cílem názorně demonstrovat rizika masového sledování jaké provozují tyto komerční ALPR systémy. Z levné IP kamery a vlastního ML softwaru (napsaného s pomocí SI circa za 20 minut, kód se mi bohužel nepodařilo dohledat) běžícího v laptopu sestavil jednoduchý systém, který detekuje výhradně policejní vozidla, zaznamenává jejich SPZ a
… více »Předem bych upozornil, že většina zde popisovaných věcí jsou rozpracované plány. Program má za sebou půl roku vývoje a právě se dostal do alpha fáze. Relativně dokončené jsou části týkající se map a datových zdrojů, ale 80 % API a implementací pořád chybí. Tento článek vznikl hlavně z potřeby projekt trochu zpropagovat a naverbovat další vývojáře a testery. Ze stránek projektu lze stáhnout zdrojové kódy a binární distribuci.
Možná se zeptáte, proč jsem se nepřidal k existujícímu projektu a místo toho začínám "zase další program". Zkoumal jsem několik programů a nikde jsem nebyl spokojen. CdC má srozumitelný kód, ale je v podstatě neudržovatelný. KStars jsou dobře čitelné a zčásti zdokumentované. Jejich vývoj se také docela hýbe a rozhodně je na co se těšit. V KDE 4.0 a 4.1 lze čekat rychlejší indexování oblohy, podporu větších katalogů (konečně) a lepší ovládání dalekohledů. KStars mají ale jiné zaměření, je to hlavně výukový nástroj. Z těchto důvodů jsem tedy začal nový program. OpenCoeli ale nevznikl ve vzduchoprázdnu, části kódu pochází z CdC, KStars a specializovaných astronomických programů.
Hlavní rozdíl oproti ostatním programům je pod povrchem. OpenCoeli je psán v Javě s použitím jejích best practises. Jednotlivé části mají interface, abstraktní pomocné třídy a různé implementace. Vše je dobře zdokumentované s odkazy na podrobnější literaturu. Samozřejmě nechybí ani unit a integrační testy. Program je psán jako několik volně spojených knihoven. Existuje zde hromada extension pointů, listenerů, post/pre procesorů a filtrů. Celé je to pak spojeno XML konfiguračními soubory. Pokud znáte vnitřnosti Spring frameworku nebo Eclipse API, uděláte si dobrou představu.
Základním cílem je vytvořit planetárium rozšiřitelné pomocí pluginů. Pokud se to povede, může to dát astronomickému softwaru zcela nový směr. Vzorem pro mě je Eclipse a "ekosystém" jejích pluginů. Pak mám hromadu plánů, například hlasové ovládání dalekohledu. Zde ale popíšu jen dvě části, které už jsou rozpracované a polofunkční.
Název OpenCoeli nebyl vybrán náhodně. Antonín Bečvář vydal v padesátých letech několik ručně kreslených atlasů s názvem Coeli. Ty v podstatě znamenaly začátek moderní astronomické kartografie a do osmdesátých let neměly konkurenci. Před několika lety bylo vydáno pokračování Coeli Novus 2000.0 a na přednášce jeho autorů vznikla myšlenka napsat OpenCoeli.
Takže co je špatně se současnými atlasy? Výstupy z počítače jsou nepoužitelné pro tisk. Jednotlivé popisky se překrývají, na některých místech objekty splývají. Navíc rastrová grafika kvalitě také příliš nepřidá. Mapu je tak před tiskem nutné ručně upravovat, ještě složitější je tvorba vícestupňových hledacích map.
OpenCoeli by tedy mělo tvořit mapy přímo použitelné pro tisk. K vykreslování se používá knihovna Java2D. Má velmi kvalitní antialiasing, například zobrazí i hvězdy s velikostí kotoučku 0.1 pixelu. Díky hardwarové akceleraci bez problému zobrazí najednou i desetitisíce objektů. Mapy jsou kompletně vektorové a lze je renderovat prakticky na jakékoliv zařízení, včetně obrazovky, tiskárny a PDF a SVG souborů.
O dobré zobrazení se stará celá řada algoritmů. Překrývající popisky může vyřešit algoritmus pro polohování. Byl už několikrát implementován v GIS programech, takže je z čeho vybírat. Překrývání objektů lze vyřešit vhodně zvoleným z-order, objekty se prostě seřadí podle velikosti. Překrývání lze také vyřešit částečnou průhledností. V OpenCoeli se používají obě možnosti.
Dalším problémem je velikost kotoučků hvězd. Na mapě může být i několik tisíc hvězd s rozsahem 15 magnitud a je třeba zajistit, aby navzájem nesplynuly do jednolité bílé plochy. Velikost kotoučku by tedy měla být závislá na MHV a použitém zvětšení. V současnosti se používá logaritmická škála. V budoucnu se přejde na složitější algoritmus pracující s počtem hvězd a celkovou plochou zabranou hvězdnými kotoučky.
OpenCoeli používá abstrakci nad Java2D, podporuje 50 různých projekcí, má vlastní systém souřadnic... Celý popis této části je mimo rozsah článku, podrobnější info rád poskytnu mailem nebo ze zdrojových kódu.
Hlavní úložiště dat by měla být SQL databáze. Datový model je proto navržen co nejvíce konzistentně, vše používá stejné jednotky, názvy sloupců a indexy. Samozřejmě lze data a strukturu ručně upravovat. Výhoda je také pro ostatní aplikace, získají přístup k hromadě astronomických dat bez nutnosti parsovat datové soubory.
Vzorem byla terabytová astronomická databáze Skyserver. Můj projekt je trochu menší, v plné konfiguraci bude databáze obsahovat 1 miliardu hvězd + několik set milionů objektů a její velikost dosáhne stovek gigabajtů. Manipulace s tímto monstrem není příliš praktická, a tak bude možné import omezit na jednotlivé části, například vybrané katalogy či souhvězdí. V základní verzi pak bude 35 milionů hvězd z GSC, 5 milionů objektů a velikost databáze okolo 5 gigabajtů.
OpenCoeli nepoužívá přímo SQL, ale mezivrstvu JPA (Java Persistence API). Díky tomu odpadá vytváření databázového schématu, to je generováno přímo z objektového modelu. Díky JPA lze do databáze uložit data z jakéhokoliv zdroje použitého v OpenCoeli, cachovaní výsledků z webových služeb se přímo nabízí. JPA také podporuje několik desítek databází, takže rozhodně nezůstane jen u integrované Derby.
Novinkou je způsob indexování oblohy. OpenCoeli využívá Hierarchical Triangular Mesh, to umožňuje rozdělit oblohu na očíslované trojuhelníhové oblasti. HTM znamená malou revoluci v astronomii, protože operace s plochami překládá na operace s čísly. Jednoduchým SQL selectem lze zjistit všechny objekty v určité vzdálenosti od objektu nebo v dané oblasti. Počítání zákrytů tím dostává zcela nový rozměr :-).
Klientská část OpenCoeli využívá Swing, Jide a Netbeans RCP. Díky tomu odpadá 80 % práce spojené s programováním desktopové aplikace. RCP například řeší lokalizaci, akce, obsluhu chyb, threading... Mattise a průvodci v Netbeans IDE pak práci ještě více zrychlují. Navíc knihovna Jide obsahuje spoustu komponent, které ve Swingu chybí. O toto část je tady velmi dobře postaráno.
V současné době má distribuční balík 25 megabajtů. Předpokládám, že finální 1.0 se rozroste až na 50 megabajtů. Data přitom zabírají jen pětinu, zbytek připadá na závislosti. Hlavní důvod je usnadnění vývoje, všechno je v jednom balíku a jsou přidávány i knihovny, které mohou být potenciálně užitečné. To by měla odstranit verze 1.1, kdy dojde k rozdělení projektu na více samostatných modulů. Základní distribuční balík by tak měl být okolo 10 megabajtů.
Další problém jsou paměťové nároky programu; hned po startu si řekne o 70 megabytů a alokovat 500 MB není velký problém. Java je v tom nevinně, program je ve fázi vývoje a tedy bez optimalizací. Dalším důvodem je pak cachovaní všeho možného. Největším jedlíkem paměti je integrovaná databáze, několikagigová DB prostě potřebuje aspoň 200 MB paměti na indexy.
Takže asi tak. Počkejte rok a uvidíte, co z toho vznikne. Pokud chcete projekt trochu urychlit, můžete se přidat. Stačí si projít zdrojové kódy a případně napsat email na [opencoeli zavinac gmail tecka com].
Kulová hvězdokupa M 13 s hvězdami do 19 magnitudy z katalogu USNOA
Souhvězdí Orion s hvězdami do 9 magnitud
Celá obloha s hvězdami do 9 magnitud
Nástroje: Tisk bez diskuse
Tiskni
Sdílej: