[python] Python na frontendu, Brython

Honza Javorek mail na honzajavorek.cz
Středa Duben 20 11:18:48 CEST 2016


Ja fakt myslim, ze ten web assembly by mohl neco zmenit, ale uvidime. Zase
ted na tom FE vidis, co se stane, kdyz lidi nedostanou na vyber. JS svet
jde strasne rychle kupredu, protoze lidi neprepisujou veci z Ruby do
Pythonu a z Pythonu do Javy a naopak jenom proto, ze pouzivaj jinej jazyk.
Vzdycky jsem si rikal jakej to ma smysl, kdyz nekdo napise Ruby knihovnu a
nekomu jinymu se libi, ale nepouziva Ruby, tak ji naportuje jinam. Na webu
to vsichni proste napisou v JS a jede se dal. Nekomu se to nelibi, napise
to znova, ale zase v JS, takze nejde jen o prepis, ale je tam pridana
nejaka inovace nebo jinej pristup. Netristi se lidska sila a nevynaleza se
znovu a znovu kolo jenom v jiny barve, vynaleza se kolo novych tvaru a
vlastnosti.

Na druhou stranu je to neprijemny z toho duvodu, ze JS se nehodi na vsechno
a jakmile vytahnes hlavu z pr... z webu, tak to zacina skripat. JS na
desktopove aplikace? Jde to, ale je to celkem pomaly. JS na tamto, na
tohle? Jde to, ale... No a na techto oborovych hranicich je to zase velka
nevyhoda, ze na webu existuje jenom JS. Lidi co pisou Python, protoze
delaji nejaky serverovy veci, vedecky vypocty nebo skripty do Blenderu, a
chteji k tomu udelat nejakou blbinku na webu, se musi naucit JS jen kvuli
tomu, ze nemaji na vyber. Pritom kdyby mohli stejne dobre napsat Python
nebo jinej jazyk co zrovna potrebujou, tak ten mezioborovy prekryv muze byt
mnohem vetsi.

Takze to, ze je JS na webu hegemon ma vyhody i nevyhody. Z globalniho
hlediska se mi libi, ze JS dava lidem "laser focus" a muzou se soustredit
na reseni problemu a inovaci (otazka je, zda to tak doopravdy je?). Na
druhou stranu se mi nelibi presne to, ze clovek nema na vyber. Jsem
zastancem toho, ze na urcity problem by se mela pouzit adekvatni
technologie. Taky pro maly tymy ktery nejedou na microservices (a i pro
vetsi tymy co na nich jedou) nemusi davat smysl byt polyglotni a psat to v
ruznejch jazycich, protoze pak ti klesa schopnost udrzovat to a posouvat si
mezi sebou vedomosti. K cemu ti je kus v super jazyku ktery se na to hodi,
kdyz clovek co ho napsal odesel z firmy a nikdo jiny to moc neumi. Udrzovat
svuj stack na jednom jazyku dava smysl. A kdyz 80 % tvojeho byznysu dava
smysl udelat v Pythonu, treba kvuli numpy a pandas atd., tak nechces mit 20
% v jinem jazyce. Je to problem. A jednoduche reseni zatim neexistuje.

Jinak nejde jen o web. Podobnou situaci mas s mobilnima appkama. Na
Androidu vstala z mrtvych Java, na iOS mas Obj-C nebo Swift. Nejaky reseni
existujou (HTML aplikace, ktery jsou na prd, React Native v JS, kterej snad
nejak funguje a je to horka novinka, Kivy ktery nevim jak to vlastne dela,
ze to funguje, ale je to taky spis asi okrajova vec?), ale pokud do toho
chces investovat ve vsi vaznosti, stejne to outsourcujes do nejaky firmy,
ktera ten Swift nebo Javu psat umi. Ale tim, ze existuji aspon castecna
reseni, ktera nekdo aspon trochu pouziva, tak to neni uz uplne uzavreny jak
to bylo a pro nejakyho vedce co by si chtel ke svemu pandas skriptu udelat
mobilni appku v pythonu to reseni existuje, treba to Kivy. Na webu tohle
zatim porad neni, Brython atd. jsou uplne experimentalni haluze, ktery
nikdy nepreskocily ani na okraj mainstreamu.

Fuj to jsem se zase rozepsal. Co si o tom myslite, krome toho, ze jsem
blbec co to mel od zacatku psat s diakritikou?

Honza


2016-04-19 14:28 GMT+02:00 Ales Zoulek <ales.zoulek na gmail.com>:

> Myslim, ze Honzuv bod 3. v zasade vystihuje podstatu celeho problemu. Na
> jednu stranu se asi neni treba tvarit, ze jeden jazyk je vhodny vsude. Na
> druhou fakt, ze ve vetsine prostredi ma clovek vyber z nekolika vhodnych
> moznosti, na FE to uplne neplati neni vubec zdravej.
> A tak vznikaj vsechny mozny coffeescript, clojurescripty, brythony. A jak
> bych si pral rozumnou alternativu pro JS a muj vnitrni python-geek by
> fandil i brythonu, tak nejak mi prijdou vsechny vlastne trosku "usmudlany".
> Jsou to hezky a cool veci, ale ...
>
> On Tue, Apr 19, 2016 at 11:35 AM Honza Javorek <mail na honzajavorek.cz>
> wrote:
>
>> Ahoj!
>>
>> Vidíš, a já bych se o tom klidně rád pobavil, v tomhle směru se snažím
>> spíš naslouchat, než někomu něco vnucovat. Jazyky jsou jen nástroje. Sám JS
>> rád nemám, takže se jej zastávám nerad a pohledy jiných na totéž mě celkem
>> zajímají. Proč myslíš, že nemá smysl o tom diskutovat nebo se o něco
>> snažit? Ale tak zdravím aspoň zpátky! :-)
>>
>> Honza
>>
>> 2016-04-19 0:20 GMT+02:00 Jaroslav Vysoký <vysoky na borka.cz>:
>>
>>> Ahoj Honzo!
>>>
>>> Několikrát jsem založil koncept odpovědi, a několikrát jsem ho zase
>>> zahodil s tím, že vlastně asi nemá cenu o tom nejen diskutovat, ale možná
>>> se ani o něco snažit...
>>>
>>> Tak tě aspoň touto cestou zdravím!!!
>>>
>>> J.
>>>
>>>
>>>
>>>
>>> Dne 18. dubna 2016 23:16 Honza Javorek <mail na honzajavorek.cz> napsal(a):
>>>
>>> Pokud vim, tech pokusu je vic:
>>>> https://github.com/jashkenas/coffeescript/wiki/list-of-languages-that-compile-to-js#python
>>>>
>>>> Nevim, co z toho je nejdal, rozhodne jsem nikdy nenabyl dojmu, ze by
>>>> cokoliv z toho nekdo nekdy nekde pouzil mimo experimentalni hrani. Byt
>>>> tebou, zhluboka se nadechnu, zahrimam jedno velke "ach jo" a proste to
>>>> udelam v JavaScriptu, protoze s tim budes mit nejmin problemu a pokud to
>>>> nekoho naucis, bude to moct nekdy i pouzit.
>>>>
>>>> Kdybych si dnes delal skladbu jazyku ciste podle vyuzitelnosti praxe a
>>>> jejich zamereni, naucil bych se aspon tri jazyky ze tri skatulek:
>>>>
>>>> 1. kompilovane jazyky na vykon programu: c/c++, go, rust
>>>> 2. dynamicke/skriptovaci jazyky na vykon programatora: python, ruby
>>>> 3. javascript
>>>>
>>>> JS ma dnes pozici, kterou mu nikdo jen tak nesebere. Na webu se stava
>>>> naprostym hegemonem a web je momentalne to, co lidi nejvic tahne a kde se
>>>> "dejou veci". Treba az bude hotove
>>>> https://en.wikipedia.org/wiki/WebAssembly, tak budeme pro browser
>>>> kompilovat jakykoliv jazyk, ale zatim to moc nevypada.
>>>>
>>>> Honza
>>>>
>>>>
>>>> 2016-04-18 13:22 GMT+02:00 Ondrej Tuma <konference na webjet.cz>:
>>>>
>>>>> Na tohle by měl odpovědět spíš nějaký opravdový front-endista. Dovolím
>>>>> si to drze udělat také:
>>>>>
>>>>> Každý jazyk se hodí na něco. Ano, i v C/C++ se píšou webové aplikace,
>>>>> sám jsem nějaké napsal. Někdy to má smysl, zvlášť když člověk honí
>>>>> výkon až na úroveň obvodů. To ale neznamená, že se hodí na všechno. V
>>>>> případě webových prohlížečů, i .NET resp. Silverlight (a nebyl sám),
>>>>> uměl pouštět v browseru kód psaný kdo ví v čem. Javascript, resp.
>>>>> Ecmascript je sice nějak navržený, ale autoři webových prohlížečů se
>>>>> snaží co to jde, aby uměl dělat pekelně rychle zejména to, co se na
>>>>> webových stránkách (aplikací) děje. Proto na webu vždy bude vhodnější
>>>>> to, co tam je nerozšířenější a je pro web nějak optimalizováno.
>>>>>
>>>>> Ondra
>>>>>
>>>>> V Mon, 18 Apr 2016 13:05:49 +0200
>>>>> Jaroslav Vysoký <vysoky na borka.cz> napsáno:
>>>>>
>>>>> > Ahoj všichni!
>>>>> >
>>>>> > Kde to jde, používám (hlavně při výuce informatiky) Python, takže
>>>>> > bych ho rád použil i na frontendové straně webové aplikace.
>>>>> >
>>>>> > Narazil jsem na Brython:
>>>>> > http://www.brython.info/index.html
>>>>> >
>>>>> > Znáte to někdo?
>>>>> > Má smysl se tím zabývat?
>>>>> > Je to použitelné alespoň cvičně (ve výuce)?
>>>>> > Je to použitelné prakticky?
>>>>> >
>>>>> > Předem díky moc za vaše názory!
>>>>> >
>>>>> > Jarda V.
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Ondřej Tůma <mcbig na zeropage.cz>
>>>>> www: http://ipv6.mcbig.cz   jabber: mcbig na jabber.cz   twitter:
>>>>> mcbig_cz
>>>>>
>>>>> _______________________________________________
>>>>> Python mailing list
>>>>> python na py.cz
>>>>> http://www.py.cz/mailman/listinfo/python
>>>>>
>>>>> Visit: http://www.py.cz
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Python mailing list
>>>> python na py.cz
>>>> http://www.py.cz/mailman/listinfo/python
>>>>
>>>> Visit: http://www.py.cz
>>>>
>>>
>>>
>>> _______________________________________________
>>> Python mailing list
>>> python na py.cz
>>> http://www.py.cz/mailman/listinfo/python
>>>
>>> Visit: http://www.py.cz
>>>
>>
>> _______________________________________________
>> Python mailing list
>> python na py.cz
>> http://www.py.cz/mailman/listinfo/python
>>
>> Visit: http://www.py.cz
>
>
> _______________________________________________
> Python mailing list
> python na py.cz
> http://www.py.cz/mailman/listinfo/python
>
> Visit: http://www.py.cz
>
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://www.py.cz/pipermail/python/attachments/20160420/39d50fca/attachment.html>


Další informace o konferenci Python