Python - dobré rady a praktiky

Re:Python - dobré rady a praktiky
« Odpověď #165 kdy: 29. 03. 2016, 16:20:19 »
Dej sem odkaz na projekt v Javě, který by v Pythonu nebylo možné rozumně napsat a napiš proč.
To je absurdní požadavek. Dosaď si v té větě za Python Lua...


BoneFlute

  • *****
  • 1 981
    • Zobrazit profil
Re:Python - dobré rady a praktiky
« Odpověď #166 kdy: 29. 03. 2016, 16:24:39 »
...
Hmm, spousta věcí je prostě obecným principem, a důležitým skillem každého vývojáře. Možná by to chtělo lépe vypíchnout v čem je to v případě Pythonu ve spojení s jeho vlastnostmi ve výsledku tak prospěšné.

Jedna věc je používat jazyk, protože se mi líbí.
Druhá věc je používat jazyk, protože musím (můj případ).
Třetí věc je používat jazyk, protože se to vyplatí.

Musíš používat Python, nebo to píšeš obecně?
Musím používat Python. Ale píšu to obecně.

Co se týče prospěšnosti Pythonu, jak jsem myslím psal, spousta knihoven je přibalena s jazykem rovnou, další jsou snadno k dispozici třeba přes pypi. Pak samozřejmě REPL, resp. jeho větší bratříček IPython notebook, to je úžasná věc, která dosud není úplně samozřejmá. Rychlý runtime, co se týče naběhnutí. Není potřeba uvádět typy, spousta věcí v Pythonu plyne úplně přirozeně, třeba celé číslo není omezeno architekturou procesoru nebo rozhodnutím nějaké komise jako třeba u Javy. Tohle všechno je perfektní výbava pro řešení menších a středních problémů, prototypy apod.
Tak přesně toto je jen popis toho co jazyk dělá, ne v čem se to vyplatí.

Není potřeba uvádět typy,
Tohle bych vůbec nezmiňoval. Je velkej rozdíl mezi tím, že není potřeba uvádět typy, a není možné uvádět typy.
Python a typy jsou vůbec příběh sám o sobě.

Programovací jazyk je obecně prostředníkem mezi myšlením vývojáře a strojem, na kterém běží výpočet. Čím člověk musí méně ohýbat mozek a soustředit se na detaily výpočtu, tím v zásadě lépe. V Pythonu mám pocit, že se mohu soustředit na problém větší, než v jakémkoliv jiném jazyce.
Což je rozhodně pravda. Jenže se to taky dá pochopit značně negativně.

Sem tam samozřejmě zjišťuju, co je nového v jiných jazycích, zkouším nebo musím něco udělat v něčem jiném, takže celkem přehled mám. Java měla od začátku (jako jazyk), prakticky všechno úplně blbě. Na to, jak dlouho je na světě a co všechno se v té době v oblasti programovacích jazyků odehrálo, se hýbe dopředu moc pomalu. C++ je 100x lepší než před dvaceti lety, až na to, že všechen hnus, co kdysi převzal z C, pořád táhne za sebou. C# je ze staticky typovaného mainstreamu ještě zdaleka nejlepší - jako jazyk. Všechno jsou to ale proti Pythonu strašlivé molochy. Prostě (snad kromě Ruby) vlastně nevím, kde hledat náhradu. Snesl bych Scalu, Haskell, Clojure, ale to už je všechno hodně jiný svět. Erlang/Elixir samozřejmě také.
Takže na jednu stranu ty máš přehled, protože jsi vyzkoušel mnoho jazyků, zatímco všichni ti, co tady Python kritizují znají jen Javu? Nepřijde ti to blbí?

javaman

Re:Python - dobré rady a praktiky
« Odpověď #167 kdy: 29. 03. 2016, 16:27:27 »
Ta představa Javistů, jak z nich Java dělá polobohy, je úsměvná. Neříkám, že touhle nemocí trpí všichni, ale tolik egoismu jako v řadách Javistů těžko jinde pohledat. Jsou tady i nesrovnatelně náročnější a/nebo lepší jazyky a nikdo u toho takhle nevyvádí. To chce klid.



Jestli to nebude třeba složitostí projektů :D Většina běžných programátorů je pro to nevhodná, a proto se nemůžeš divit, že se na ně pohlíží jako na ty horší. Můžou dělat v Pythonu a být v poho, ale větší věci už potřebují víc.

Spíš bych řekl, že si tam tu složitost z velké části uměle vytváříte. Tohle všechno jsou ale kecy. Dej sem odkaz na projekt v Javě, který by v Pythonu nebylo možné rozumně napsat a napiš proč.

Tak třeba Hadoop. Špičkové řešení, které nemá konkurenci a žádný Python tam nenajdeš, protože tam skriptíky nepotřebují.
https://github.com/apache/hadoop

Trochu staršího infa z Wiki:
Citace
In 2010, Facebook claimed that they had the largest Hadoop cluster in the world with 21 PB of storage.[83] In June 2012, they announced the data had grown to 100 PB[84] and later that year they announced that the data was growing by roughly half a PB per day.[85]

As of 2013, Hadoop adoption had become widespread: more than half of the Fortune 50 used Hadoop.

Tomu říkám větší nasazení.

BoneFlute

  • *****
  • 1 981
    • Zobrazit profil
Re:Python - dobré rady a praktiky
« Odpověď #168 kdy: 29. 03. 2016, 16:29:13 »
Nebo že nemusíš psát složené závorky? (tady bezvýhrady souhlas, jestli má Python něco fakt dobře, tak je to syntaxe)
Syntaxe dělá hodně. Python má fantastickej syntax suggar ve všem možném. Vůbec bych se nedivil, kdyby to stačilo pro jeho úspěch.

Re:Python - dobré rady a praktiky
« Odpověď #169 kdy: 29. 03. 2016, 16:30:37 »
Tak třeba Hadoop. Špičkové řešení, které nemá konkurenci a žádný Python tam nenajdeš, protože tam skriptíky nepotřebují.
Ale Spark už je ve Scale - a ještě k tomu nad Akka, takže silná inspirace Erlangem ;)


javaman

Re:Python - dobré rady a praktiky
« Odpověď #170 kdy: 29. 03. 2016, 16:33:48 »
O Scale se tu nikdo moc nebavil. Nikde nepíšu, že se Scala nedá na nic použít :) Ale pokud bych si měl vybrat mezi Pythonem a Javou... :D

Re:Python - dobré rady a praktiky
« Odpověď #171 kdy: 29. 03. 2016, 16:34:52 »
Syntaxe dělá hodně. Python má fantastickej syntax suggar ve všem možném. Vůbec bych se nedivil, kdyby to stačilo pro jeho úspěch.
Souhlas. Až na pár zbytečných opruzů, jako třeba že nemůžu napsat
Kód: [Vybrat]
lambda x: if x % 2 == 0 then True else False
ale musím
Kód: [Vybrat]
lambda x: True if x % 2 == 0 else False

Kdyby Python měl filosofii "všechno je výraz", tak by mu to imho prospělo (odstranění returnu u velké části fcí!). Ale chápu datum vzniku pythonu a zároveň Guidovu nesympatii k FP ;)

Kit

Re:Python - dobré rady a praktiky
« Odpověď #172 kdy: 29. 03. 2016, 16:57:27 »
Kód: [Vybrat]
lambda x: True if x % 2 == 0 else False

Chápu, že ve tvém příspěvku jde o něco jiného a uvedená syntaxe mi také připadá nepřirozená, ale také musím:
Kód: [Vybrat]
lambda x: x % 2 == 0

Re:Python - dobré rady a praktiky
« Odpověď #173 kdy: 29. 03. 2016, 17:08:09 »
Chápu, že ve tvém příspěvku jde o něco jiného a uvedená syntaxe mi také připadá nepřirozená, ale také musím:
Kód: [Vybrat]
lambda x: x % 2 == 0
Čekal jsem, jestli se nějaký hnidopich najde :)) Ale kvituju! Štourat se musí! ;)

.

Re:Python - dobré rady a praktiky
« Odpověď #174 kdy: 29. 03. 2016, 17:31:59 »
Tak třeba Hadoop. Špičkové řešení, které nemá konkurenci a žádný Python tam nenajdeš, protože tam skriptíky nepotřebují.
https://github.com/apache/hadoop

Trochu staršího infa z Wiki:
Citace
In 2010, Facebook claimed that they had the largest Hadoop cluster in the world with 21 PB of storage.[83] In June 2012, they announced the data had grown to 100 PB[84] and later that year they announced that the data was growing by roughly half a PB per day.[85]

As of 2013, Hadoop adoption had become widespread: more than half of the Fortune 50 used Hadoop.

Tomu říkám větší nasazení.

Když čtu tvou citaci a komentář k ní, na mysl se mi vkrádá pochybnost zda vůbec tušíš co to Hadoop je a k čemu se používá. Na kolik PB diskového prostoru ho FB používá nemá s kvalitou nebo velikostí projektu nic společného.

.

