Python - zbožňovaný lidmi?

zvědavec

Re:Python - zbožňovaný lidmi?
« Odpověď #390 kdy: 15. 12. 2017, 12:04:52 »
Ten automatický refaktoring, který ide dělá za programátora, to je podobná záležitost jako jsem uvedl výše. Čím je to levnější, tím méně člověk nad návrhem kódu přemýšlí, tím méně to umí a tím víc pak musí refaktorovat. Tak moc, že si už ani nedokáže představit, že by bylo možno vůbec programovat bez něj. Ve výsledku má špatný kód, potřebu neustále přepisovat kód a hlavně, je tím vychován programátor, který neumí dobře navrhnout kód. A s tím dobrým návrhem mu zatím žádné ide nepomůže. Ale blíží se doba AI v programování, tak to třeba nevadí. Takže fajn, taky styl práce, akorát je zajímavé, že lidé s tímto zvláštním stylem práce, protože něco neumí, si myslí, že jsou něco víc a ostatní nazývají amatéry :-).

Takže to ten amatérský nástroj neumí, ale vlastně je to v pohodě, ne? Až se naučíš vyvíjet, tak dej vědět, protože píšeš hrozný nesmysly.


gll

Re:Python - zbožňovaný lidmi?
« Odpověď #391 kdy: 15. 12. 2017, 12:24:54 »
Ručně upravíš stovky výskytů? Kolik ti platí na hodinu?

Když bude výskytů hodně, mohu upravit všechny najednou. Zatím jsem nepřejmenovával nic, co by už mělo stovky výskytů.

gll

Re:Python - zbožňovaný lidmi?
« Odpověď #392 kdy: 15. 12. 2017, 12:29:10 »
Kolik ti platí na hodinu?

určitě víc než platíte vy v té vaší java firmě.

dustin

Re:Python - zbožňovaný lidmi?
« Odpověď #393 kdy: 15. 12. 2017, 12:38:34 »
Když bude výskytů hodně, mohu upravit všechny najednou.

Tedy znovu - jak  všechny najednou pouze ty, které jsou ty správné?

dustin

Re:Python - zbožňovaný lidmi?
« Odpověď #394 kdy: 15. 12. 2017, 12:43:40 »
určitě víc než platíte vy v té vaší java firmě.

A na tak triviální operaci si můžeš dovolit strávit víc, než jen pár desítek sekund i s commitem?


balki

Re:Python - zbožňovaný lidmi?
« Odpověď #395 kdy: 15. 12. 2017, 12:51:21 »
Python je urceny na jednoduche prototypovanie, preto ho maju radi amateri. (Ja sa radim medzi python amaterov) Ti nepotrebuju dokonaly vysledok, ale staci im vysledok, ktory im ulahci robotu.  A na to je python vacsinou vyborny. Na mission critical systemy uz menej. Chce to potom trpezlivy, skuseny support a tolerantnejsieho zakaznika.

Bohužel i tady Java vede. Celé funkční programy na pár řádek a zabalené v samospustitelném skriptu klidně včetně aplikáče? Tomu říkám rychlý vývoj.

Neviem, ked pisem tooly pre seba, radsej to vygrciam v awk-u, alebo v pythone, nez by som mal absolvoval byrokraciu vytvarania noveho javovskeho projektu. Microservice cez ThreadedHttpServer je tam spravitelny smiesne rychlo. Horsie, ked uz je to treba dostat do produkcnej kvality, aby to vyhovovalo systemakom, to az take easy nie je :-/

Petr Mach

