[python] Volba web-frameworku (a pár menších dotazů)

Radek Holý radekholypublic na gmail.com
Středa Březen 4 19:58:35 CET 2015


Dne 4. března 2015 8:44 Honza Javorek <mail na honzajavorek.cz> napsal(a):

> Ahoj,
>
> > Ale budiž, nemám potřebu se s vámi hádat. Snažil jsem se nabídnout jiný
> pohled. Pokud na něj mám získat odpovědi typu "nesmysl", nebo něco o
> prdeli, nestojí mi to za to.
>
> Me je lito, ze jsem to napsal drsneji, protoze jsem to tak spis nemyslel,
> nez myslel. Ja jsem te chtel vlastne spis doplnit, nez s tebou radikalne
> nesouhlasit. Udelam jednoduchou tabulku:
>
> delat vlastni framework - vetsina se tady shodneme, ze NE
> pouzit maly framework vs. velky framework - tohle je nikdy nekoncici
> debata, za me je to ANO vs. ANO, zalezi jak kdy
>
> Ja pouzivam Flask na vsechno. Ty obhajujes Flask, ja Django. Jaky to dava
> smysl? :) Takovy, ze vidim vyhody obou a chtel jsem poskytnout druhy pohled
> na vec. Snazil jsem se, aby se velky vs. maly argumentovalo poctive.
> Velikost v MB mi smysl nedavala, to do ceho jsi to rozvedl, jsou uz podle
> me OK argumenty na zvazeni pri rozhodovani. Nehadejme se tady a hlavne se
> nehadejme, kdyz spolu v podstate az na drobnosti souhlasime ;) Jak jsem
> psal, nenapichujem se na kuly. U piva bychom se na sebe usmivali, ale tady
> na diskusi to vzdycky z nejakeho uhlu vypada, ze je za tim pokrevni
> vyvrazdovani.
>
> Chci napsat na python.cz, ze tady mame pratelskou komunitu, takze nelejme
> to pivo z voken :)
>
> > Souhlasim, mensi mnozstvi ciziho kodu neimplikuje mensi mnozstvi meho
> kodu. Nic takoveho se nesnazim tvrdit. Ale tvrdim, ze pokud existuji dve
> stejne kvalitni knihovny, ta, která má méně řádků kódu, je jednušší. Co je
> jednodušší, to se lépe udržuje (autorovi knihovny, ne mně!!!). Co se lépe
> udržuje (autorovi), to je lepší (pro mě). Proto, pokud mám na výběr mezi
> dvěma kvalitními knihovnami, které obě splňují moje požadavky, volím tu
> menší. Myslím si, že tady jsme se vůbec nepochopili.
>
> Pokud te chapu dobre, tak se jinymi slovy snazis rict neco podobneho, jako
> ja v
>
> > Spravnejsi by podle me bylo treba rict, ze Django mi pomaha k vecem,
> ktere nepotrebuji, a nepomaha mi k vecem, ktere potrebuji - typicky kdyz
> budu chtit udelat API nad MongoDB, pak proste sahnu po
> http://python-eve.org/ (postaveno nad Flaskem), protoze s Djangem bych se
> trapil.
>
> Jinak co se tyce
>
> > Pokud existuje menší kvalitní framework, který nabízí vše, co tázající
> potřebuje, doporučuji ten. Osobně názory typu, něco je levné, tak tím
> nemusím šetřit, mi jsou velmi vzdálené.
>
> tak bych jen doplnil, ze je tam minimalne jeste jedna velicina, kterou
> sledovat, a to pocet lidi, kteri na tom delaji a jejich aktivita. Kdyz to
> bude one man show, tak at to bude velke (tam spis) nebo male, tak to nikdy
> nebude dostatecne "ostrilene" a kdyz se tam neco podela, nevis, zda autor
> nebude zrovna nekde na dovolene. Co v mych ocich Django ztraci na
> velikosti, to ziskava na komunite za nim, na otestovanosti a proverenosti v
> boji.
>
> Ja bych to rekl v analogii asi takto: Mam moc rad svoje kolo. Jezdim na
> nem vsude. Ale az pojedu do Chorvatska, tak si na to vezmu auto. S autem je
> strasna spousta srani, vyrizovani, tady hlidas nejaky pojisteni, tam gumy,
> musis resit palivo, muze se to cele pokazit. Ma to strasne moc soucasti a
> vsechny se muzou pokazit, kdykoliv. Ale stejne jedes do Chorvatska autem,
> protoze na kole, ac mas svoje kolo rad a po meste s nim jezdis vsude, tak
> na tom kole by to bylo dost bolestivy. Nikdo nerika, ze to nejde
> <http://www.ronnieweb.net/na-kole-k-mori/>, ale nejsi-li dobrodruzne
> povahy, nebo jedes-li tam v obleku treba delat do Zahrebu byznys a nemas to
> jako dovolenou, tak se tomu vyhnes.
>
> Django je u me takovy auto. Na to, abych s nim jel do hospody, na vylet za
> mesto, do prace, tak na to bych se mohl vyprdnout. Je nemotorny a
> tezkopadny a navic mam rad to svoje kolo. To kolo funguje dobre a navic i
> verim tomu, ze mi jej kdokoliv opravi kladivem, v jedne osobe. Ale kdyz
> budu mit vylet do Zahrebu, vezmu si na to Django. Ani se mu moc nebudu
> divat pod kapotu.
>
> > Tak zkusím ještě jeden argument, který se také často ozývá od lidí,
> kteří se teď zabývají Dockerem. Každý zbytečný kód, který leží třeba i
> (nebo zejména) na serveru, potenciálně obsahuje chyby. Přestože se
> nevyužívá, útočník si může najít cestu, jak kód spustit a zneužít. Proto je
> vždy lepší zbytečný kód nemít, než nepoužívat.
>
> To je celkem pravda, ale proc nikdo podobne nepremysli u samotneho OS nebo
> u DB? PostgreSQL ma milion funkci, ktere nepotrebujes, ale mas je tam.
> Podle me je to tou otestovanosti v boji - nikdo se neboji pouzit Postgre,
> protoze to uz bezi na milionu mistech a lidi vi, ze funguje a ze kdyz nekdo
> nahlasi bug, tak bude opraven a ze je to bezpecny. Stejne jako, rekneme,
> nejaka stara dobra spolehliva Mazda. Proste jede. Ale Docker je v tomto
> pripade ve stadiu cinske noname znacky, jejiz prvni modely prave vyjely z
> montazni linky. Nikdo netusi, co od toho ma cekat.
>
>
FYI, na urovni OS nad tim premysli spousta lidi prave treba kvuli Dockeru.
Kazdy Docker image musi byt postaven nad image nejakeho OS. Proto musi byt
ten "base image" co nejmensi. A treba take proto musim poslouchat stiznosti
lidi, kteri maji problem s tim, ze je YUM/DNF ve Fedore napsany v Pythonu.
Je to totiz jeden z mala nezbytnych programu, ktery do OS zanasi Python
stack a tak zvetsuje cely image.



