Byla vydána dubnová aktualizace aneb nová verze 1.89 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Vypíchnout lze, že v terminálu lze nově povolit vkládání kopírovaného textu stisknutím středního tlačítka myši. Ve verzi 1.89 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Proton, tj. fork Wine integrovaný v Steam Play a umožňující v Linuxu přímo ze Steamu hrát hry určené pouze pro Windows, byl vydán ve verzi 9.0-1 (𝕏). Přehled novinek se seznamem nově podporovaných her na GitHubu. Aktuální přehled her pro Windows běžících díky Protonu také na Linuxu na stránkách ProtonDB.
Byla vydána verze 1.78.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání na GitHubu. Vyzkoušet Rust lze například na stránce Rust by Example.
Služba Dropbox Sign (původně HelloSign) pro elektronické podepisování smluv byla hacknuta.
Byla vydána nová major verze 8.0 textového editoru GNU nano (Wikipedie). Podrobný přehled novinek a oprav v oznámení v diskusním listu info-nano nebo v souboru ChangeLog na Savannah. Volbou --modernbindings (-/) lze povolit "moderní" klávesové zkratky: ^C kopírování, ^V vložení, ^Z vrácení zpět, … Tato volba je aktivována také pokud binárka s nano nebo link na ni začíná písmenem "e".
Před 60 lety, 1. května 1964, byl představen programovací jazyk BASIC (Beginners' All-purpose Symbolic Instruction Code).
Byla vydána nová verze 12.0 minimalistické linuxové distribuce (JeOS, Just enough Operating System) pro Kodi (dříve XBMC) a multimediálního centra LibreELEC (Libre Embedded Linux Entertainment Center). Jedná se o fork linuxové distribuce OpenELEC (Open Embedded Linux Entertainment Center). LibreELEC 12.0 přichází s Kodi 21.0 "Omega".
Microsoft vydal novou velkou aktualizaci 2404.23 v září 2019 pod licencí SIL Open Font License (OFL) zveřejněné rodiny písma Cascadia Code pro zobrazování textu v emulátorech terminálu a vývojových prostředích.
OpenTofu, tj. svobodný a otevřený fork Terraformu vzniknuvší jako reakce na přelicencování Terraformu z MPL na BSL (Business Source License) společností HashiCorp, bylo vydáno ve verzi 1.7.0. Přehled novinek v aktualizované dokumentaci. Vypíchnout lze State encryption.
Spouštět webový prohlížeč jenom kvůli nákupu kávy? Nestačí ssh? Stačí: ssh terminal.shop (𝕏).
Miguel de Icaza přijel do Prahy z Mexika a já měl možnost s ním udělat rozhovor. Během snídaně jsem se dozvěděl spoustu šokujících odhalení a pohledů do zákulisí. No dobře, zas až tak strhující to není, ale pár zajímavých odpovědí ohledně "Mona" vám přinášíme v prvním díle.
Filip Vrlík: Na jaké projekty se teď v poslední době zaměřuješ nejvíce? Mohl bys nám je prosím představit?
Miguel de Icaza: Nyní nejvíce pracuji na projektu Mono, což je vývojářská platforma založená na .NET. Na této technologii je zajímavá její nezávislost na použitém jazyku. Mnoho lidí strávilo obrovské množství času nad tím, aby tato "virtual machine" byla dost dobrá.
Něco jako Java, ne?
Je to podobné Javě, ale zde je kladen velký důraz na podporu více jazyků. Například platforma Java neumí pořádně efektivně zvládnout jednu věc, a tou je podpora C a C++.
Motivací pro Mono je produktivita. V minulosti jsme vytvořili Evolution a OpenOffice.org pomocí C++. Spousta problémů, kterým programátoři čelí dodnes, vychází z toho, že C++ je nízko-úrovňový jazyk. Musíte si vytvořit vlastní správu paměti a tak dále. Také je spousta problémů s narušením paměti: uvolníte pointer dvakrát, použijete buffer, který používá někdo jiný nebo tak narušíte paměť, kterou používá někdo jiný.
Hledali jsme, Ximian hledal, platformu, která by se dala použít pro tvorbu velkých aplikací, jako je Evolution, v krátkém časovém úseku nebo s méně lidmi. Tedy buď tvořit rychle, nebo vytvořit více s větším týmem. Místo abychom teď Evolution vyvíjeli dva roky, zvládli bychom to za rok.
Podívali jsme se na Javu a C# a zdálo se, že C# zvládá to samé jako Java plus ještě něco navíc. Vždy když něco děláte, ať už je to cokoliv, tak je důležitý čas. Takže jsme to udělali takhle.
Jak tedy vidíte, Mono je technologie umožňující běh různých programů pro desktop. Já se nejvíce zajímám o Linux jako o desktop, v podstatě vyvíjím pouze pro desktop, ale Mono pokrývá všechny oblasti. Já stále pracuji se skupinou desktop. Teď jsme měli obrovskou konferenci v Německu, odtud jsem teď přijel. Oni nepíší přímo pro desktop, ale já jim poskytuji nástroje. Postavili jsme GTK#, což je toolkit pro tvorbu aplikací pro Linux. Tvoříme designérský nástroj. Poskytujeme lidem kvalitní vývojářské nástroje a dokumentaci. Totiž, spousta lidí si stěžuje, že otevřený software má příšernou dokumentaci. My děláme dokumentaci pro Mono, snažíme se dokumentovat všechno, takže lidé mají dobré dokumenty. Snažíme se také zaplňovat mezery v Linuxu, tvořit věci, které Linuxu chybí, aby byl úspěšným desktopem.
(Miguelovi zvoní alarm na mobilu)
Tak teď jsem měl vstávat
(Miguel se nás ptá na abclinuxu.cz a na situaci okolo Linuxu v ČR.)
Jedni z nejlepších programátorů, s jakými jsem měl možnost spolupracovat byli z České republiky. Dělal jsem s více takovýma. Já jsem z Mexika a... nebo jinak. Když se na situaci podívám z vnějšku, tak Češi jsou na open source scéně velmi aktivní, procentuálně dvakrát více přispívají a jsou velmi dobří. Možná je to díky systému vzdělání a školství.
Díky školství, eh, to si nemyslím . Ale každopádně moc díky. Tedy za ně samozřejmě :-)
Nějaké novinky okolo Mona, nějaké konkrétní úspěchy v poslední době?
Vypustili jsme Mono zhruba před rokem, asi před deseti měsíci. Dostává se do chvíle, kdy dospívá v solidní kód. Mysleli jsme, že 1.0 nebude použitelná, ale byla. Nebyla ale tak vybroušená jako je dnes. Vylepšujeme celkem dost, všechny detaily v Monu. Z používání máte dobrý pocit. To znamená, že je výkonnější. Pro výkonnost jsme toho v poslední době udělali dost. Práce, kterou jsme udělali, se bohužel neobjeví ve verzi 1.2, bude zahrnuta až v pozdější verzi. Jedná se totiž o opravdu velké změny v architektuře. No, nejde ani tak přímo o změny ale spíše o optimalizace; některé jsou velmi těžké a složité. Nebudeme tedy s to stihnout zářijový termín, jak jsme chtěli.
Lepší výkon, stabilita, to jsou přednosti, které si ale lidé neuvědomují. Poučili jsme se z dlouho běžících serverů a aplikací pro desktop jako je Beagle. Ty jsou stabilnější, než si lidé myslí. Máme tedy tři přednosti, ale lidi moc nezajímá, že je to rychlejší či stabilnější, na tom jim nezáleží. Ale přicházíme s novou GTK#, která podporuje ještě více věcí v GTK. Máme nový toolkit, jež umí wrapovat jakoukoliv GObject knihovnu napsanou v C. Můžeme ji potom přímo použít z C#. Vyvinuli jsme propojení (bindings) do Evolution, takže jej teď můžete naskriptovat pomocí C#. Řekl jsem C#, ale může to být jakýkoliv jazyk podporovaný .NET (Python, Visual Basic, JavaScript, ...). Takže můžete mít Evolution plně pod kontrolou, naskriptovat jej, používat všechny mailové vlastnosti.
Vidím, že obecně preferuješ C#.
Ano. Já používám C#, ale další v týmu dávají přednost Pythonu nebo jiným. C# je nejlehčí z nich, protože C# v podstatě nemá run-time. C# komunikuje přímo s knihovnou, odpadá tedy prodleva oproti jazykům typu Python nebo Java, které navíc potřebují run-time. Myslím si tedy, že C# je nejlehčí, ale to neznamená, že na tyto vlastnosti musíte hledět při výběru jazyka. Já vždycky říkám, že C# je prostě jazyk, který znám, a tak ho používám.
Někteří lidé mají podivný pocit z Mona - vidí Microsoft, jeho technologie zatažené do Unixu, problémy s autorskými právy...
(Miguel se dáví houskou)
Ne, ne, ne! Nejsou žádné problémy s autorskými právy.
Dobře, tak tedy technologie Microsoft, jeho technologie a tak dále. Ale na druhé straně je dobré mít zadní vrátka pro případ úspěšného rozšíření .NET. Co na to říkáš?
No, já právě pracuji na úspěšném rozšíření .NET. Například, během zhruba devíti měsíců od vypuštění Mona bylo vytvořeno přes 40 desktopových aplikací. Minimálně jsme tedy dosáhli toho, aby programátoři začali psát aplikace pro desktop. Toto bylo v minulosti těžké.
Co by nám třeba přineslo přepsání aplikace jako je Gimp do Mona? Vždyť to bude jen pomalejší, ne?
Dvě věci. Za prvé si myslím, že bychom neměli přepisovat software, protože pokaždé když si řeknete, že přepíšete nějaký software, tak se pouštíte do mnohaletého projektu. Gimp má kořeny někde kolem roku 1996 a už jednou přepsán byl. Tuším, že to bylo v roce 1997, kdy byl přepsán z Motif do GTK. Ti samí lidé totiž GTK napsali. Mluvíme tedy o aplikaci, která má za sebou osm let vývoje. Nevěřím, že bychom měli investovat čas do přepisování kódu.
Když bychom potřebovali rozšířit tuto aplikaci lepším programovacím jazykem, můj návrh by zněl - začleňme (embed) Mono. Mono je začlenitelné jako Python, můžete spojit aplikaci s Monem a rozšířit ji v Monu, ale nemusíte přepisovat původní kód. To by bylo na debug milionů řádků. Takže má rada zní - hotovou věc nechte být a jen ji rozšiřujte. Můžete třeba napsat nové vlastnosti v C#, ale zachováte existující kód. Myslím, že toto je cesta k úspěchu. Opravdu odrazuji lidi od přepisování. Byl návrh na přepsání Evolution, ale já řekl, že to nemá smysl, použijme bindings. Kód je funkční, odladěný, používá se, už je nasazený. Nemá význam jej roky přepisovat. Dělali bychom znovu stejné chyby, znovu jej odlaďovali a tak. Jsme jen lidé. Když už něco začínáte, tak to napište v Monu, a pokud už chcete rozšiřovat tak v Monu.
Druhá část rozhovoru, která vyjde za týden, se zaměřuje na GNOME.
Nástroje: Tisk bez diskuse
Tiskni Sdílej:
Jinak mohu říct, že udělat formulář ve Visual Studiu, zkompilovat ho a tento mezikód spustit na linuxu je velice zajímavá věc. Takže pro Vaše info, aplikace napsaná čístě v C# půjde spustit v linuxu bez dalších kompilací.Mozno sa mylim (skoro nic o tom neviem), ale niekde som cital, ze to zakazuje licencia k Visual Studiu.
<p><i>That's my alarm. I was gonna wake up now, imagine that.</p>A zbytek stránky je pak kurzívou.
Tyhle vícestránkové články jsou novinka? Ještě jsem to tu neviděl.Není to novinka. Jen není tak často příležitost tuto funkci využít. Jestli si dobře vzpomínám, tak naposledy jsme ji použili v článku Co to je ABC Linux.