Re:Python - zbožňovaný lidmi?
« Odpověď #396 kdy: 15. 12. 2017, 12:58:32 »
Ten automatický refaktoring, který ide dělá za programátora, to je podobná záležitost jako jsem uvedl výše. Čím je to levnější, tím méně člověk nad návrhem kódu přemýšlí, tím méně to umí a tím víc pak musí refaktorovat. Tak moc, že si už ani nedokáže představit, že by bylo možno vůbec programovat bez něj. Ve výsledku má špatný kód, potřebu neustále přepisovat kód a hlavně, je tím vychován programátor, který neumí dobře navrhnout kód. A s tím dobrým návrhem mu zatím žádné ide nepomůže. Ale blíží se doba AI v programování, tak to třeba nevadí. Takže fajn, taky styl práce, akorát je zajímavé, že lidé s tímto zvláštním stylem práce, protože něco neumí, si myslí, že jsou něco víc a ostatní nazývají amatéry :-).
Nejdřív si to sám prakticky vyzkoušej a pak to komentuj. Očividně vůbec netušíš, o čem je řeč. Nebo se drž pythonu a nevyjadřuj se k postupům při vývoji Javy v kvalitním IDE. Pak se nesmíš divit, že tu padají slova jako "amatér". Sorry.
Nazývá mě amatérem někdo, kdo potřebuje rutinně měnit tisíce výskytů veřejného rozhraní v tisících souborů? Zjevně máme o amatérismu rozdílné představy. :-)

Já zastávám minimalistickou pozici. I kdybych vyvíjel něco v Javě, používal bych na to rád editor Vim. Otázka zní, šlo by to vůbec? Nebo je to tak špatný jazyk, že ho prakticky nelze používat bez nenažraného neefektivního bloatware, jakým bývají 'kvalitní ide', které programátory vychovávají k tomu, že potřebují pořát dokola přepracovávat kód v tisících souborech?

gll

Re:Python - zbožňovaný lidmi?
« Odpověď #397 kdy: 15. 12. 2017, 13:12:48 »
Když bude výskytů hodně, mohu upravit všechny najednou.

Tedy znovu - jak  všechny najednou pouze ty, které jsou ty správné?

použiju funkci pro přejmenování.

určitě víc než platíte vy v té vaší java firmě.

A na tak triviální operaci si můžeš dovolit strávit víc, než jen pár desítek sekund i s commitem?

klidně to přejmenuju za 10 sekund, ale opravdu tak velké přejmenování nedělám často.

Už s vámi nebudu dál diskutovat. Nemá to cenu. Python neznáte, ale poučujete všechny jak v něm správně programovat. Podle vaší logiky se člověk nejlépe naučí programovat v Pythonu programováním v Javě. My všichni ostatní si podle vás jen hrajem.

Petr Mach

Re:Python - zbožňovaný lidmi?
« Odpověď #398 kdy: 15. 12. 2017, 13:27:03 »
Ten automatický refaktoring, který ide dělá za programátora, to je podobná záležitost jako jsem uvedl výše. Čím je to levnější, tím méně člověk nad návrhem kódu přemýšlí, tím méně to umí a tím víc pak musí refaktorovat. Tak moc, že si už ani nedokáže představit, že by bylo možno vůbec programovat bez něj. Ve výsledku má špatný kód, potřebu neustále přepisovat kód a hlavně, je tím vychován programátor, který neumí dobře navrhnout kód. A s tím dobrým návrhem mu zatím žádné ide nepomůže. Ale blíží se doba AI v programování, tak to třeba nevadí. Takže fajn, taky styl práce, akorát je zajímavé, že lidé s tímto zvláštním stylem práce, protože něco neumí, si myslí, že jsou něco víc a ostatní nazývají amatéry :-).
Takže to ten amatérský nástroj neumí, ale vlastně je to v pohodě, ne? Až se naučíš vyvíjet, tak dej vědět, protože píšeš hrozný nesmysly.
Jaký amatérský nástroj máte na mysli? Python? Ne, ten to neumí, stejně jako to numí Java. Myslíte nějaké IDE? Nevím, nikdy jsem neměl tu potřebu.

Přijde mi zvláštní, že mě k tomu, abych se naučil vyvíjet, vybízí někdo, kdo má potřebu rutinně měnit tisíce výskytů veřejného rozhraní v tisícovkách souborů. Umíte si představit, že by někdo chtěl ve stdio.h přejmenovat rutinně printf na fprint? Znamená to, že C se nehodí na velké projekty? Hodí, ale není určen do ruky amatérům.

