Byla vydána verze 0.2.0 v Rustu napsaného frameworku Pingora pro vytváření rychlých, spolehlivých a programovatelných síťových systémů. Společnost Cloudflare jej letos v únoru uvolnila pod licencí Apache 2.0.
Open source RDP (Remote Desktop Protocol) server xrdp (Wikipedie) byl vydán ve verzi 0.10.0. Z novinek je vypíchnuta podpora GFX (Graphic Pipeline Extension). Nová větev řeší také několik bezpečnostních chyb.
Rocky Linux byl vydán v nové stabilní verzi 9.4. Přehled novinek v poznámkách k vydání.
Dellu byla odcizena databáze zákazníků (jméno, adresa, seznam zakoupených produktů) [Customer Care, Bleeping Computer].
V lednu byl otevřen editor kódů Zed od autorů editoru Atom a Tree-sitter. Tenkrát běžel pouze na macOS. Byl napevno svázán s Metalem. Situace se ale postupně mění. V aktuálním příspěvku Kdy Zed na Linuxu? na blogu Zedu vývojáři popisují aktuální stav. Blíží se alfa verze.
O víkendu 11. a 12. května lze navštívit Maker Faire Prague, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.
Byl vydán Fedora Asahi Remix 40, tj. linuxová distribuce pro Apple Silicon vycházející z Fedora Linuxu 40.
Představena byla služba Raspberry Pi Connect usnadňující vzdálený grafický přístup k vašim Raspberry Pi z webového prohlížeče. Odkudkoli. Zdarma. Zatím v beta verzi. Detaily v dokumentaci.
Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.
Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).
Brouzdal jsem na disku a narazil na jeden svůj starý projekt. Něco přes 10k řádek v C++ a něco málo v Object Pascalu.
Jako adolescent jsem C++ doslova miloval. Tehdy jsem si to užíval, mohl jsem dělat OOP kouzla, přetěžovat operátory a třeba i použít virtuální vícenásobnou dědičnost. A přitom dělat ďábelské nízkoúrovňové kousky. Třeba jsem si udělal lehkotonážní skoroimplementaci COM, abych se vyhnul práci s windows registry. Prostě se nějak posílal ukazatel na tabulku virtuálních metod, detaily jsem dávno zapomněl. Protože klientská aplikace nemohla uvolnit objekt, který získala z DLL knihovny (každý modul má vlastní heap), musela se zavolat metoda Delete
, kterou objekt spáchal elegantní sebevraždu.
void __stdcall xcfgM::Delete() { delete this; }
Používal jsem taky jednu krásnou fintu, kterou bych se ale chlubit neměl. Někde jsem potřeboval, aby funkce vracela celé číslo s nějakým chybovým kódem. Nechtělo se mi deklarovat k těmto chybovým kódům konstanty (např. const int ERROR_OPENING = 5;
), tak jsem používal čtyřznakové identifikátory (uzavřené do apostrofů), které šly přiřadit do 32bitového integeru.
int result = 'cnof'; // cannot open file
Problém C++ byl, že všelijakým triků se člověk nevyhnul i kdyby chtěl. Třeba přinutit k bezešvé spolupráci moduly překládané různými překladači vyžadovalo občas invenci.
/* Some compilers tried to set enum types size to 1 byte, this constant _ is defined to make them set this size to 4 bytes. */ const int _32_BIT_ALIGMENT = 2147483647; // = 2**31-1 //////////////////////////////////////////////////////////////////////// enum TInitState { istInited = 0, istNotInited = 1, istDefault = 2, istNone = 3, ist_32_bit_aligment = _32_BIT_ALIGMENT };
Potom jsem ale z C++ vyrostl. Oblíbil jsem si bezpečné, silně typované jazyky jako Ada, Java a C#. To jsou nástroje pro zralé muže.
Samozřejmě vím, že na spoustu projektů je C++ z různých důvodů nejlepší volba. Tak ať mě tu někdo nepranýřuje, že firewall se v Javě píše blbě, já to vím. (Ale v Adě už by to šlo
A z čeho jste vyrostli vy?
Tiskni Sdílej: