C# nebo Python?

wtf

Re:C# nebo Python?
« Odpověď #75 kdy: 26. 01. 2014, 13:49:08 »
Kefalin a ci tak predstavujete pod "drahe na vyvoj"?

prototypovani, protoze vas k vyvoji a rozvoji aplikace, ktera existuje 10 let jeste nikdo nepustil, protoze mate pro takovou situaci zcela nekompatibilni uvazovani?


Logik

  • *****
  • 1 022
    • Zobrazit profil
    • E-mail
Re:C# nebo Python?
« Odpověď #76 kdy: 26. 01. 2014, 20:27:27 »
Proč ty invektivy? Chceš tvrdit, že vývoj většiny dnes psaných komerčních softů bys dokázal zařídit v Haskellu stejně draho, jako i třeba v PHP nebo Pythonu nebo C#? To, že existují i software, u kterého se vyplatí investovat do dlouhodobé udržovatelnosti kódu, verifikovatelnosti atd... je přeci jasné - ale je i jasné, že takových kódů je v komerční praxi menšina.

To, že jsou lépe placené je pravda - ale to je právě proto, že je složitější je zvládnout. Proto je blbina tvrdit, že enterprise jazyky jsou lepší než bastlířské. Nejsou. Jsou na něco dobré na něco ne. Akorát komerční praxe a zájem o programátory ukazuje, že těch věcí, kde se firmám vyplatí je používat je menšina.


andy

Re:C# nebo Python?
« Odpověď #77 kdy: 26. 01. 2014, 23:23:42 »
Tenhle argument mi trochu připadá ve stylu "nemá smysl učit se hrát na housle jako Perlman". To, že byste byl lépe placený je pravda - ale to je právě proto, že je složitější se to naučit. Proto je blbina tvrdit, že hrát virtuózně na housle je lepší než hrát jenom slušně. Není. Je to na něco dobré a na něco ne. Akorát komerční praxe a zájem o houslisty ukazuje, že těch věcí, kde se firmám vyplatí najímat virtuozy je menšina.

Množství řádek kódu v Haskellu se nijak diametrálně neliší od počtu řádek kódu v pythonu. Jenže haskell na tohle není moc enterprise jazyk, protože má sice vynikající typový systém, ale mizernou podporu pro struktury a moduly (a databáze...). Ale těch jazyků je víc a zvažuju, že pro příští projektík zkusím třeba Scalu (nebo možná Haskell s esqueleto...).

Logik

  • *****
  • 1 022
    • Zobrazit profil
    • E-mail
Re:C# nebo Python?
« Odpověď #78 kdy: 28. 01. 2014, 10:20:13 »
Ale já přeci nikde netvrdím něco o umění hrát. Já celou dobu hovořím o nástrojích. A tam by opravdu blbost byla: vyrábět pouze housle pro virtuosy, do jejichž pořízení musí člověk investovat několik milionů.

Druhá věc pak je, že to není přesné přirovnání, protože to není tak, že např. python je nástroj pro začínající hráče a haskell pro virtuosy. Každej jazyk má trochu jiný přednosti a tak se dají najít situace, kdy je vhodnější jeden nebo druhej (pomíjím teda PHP, který má nedostatků přehršel, ale výhody aby člověk pohledal, snad jen Ti levní vývojáři a tedy rychlá křivka učení ;-)).

Radkem prezentovaný výhody jazyků typu formální verifikovatelnost atd... jsou prostě vlastnosti, které člověk pro běžný vývoj nepotřebuje. A za to, že tam ty vlastnosti jsou, se nějak platí. Např. tím, že když máš striktní typový systém, tak bývá vhodné na začátku si nějak promyslet jak teda budou ty typy v danym případě vypadat. A to se např. nemusí hodit do agilních metodik, kdy začínáš psát slona a výsledkem je růžovej robotickej vysavač. (To, že to i v agilních metodikách často pomůže a že problém agilních metodik je mj. blivajz, co z nich leze, nepopírám, vše má + a -). Statická kontrola někdy zdržuje při mockování pro účely testů apod...

Další věc je ta, na kterou si přesně narazil s Haskellem. Je krásné být virtuos na liru, ale když pak neseženeš noty a ani se nebudeš mít od koho zdokonalovat, může Ti být houby platné, že na liru zahraješ víc, než na housle. To, že jazyk má rychlou křivku učení zpravidla znamená, že pro něj existuje více zdrojů, více knihoven atd...

O výše uvedené ilustrace se samozřejmě můžem zas dokola hádat, ale není to to podstatné, co tvrdím. A rozhodně tím nechci tvrdit, že je statická typová kontrola špatná. Není, je dobrá a užitečná, jen má jako každý nástroj své limity a nevýhody. To, co tvrdím, je, že to, že v komerční praxi převažují některé jazyky (byť jsou to třeba jazyky dle akademických kritérií méněcené) není blbostí komerčních programátorů, ale že to má své důvody.