To co chcete je, ať se vám to líbí nebo ne, amatérské. Není to a nemůže být běžná potřeba takto měnit veřejné rozhraní. A navíc podle toho posuzovat vhodnost jazyka. Nechci být ošklivý, ale tohle může být důležité pouze pro amatéry a začátečníky, kteří ještě neumí programovat a ti u velkých projektů nemají do dělat. Protože tohle zavání hodně špatným návrhem aplikace, zvláště když je to potřeba dělat významně často. Zajímalo by mě, jaké důvody vás vedou k potřebě měnit široce používané veřejné api. 

Chápu potřebu hromadného předělávání kódu u statického jazyka, když se mění datové typy hodnot se kterými program musí pracovat, to je pro statické programy problém. S tím dynamické jazyky problém nemají. Ale předělávat neustále veřejné rozhraní? To je prasárna, ať se na to člověk dívá jak chce. A to je to, o čem jsem psal, tato možnost vede ke špatným návykům a tyhle špatné návyky si teď obhajujete. To je celé.

Tušíj, že vaše potřeba opět souvisí se statickými typy. Něco ve smyslu, že najednou potřebujete místo obecného send() mít sendType1(), sendType2(). Tedy opět věc, která dynamické jazyky netrápí. Ale i ve statickém jazyku si s tímto lze poradit rozuměji, než neustálým předěláváním veřejného rozhraní. A když už se tím člověk jednou spálí, dá si pozor a příště si rozhraní navrhne flexibilněji. Zvlátě když dělá na velkém projektu, kde je flexibilita nezbytná, pokud má být kód dobře udržovatelný.

dustin

Re:Python - zbožňovaný lidmi?
« Odpověď #399 kdy: 15. 12. 2017, 13:30:29 »
použiju funkci pro přejmenování.

Takže vše.

[quote ]
Už s vámi nebudu dál diskutovat. Nemá to cenu. Python neznáte, ale poučujete všechny jak v něm správně programovat. Podle vaší logiky se člověk nejlépe naučí programovat v Pythonu programováním v Javě. My všichni ostatní si podle vás jen hrajem.
[/quote]

Ale houby, i vývoj projektů v pythonu je užitečný a důležitý. A vše vyžaduje své. Ale nesouhlasím, když tu někdo tvrdí, že typy jsou k ničemu ba dokonce na škodu a že se velký projekt v pythonu vytváří a udržuje úplně stejně snadno, stačí použít "správné paradigma". Nikdo mi tu neporadil, jak mám svůj domácí projekt vyvíjet jinak, abych neztrácel čas otravnými ručními úkony typu přejmenování či přesun třídy. Jo, nepřejmenovávat a nepřesouvat, jsem amatér, protože při změně vnitřní funkce třídy či metody chci její název změnit tak, aby vyjadřoval skutečnost.

dustin

Re:Python - zbožňovaný lidmi?
« Odpověď #400 kdy: 15. 12. 2017, 13:38:54 »
Přijde mi zvláštní, že mě k tomu, abych se naučil vyvíjet, vybízí někdo, kdo má potřebu rutinně měnit tisíce výskytů veřejného rozhraní v tisícovkách souborů. Umíte si představit, že by někdo chtěl ve stdio.h přejmenovat rutinně printf na fprint? Znamená to, že C se nehodí na velké projekty? Hodí, ale není určen do ruky amatérům.

Představ si, že třeba před 15 lety někdo, kdo už na projektu 10 let nedělá, zvolil nějaký název třídy, např. logovací třída Log. A ten název už po 15 letech nevyjadřuje přesně, co ta třída dnes dělá, nebo to nedává gramaticky smysl - anglicky je to Logger.
 Log je skoro ve všech třídách tvého projektu, ale také je tam nějaká třída Log, která opravdu vyjadřuje záznam logu. A to tě po chvíli pěkně leze na nervy. Profesionál o to bude zakopávat dál. Amatér se domluví s ostatními členy týmu, aby s tím počítali a přejmenuje logovací Log na Logger. Projekt nikdo další nevyvíjí, nezávisejí na něm žádné externí knihovny, klidně si to může dovolit. Narozdíl od uvedeného extrémního příkladu libc.

A pak holt během pár desítek sekund vyleze commit s tisíci změněných souborů. Velice amatérské.

armabeton