> Na zresetovani atmosfery posilam zaverem pisnicku:
> https://www.youtube.com/watch?v=LanCLS_hIo4
>
> Honza
>
>
> 2015-03-04 0:55 GMT+01:00 Radek Holý <radekholypublic na gmail.com>:
>
>>
>>
>> Dne 2. března 2015 23:58 Honza Javorek <mail na honzajavorek.cz> napsal(a):
>>
>>> Ten clovek chce napsat webovou stranku, proto by si na ni mel najit
>>> webovy framework. Takovy, ktery uspokoji jeho potreby. Analogii s jednou
>>> funkci a Qt knihovnou mi prijdou mimo.
>>>
>>> Snažil jsem se říct, že pokud by "ten člověk" z Djanga využil jen velmi
>> malou podmnožinu funkcí, bylo by to, jako kdyby si instaloval Qt kvůli
>> jedné funkci. Ale budiž, pokud to nedává smysl, není potřeba to rozebírat.
>>
>>
>>> Potreba setreni MB je mozna nekde na micropythonu a RapsberryPi, ale na
>>> serverech je to dnes tak pomijiva velicina, ze pomijivejsi snad ani neni.
>>> Kolik stoji 1 MB a kolik stoji 1 hodina casu cloveka (a to nemyslim jen v
>>> penezich)?
>>>
>>> Ja mam rad Flask, jak jsem uz psal, delam v nem vsechno, ale
>>> argumentujme tak, aby to melo smysl. Velikost v MB je v dnesni dobe
>>> absolutne minoritni parametr. Argument, ze Django ma veci, ktere nepouziju,
>>> je podle me mimo. Spravnejsi by podle me bylo treba rict, ze Django mi
>>> pomaha k vecem, ktere nepotrebuji, a nepomaha mi k vecem, ktere potrebuji -
>>> typicky kdyz budu chtit udelat API nad MongoDB, pak proste sahnu po
>>> http://python-eve.org/ (postaveno nad Flaskem), protoze s Djangem bych
>>> se trapil. To je podle me argument.
>>>
>>> Honza
>>>
>>>
>> Tak zkusím ještě jeden argument, který se také často ozývá od lidí, kteří
>> se teď zabývají Dockerem. Každý zbytečný kód, který leží třeba i (nebo
>> zejména) na serveru, potenciálně obsahuje chyby. Přestože se nevyužívá,
>> útočník si může najít cestu, jak kód spustit a zneužít. Proto je vždy lepší
>> zbytečný kód nemít, než nepoužívat.
>>
>> Ale budiž, nemám potřebu se s vámi hádat. Snažil jsem se nabídnout jiný
>> pohled. Pokud na něj mám získat odpovědi typu "nesmysl", nebo něco o
>> prdeli, nestojí mi to za to.
>>
>>
>>>
>>>
>>> 2015-03-02 23:32 GMT+01:00 Ales Zoulek <ales.zoulek na gmail.com>:
>>>
>>>> Tak skoro mam takovej pocit, ze "mensi" (ve smyslu objemu 3rd party
>>>> kodu) rozhodne nebude i znamenat "mensi" kod o ktery se staram. Skoro bych
>>>> rekl, ze toho vlastniho kodu bude vic - vazne tak bude dal jenodussi a
>>>> lepsi? Nerekl bych... Marne premyslim jak je to s "mnozstvim lidi", jejichz
>>>> cas na opetovne vynalezani a opravovani kola nema cenu nekolika MB na disku
>>>> s kodem, ktery prosel mnoha tisici hodin vyvoje a testovani.
>>>>
>>>> Jiste, muze byt vzdycky zajimave si ze studijnich ucelu zkusit
>>>> re-implementovat vyresene problemy - od bubble sortu pres wsgi handler. Ale
>>>> delat tu kvuli predstave, ze se tak doberu lepsiho a jednodussiho kodu, ze
>>>> se mi vyplati si ty veci psat a udrzovat sam nez pouzit ci vylepsit to, co
>>>> uz je hotove - to snad ne.
>>>>
>>>>
>>>> A.
>>>>
>>>> On Mon, Mar 2, 2015 at 10:14 PM Radek Holý <radekholypublic na gmail.com>
>>>> wrote:
>>>>
>>>>> Tak to nevím. Kdyby chtěl někdo spočítat průměr ze sekvence čísel, asi
>>>>> mu taky nebudeme cpát hned numpy. Tuhle jsem někde viděl, že Qt má funkci,
>>>>> která vrátí cestu k adresáři, kam daná platforma ukládá data aplikací.
>>>>> Kdyby někdo hledal takovou funkci, asi mu taky nebudeme hned radit Qt,
>>>>> pokud zrovna nehodlá psát GUI...
>>>>>
>>>>> Se zkušenostmi z práce můžu říct, že existuje velké množství lidí,
>>>>> kterým záleží na tom, kolik MB ve výsledku aplikace, kterou chtějí
>>>>> nainstalovat, zabere na disku. Vývojáři posedlí kontejnery by také
>>>>> pravděpodobně dokázali obhájit, proč je velikost na disku důležitá.
>>>>>
>>>>> A jak už jsem psal, menší = jednodušší = lepší.
>>>>> --
>>>>> Radek
>>>>>
>>>>>
>>>>> Dne 2. března 2015 17:38 Honza Javorek <mail na honzajavorek.cz>
>>>>> napsal(a):
>>>>>
>>>>> Rozdil mezi Pythonem a PHP je v tom, ze kdyz nainstalujes knihovnu a
>>>>>> neco z ni nepouzijes, tak se to vetsinou nespousti :) Tzn. kdyz v PHP
>>>>>> vezmes Symfony a udelas na nej request, pri kazdem requestu se spousti cele
>>>>>> Symfony a vsechny soubory v nem. U Pythonu se pouzije jen to, co se
>>>>>> potrebuje - co naimportujes.
>>>>>>
>>>>>> Tudiz argument "Django obsahuje spoustu neceho, co nepotrebuju", je
>>>>>> vlastne nesmysl. Resp. ano, obsahuje, ale to ze to nepotrebujes ti v nicem
>>>>>> nevadi, akorat si pri `pip install django` pockas o sekundu dele.
>>>>>>
>>>>>> H
>>>>>>
>>>>>> 2015-03-02 16:21 GMT+01:00 Matěj Cepl <mcepl na cepl.eu>:
>>>>>>
>>>>>>> On 2015-03-02, 10:07 GMT, Marcus Scalpere wrote:
>>>>>>> > Na Django jsem myslel hned na začátku, ovšem po mnoha úvahách
>>>>>>> > a radách mi to opravdu přijde jako dělo na vrabce. Určitě bych
>>>>>>> > to nějak splácal časem, ale kupu toho, co Django umí
>>>>>>> > nepotřebuji (v podstatě potřebuji jen pár formulářů), možná
>>>>>>> > později, až budu chtít dotvořit něco jako učební pomůcku, pak
>>>>>>> > to možná bude vhodná volba. Ale každopádně ta kniha je dost
>>>>>>> > poučná a mám choutky to aspoň zkusit
>>>>>>>
>>>>>>> Nikdo Tě nenutí to celé používat a co se týče instalace tak to
>>>>>>> není o nic složitější nežli 'sudo yum install python-django'
>>>>>>> (nebo apt-get varianta).
>>>>>>>
>>>>>>> Nejmenší projekt s djangem je pár řádek a ještě generovaných
>>>>>>> skriptem. Možná, že až napíšeš několik website rozměrů nasa.gov
>>>>>>> budeš chtít něco jiného ale do té doby fakt nevidím důvod proč
>>>>>>> si psát framework sám.
>>>>>>>
>>>>>>> Hezký den,
>>>>>>>
>>>>>>> Matěj
>>>>>>> _______________________________________________
>>>>>>> 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
>>>
>>
>>
>> _______________________________________________
>> 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/20150304/6aaeb522/attachment.html>


Další informace o konferenci Python