Re:Python - dobré rady a praktiky
« Odpověď #175 kdy: 29. 03. 2016, 17:54:25 »
V JS sice procesy nejsou, ale kdyby to jazyk umožňoval, dalo by se to dělat úplně stejně - první fce je pozastavena *uprostřed*, běží druhá. To ale JS neumožňuje - každá fce musí hned doběhnout. A z toho pramení ten callback hell. Což je přesně pointa toho, co jsem psal - JS je ve vleku toho, že nebyl navržen na to, na co se dneska používá. A promisy na tom vůbec nic nemění.
To je ale omyl, funkce označená jako generátor uprostřed pozastavit jde. Zápis pomocí generátorů nebo async/await je už velice blízký tomu co by se vám líbilo.

Přijde mi celkem normální, že každému vyhovuje něco jiného. Právě proto máme tolik programovacích jazyků, protože jejich tvůrci měli rozdílné představy o tom, co je nejlepší. Jen mi připadá trochu směšné, pokud tady někteří zarputile trvají na tom, že to jejich je jediné správné (není myšleno přímo na vás).

javaman

Re:Python - dobré rady a praktiky
« Odpověď #176 kdy: 29. 03. 2016, 17:59:01 »
Tak třeba Hadoop. Špičkové řešení, které nemá konkurenci a žádný Python tam nenajdeš, protože tam skriptíky nepotřebují.
https://github.com/apache/hadoop

Trochu staršího infa z Wiki:
Citace
In 2010, Facebook claimed that they had the largest Hadoop cluster in the world with 21 PB of storage.[83] In June 2012, they announced the data had grown to 100 PB[84] and later that year they announced that the data was growing by roughly half a PB per day.[85]

As of 2013, Hadoop adoption had become widespread: more than half of the Fortune 50 used Hadoop.

Tomu říkám větší nasazení.

Když čtu tvou citaci a komentář k ní, na mysl se mi vkrádá pochybnost zda vůbec tušíš co to Hadoop je a k čemu se používá. Na kolik PB diskového prostoru ho FB používá nemá s kvalitou nebo velikostí projektu nic společného.

Přes milion řádků je vlastně takový malý skriptík a že to dokáže takhle velké nasazení, také nic neznamená :D OK.

.

Re:Python - dobré rady a praktiky
« Odpověď #177 kdy: 29. 03. 2016, 18:03:17 »
Tak třeba Hadoop. Špičkové řešení, které nemá konkurenci a žádný Python tam nenajdeš, protože tam skriptíky nepotřebují.
https://github.com/apache/hadoop

Trochu staršího infa z Wiki:
Citace
In 2010, Facebook claimed that they had the largest Hadoop cluster in the world with 21 PB of storage.[83] In June 2012, they announced the data had grown to 100 PB[84] and later that year they announced that the data was growing by roughly half a PB per day.[85]

As of 2013, Hadoop adoption had become widespread: more than half of the Fortune 50 used Hadoop.

Tomu říkám větší nasazení.

Když čtu tvou citaci a komentář k ní, na mysl se mi vkrádá pochybnost zda vůbec tušíš co to Hadoop je a k čemu se používá. Na kolik PB diskového prostoru ho FB používá nemá s kvalitou nebo velikostí projektu nic společného.

Přes milion řádků je vlastně takový malý skriptík a že to dokáže takhle velké nasazení, také nic neznamená :D OK.
Jestli tady budeš ještě chvíli takhle argumentovat, tak začnu rozumět tomu proč má většina Java programátorů tak špatnou reputaci. Možná by neškodilo si zopakovat základy logiky.

javaman

Re:Python - dobré rady a praktiky
« Odpověď #178 kdy: 29. 03. 2016, 18:09:03 »
No a? Přijdu za adminy a tvrděj, jaká je Java sračka. Přijdu za webařema, tvrděj, jaké je Java sračka. Přijdu do startupu, mají Python. Všechno ale jsou lopaty, které nic neumí a pak budou tvrdit o Javě, že je k ničemu. Proto jsem tady, protože Java nikdy špatná nebyla a ani nebude. Proč je teda nejpopulárnější podle TIOBE? Zase nějaký podvod určitě :D Vždyť je dávno mrtvá, ne?

.

Re:Python - dobré rady a praktiky
« Odpověď #179 kdy: 29. 03. 2016, 18:16:02 »
No a? Přijdu za adminy a tvrděj, jaká je Java sračka. Přijdu za webařema, tvrděj, jaké je Java sračka. Přijdu do startupu, mají Python. Všechno ale jsou lopaty, které nic neumí a pak budou tvrdit o Javě, že je k ničemu. Proto jsem tady, protože Java nikdy špatná nebyla a ani nebude. Proč je teda nejpopulárnější podle TIOBE? Zase nějaký podvod určitě :D Vždyť je dávno mrtvá, ne?
A je ti 14 nebo 15? To by vysvětlovalo, že jste základy logiky ještě nebrali.