Re:Python - zbožňovaný lidmi?
« Odpověď #401 kdy: 15. 12. 2017, 13:39:57 »
Kdybychom měli náš středně velký firemní projekt s 10 tis. třídami a 35tis. commity v pythonu místo v javě, už nám z toho dávno hráblo a firma by dávno zkrachovala.

Tyjo to fakt mate prumerne jen 3,5 commitu na tridu? Nejake divne pocty, to pisete kod na prvni dobrou?

Sajfi

Re:Python - zbožňovaný lidmi?
« Odpověď #402 kdy: 15. 12. 2017, 13:42:53 »
Vždyť děláš to samé ohledně výhod dynamického vs. statického programování. Ty já nevidím vůbec žádné, naopak mi to na jinak příjemném pythonu silně vadí. Kdybychom měli náš středně velký firemní projekt s 10 tis. třídami a 35tis. commity v pythonu místo v javě, už nám z toho dávno hráblo a firma by dávno zkrachovala. Takhle to na pohodu zvládá vyvíjet pár lidí a požadavky na změny jsou od byznysu takřka každý den od r. 2000.

A neměl by ten středně velký projekt, kdyby byl psaný jak se píše v Pythonu, místo 10 tis. tříd třeba jen 2 tis. tříd? Ty jazyky jsou opravdu jiné a tak by se k nim mělo přistupovat. Pěkné porovnání je třeba jak napsat nějakou síťovou service ve Twisted a v Tornadu. Twisted je v podstatě Java, ale syntaxe je Python, použití je takové... těžkopádné (pro Pythonistu, Javista na to bude koukat jinak). V Tornadu je kód dělající to samé úspornější.

Petr Mach

Re:Python - zbožňovaný lidmi?
« Odpověď #403 kdy: 15. 12. 2017, 13:46:25 »
Už s vámi nebudu dál diskutovat. Nemá to cenu. Python neznáte, ale poučujete všechny jak v něm správně programovat. Podle vaší logiky se člověk nejlépe naučí programovat v Pythonu programováním v Javě. My všichni ostatní si podle vás jen hrajem.

On má pravdu, přejmenovat široce používané rozhraní je asi v Javě jednodušší. Byť by mě zajímalo, jak by se mu automaticky vyřešil případ, že někde přijímá objekty dvou typů se stejným rozhraním a najednou se mu u jednoho typu to rozhraní přejmenuje. Čili něco, co je v dynamickém jazyku typické. Opět se dostáváme k postřehu, že tito lidé myslí výhradně staticky.

V čem se mýlí je, že tuto činnost považuje za správnou a žádoucí. Připodobnil bych to otvírání dveří hrubou silou, vyrážením. A byt kde se vyráží dveře těžko je špatný, protože vyrážet dveře je normální a je to potřeba dělat často.

gll

Re:Python - zbožňovaný lidmi?
« Odpověď #404 kdy: 15. 12. 2017, 14:07:31 »
Vždyť děláš to samé ohledně výhod dynamického vs. statického programování. Ty já nevidím vůbec žádné, naopak mi to na jinak příjemném pythonu silně vadí. Kdybychom měli náš středně velký firemní projekt s 10 tis. třídami a 35tis. commity v pythonu místo v javě, už nám z toho dávno hráblo a firma by dávno zkrachovala. Takhle to na pohodu zvládá vyvíjet pár lidí a požadavky na změny jsou od byznysu takřka každý den od r. 2000.

A neměl by ten středně velký projekt, kdyby byl psaný jak se píše v Pythonu, místo 10 tis. tříd třeba jen 2 tis. tříd? Ty jazyky jsou opravdu jiné a tak by se k nim mělo přistupovat. Pěkné porovnání je třeba jak napsat nějakou síťovou service ve Twisted a v Tornadu. Twisted je v podstatě Java, ale syntaxe je Python, použití je takové... těžkopádné (pro Pythonistu, Javista na to bude koukat jinak). V Tornadu je kód dělající to samé úspornější.

nejvíc minimalistické je asi gevent. To nahradí standardní IO funkce za neblokující.

v moderním pythonu by se asi mělo používat async await. Buhužel existuje asyncio, curio, trio ....

Nejednotnost asynchronních knihoven není nic, čím by se Python mohl chlubit.