Jestli Python bude takhle neustále zrychlovat, tak můžou všechny ty céčka, rusty, goučka jít do kopru. Sorry jako :-D
2. 10. 2023, 19:28 editováno autorem komentáře
Také by mě to zajímalo, jakou architekturu zvolil a kam se dostal.
Známý, který se živí 3D modely pro AAAčkové hry, když si chtěl udělat něco svého, tak sáhl po Godot Engine a Pythonu, ale myslím, že to zamrzlo na nedostatku času.
Python je v různých rolích použit například ve hrách:
Civilizace IV, Battlefield 2, Sims 4, World of Tanks, EVE Online, Mount & Blade, ...
Buď má roli v ekosystému hry, například pro tvorbu modů, editor map, správa dat o hráčích, nebo jako binding nad herním enginem.
EVE je v tomhle směru rozhodně zajímavá. Používali stackless Python.
https://news.ycombinator.com/item?id=31298679
EVE je obdivuhodný projekt, který prošlapával cestičky neznámým prostředím.
Jeho problém vidím původním návrhu, který nepočítal s masivní decentralizací, která by umožnila plynulé škálování.
Tehdá, před 20 lety, byl výběr řešení pro monolit aplikaci dost omezený, a z toho co se nabízelo vybrali právě Stackless Python.
Osobně si myslím, že v případě EVE by nepomohlo ani kdyby si na to nechali postavit vlastní ASIC a programovali to v assembleru.
Ale kdo to mohl tušit, jaký úspěch tento MMORPG projekt bude mít.
To, že ta možnost existuje, neznamená, že se využívá. Tj. z frekvence zpráviček na Rootu nejde odvodit, zda se opravdu tak zrychluje jen Python nebo i jiné jazyky/prostředí.
Mimochodem, ono je úplně jedno, jak rychlý ten interpret Pythonu bude, stejně se vždycky najde někdo, kdo napíše komentář, že je to pomalé, protože je to interpretované. Pravidelně se to objevuje u JavaScriptu, Javy, Pythonu i dalších jazyků.
Python je výkonnostně pořád hodně pozadu. Jiné jazyky (např. js, php, ruby) šly výkonově dopředu a python za více než 10 let nic. Z dříve rychlého jazyka (výrazně rychlejšího, než třeba php) byl nedávno suverénně nejpomalejší. Je dobré, že se konečně někdo probudil, ale ta ztráta tam ještě je a golang a rust jsou opravdu v nedohlednu.
3. 10. 2023, 09:53 editováno autorem komentáře
To není měřítko. Popularita za dva roky je důsledek dnešních rozhodnutí a pokud začne klesat, tak už bude pozdě to zvrátit, protože uživatelé našli lepší cestu a návrat k Pythonu by viděli jako krok zpět. Je to vidět na Ruby. Jeden čas velmi populární jazyk díky Ruby on Rails a dneska po něm neštěkne ani pes.
Nic netrvá věčně. Klidně se může stát, že Python něco z jeho pozice vyšoupne, ale nebude to jistě ani PHP a ani Ruby, pravděpodobně ani JS/TS a ani Go. Pokud ale rychlost běhu nebyla zásadní problém před 2 roky, nebude ani za 2 roky. Nesesadila ho ani Julia a IMO se to nepovede ani Mojo - to se ale bude snažit být s Pythonem 100% kompatibilní, takže co? Python bude pořád ve hře.
Problém Julie podle mě v rozšířenosti a rychlosti vývoje v obou jazycích. Pokud chci něco jednoduchého, tak Pythonových implementací najdu desítky a u části kódu je úplně jedno jak je rychlý, protože je na jedno použití nebo řeší jednoduché problémy (Přeparsuj log s ladícími výstupy z C++, udělej grafy/spočti statistiky, porovnej s referencí, vygeneruj souhrn do HTML a PNG obrázků). U Julie hotová řešení dílčích problémů, které stačí přiohnout najdu s menší pravděpodobností.
Jediné, kde mi Julia dává smysl jsou simulace, fyzikální výpočty a zpracování obrazu, pokud už to nechci napsat rovnou v C++ a zároveň to neřeší modul v Pythonu. Což jsou dost okrajové případy.
To, že je Babiš populární ještě neznamená, že je nejlepší a vice versa :-)
Gartnerovci na tu popularitu mají takový graf, do kterého pásne většina technologií. Hype - hluboký pokles - pomalý růst - pomalý pokles.
A s tím hodnocením RoR je to přehnané. V mé bublině to jede jako nikdy před tím (včetně aktuálních témat jako je AI, grr zkřížily se mi prsty). Podle mých zkušeností neexistuje aktuálně levnější technologie na výrobu obecných webových aplikací jak RoR.
Jeho poplarita nie z jeho vyvoja. Ale z toho hypu okolo umelej inteligencie. Kde sice kniznice pre AI v nom napisane niesu (su v C/C++) ale ako jediny dalsi wraper maju python (sice by mohol byt aj v Ruste, Jave, C#,... ale ostatne kniznice mau Python tak Python). A python vdaka tomu, ze je to lepsi bash dokazu zvladnut aj zacinajuci programatori, ktory tiez naskocili na tento hype.
Ked som bol na strednej rovnake to bolo s PHP, len ten hype bol okolo Web 2.0.
3. 10. 2023, 12:44 editováno autorem komentáře
Ano, i Haskell, Rust nebo C++ lze rozjet v rámci Jupyteru, ale nevím, kolik lidí to reálně používá. Předpokládám, že latence a další věci nebudou zdaleka tak příjemné jako u Pythonu. Faktem je, že jsem si zvyknul dělat spíš skripty než notebooky v Jupyteru, ale na prezentaci/výuku je Jupyter nebo IPython s vymakanou možností vkládání dost fajn.
A hlavně, v Pythonu udělám pip install, ipython, import a hned můžu udělat jedno konkrétní volání, které zrovna potřebuju. V mnoha jiných jazycích je to všechno daleko těžkopádnější.
Tak to mě samotného překvapilo. Nedávno jsem dělal takovou blbinku – procházení stromu a k tomu nějaké string operace. Primárně v ruby (3.2.2+jit), ale chtěl jsem demonstrovat synovi rychlost v Cčku a nakonec došlo i na python (3.11.5). A tam jsem se zasekl, protože výsledku jsem nemohl uvěřit, až jsem to na druhý den vzal do práce na konzultaci, kde mi to potvrdili. Ten rozdíl byl násobný v neprospěch pythonu.
Na druhou stranu rychlost běhu není vše a pokud by to mělo být to jedinné, na čem stojí popularita, tak to za moc stát nebude (IMHO).