Zobrazit příspěvky

Tato sekce Vám umožňuje zobrazit všechny příspěvky tohoto uživatele. Prosím uvědomte si, že můžete vidět příspěvky pouze z oblastí Vám přístupných.


Příspěvky - Mirek Prýmek

Stran: 1 ... 163 164 [165] 166 167 ... 618
2461
Vývoj / Re:Node.js a multiplexed IO obecně
« kdy: 02. 05. 2017, 13:40:44 »
Radši nezacházej moc daleko do identit, nebo na tebe vytáhnu Theseovu loď   ;)
Klidně, to mi nedělá větší problémy. Víc by mě znechutilo, kdybys mi chtěl začít povídat o substanci a akcidentech ;)

2462
Vývoj / Re:Node.js a multiplexed IO obecně
« kdy: 02. 05. 2017, 13:34:24 »
A opět, neni to divnost jazyka, je to jenom kompletní ignorace se ho alespoň v mezích naučit.
Pointa je v tom, že ne každý má čas a chuť se učit krávoviny, které nedávají žádný smysl.

2463
Vývoj / Re:Node.js a multiplexed IO obecně
« kdy: 02. 05. 2017, 12:22:56 »
Možná by se situace vyjasnila, kdyby se místo názvu "ekvivalence" operátoru === zde v diskusi používal název "identita".
To by situaci mohlo ještě zhoršit, protože pojem "identita" se obvykle používá pro funkci (x) -> x. Takže kdyz už, tak "testování identity".

Ale jinak jsi dobře trefil hřebíček, páč programovací jazyky, jejichž tvůrci neberou drogy, mají dva operátory - jeden testuje shodnost hodnot a druhý případně identitu. Tak to nejspíš v JS mysleli, akorát to totálně zprasili.

Ten první operátor by právě vracel
Kód: [Vybrat]
new Bool(true) == new Bool(true) -> true

2464
Vývoj / Re:Node.js a multiplexed IO obecně
« kdy: 02. 05. 2017, 12:09:33 »
Protokoly a interfaces z podstaty neobsahují implementaci, pravděpodobně máte na mysli "interfaces" s implementací, což jsou vlastně ojebané traits/mixins. O tom tu už řeč šla, to není třeba znovu protřepávat.
Ne, mám namysli protokoly z Elixiru a interfjsy z Go. Skládají se z definice a implementace. Že definice obsahuje implementaci jsem netvrdil.

2465
Vývoj / Re:Proč je Go tak pomalý?
« kdy: 02. 05. 2017, 12:05:26 »
Je prča sledovat, jak lidi vítězoslavně přicházejí na dávno známé věci. Ale proč číst počítačovou literaturu ze 70. a 80. let, že... To je přece doba kamenná.
Co konkrétně máš namysli tady u toho, o čem jsme se bavili? To je spíš o zkušenosti než o nějaké teorii imho.

Běžný Pepa (nebo Míra)
Já ti dám Míru, ty darebáku! ;)

2466
Vývoj / Re:Proč je Go tak pomalý?
« kdy: 01. 05. 2017, 19:14:54 »
Naopak, bez DRY musíš měnit jednu věc na více místech, snadno něco přehlédneš.
Mám komponenty A a B. Jsou dvě možnosti, co se v budoucnu může stát: buď chci něco změnit v obou komponentách, nebo chci naopak něčím jednu od druhé odlišit. V prvním případě je lepší, když je ten dotčený kód v nějakém společném "rodiči" (ať už to znamená cokoli, ne nutně dědičnost), ve druhém případě je lepší, když je v obou ten stejný kód zkopírovaný.

Navíc otrocké používání DRY spojené s OOP megalomanií vede k vytváření superobecných komponent, které jsou zbytečně komplikované a stejně nejsou nikdy znovupoužité, takže vůbec nic nepřináší, jenom komplikují a znepřehledňují kód, tj. zdražují budoucí úpravy (viz https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition )

Protože člověk nemá křišťálovou kouli, neví, jestli pro něj do budoucna bude lepší složitější abstraktnější nebo naopak konkrétnější přímočařejší kód. Neexistuje pro to žádné obecné pravidlo. Proto nemám rád, když někdo DRY principem příliš šermuje.

Na této sránce https://appliedgo.net/generics/ doporučují copy pastovat nebo generovat kód nějakými externími nástroji. Takový projekt bych nechtěl udržovat.
Ano, to je dobrá stránka, mám ji v Pocketu ;) A taky je to tam dobře vysvětleno, proč to není taková blbost, jak si spousta lidí myslí:
Citace
Every time you think that you need to create a generic object, do a quick Litmus test: Ask yourself, “How many times would I ever have to instantiate this generic object in my application or library?” In other words, is it worth to construct a generic object when there may only be one or two actual implementations of it? In this case, creating a generic object would just be an over-abstraction.

Máš nějaký příklad lepší úlohy? Souhlasím, že ty výsledky nejsou moc objektivní. Nepoužívají dostupné knihovny.
Nemám žádný příklad úlohy. Každé zadání je jiné. Z principu nemůže existovat žádný benchmark, který by určoval, který jazyk je obecně nejlepší.

2467
Vývoj / Re:Proč je Go tak pomalý?
« kdy: 01. 05. 2017, 17:51:25 »
... v kazdym pripade je zajimavy si poslechnout par nazoru od samotnych lidi z googlu co ho musi pouzivat ... a ted nemyslim marketing
Měl bys tip na nějaký link, co stojí za přečtení?

2468
Vývoj / Re:Proč je Go tak pomalý?
« kdy: 01. 05. 2017, 15:08:38 »
Jiste, proti slozitosti nastroju nemuzu nic namitnout, ale neberu to jako duvod, proc udelat "hloupy" jazyk. Prace stroje je o nekolik (desitek?) radu levnejsi, nez prace programatora. Pokud mam jazyk s nizkou mirou abstrakce, jako Go, tak je programator odsouzen k opakovani psani a cteni boilerplatu.
Souhlasím. Ale nevidím to tak příkře jako ty. Kdybych chtěl propagovat opak: přílišná volnost v úrovni abstrakce a přílišný důraz na DRY vede k sice kratšímu, ale o to nečitelnějšímu kódu. Navíc otrocká implementace DRY může taky způsobit, že všechno centralizuješ/abstrahuješ a pak máš velké problémy jednu část přizpůsobit/poupravit. Mám s tímhle konkrétní špatnou zkušenost z jednoho projektu - všechno bylo vyřešeno tak abstraktně/jednotně/DRY, že se kdokoli pak bál na cokoli šáhnout, aby nerozbil něco úplně jinde...

Osobně mám třeba docela špatné zkušenosti s tím, co produkují Rubyisti. To jsou takové kejkle s metaprogramováním, monkeypatchingem a jánevímčím (because we can!), že pak říct, co a přesně jak doopravdy ten kód dělá, je nadlidský úkol. Ideální řešení všeho je samozřejmě DSL (because we can!)

Podobný, ale o několik řádů lepší je to s haskellisty - taky si libují v abstrakcích, kde prokousat se z abstraktní roviny až dolů není žádný med, ale aspoň haskellisti bývají nadprůměrně chytří, tak to aspoň dělají dobře.

C neni jaksi zamyslen jako univerzalni jazyk, nic co by melo nahradit Javu, Python ci JavaScript.
Tak to potom asi moc nechápu. V C je napsaná snad největší množina všeho možného softu. Od GUI po matematické knihovny...

Rozhodne nesouhlasim s tim, ze uzivatelska generika nejsou nutna.
Všechno je jenom otázka ceny. Když je nemám, platím nějakou cenu, kterou mi může vyvážit něco jiného... Ale jinak v tomhle taky souhlas: osobně by mi bylo sympatičtější, kdyby generika měl.

Videl jsem, jak se "resi" generika. Copy/paste, potlacenim typove kotroly ci generatory kodu.
Souhlas, je to zoufalost.

2469
Vývoj / Re:Proč je Go tak pomalý?
« kdy: 01. 05. 2017, 14:38:14 »
I tvurce sam rika, ze hlavnim cilem je, aby se podprumerny programator (clovek bez zkusenosti - student po skole) byl to rychle schopen naucit.
Nevím, jestli's to trochu neposunul.

Citace
The key point here is our programmers are Googlers, they’re not researchers. They’re typically, fairly young, fresh out of school, probably learned Java, maybe learned C or C++, probably learned Python. They’re not capable of understanding a brilliant language but we want to use them to build good software. So, the language that we give them has to be easy for them to understand and easy to adopt.
http://nomad.so/2015/03/why-gos-design-is-a-disservice-to-intelligent-programmers/#fn-601-1

Chtít, aby byl jazyk tak jednoduchý, aby v něm byl "normální" programátor schopný rychle psát kvalitní kód, je imho docela dobrá myšlenka. Je to lepší než když vymyslím skvělý jazyk, který ale lidi nepochopí a tak radějí píší (třeba) v tom Pythonu. Mimo to, jednodušší jazyk znamená taky např. rychlejší kompilaci, snadnější vytvoření nástrojů, snadnější refaktoring, snadnější typovou inferenci (vím s jistotou, že bude fungovat dobře vždycky) apod.

Myslím, že to není tak blbý, jak jsi to vykreslil.

5x mini-jazyk trpici vaznymi nedostatky typu Go.
Žádný "vážný nedostatek" jsi ale nezmínil. Absenci uživatelských* generik tak můžu chápat. Anebo ne. Co dál?

Existují poměrně rozumné argumenty (já s nima nesouhlasím, ale jsou respektuhodné), že uživatelská generika zas tak nutná nejsou. Koneckonců třeba C taky generika nemá - je to tímpádem podřadný jazyk pro blbečky?

* afaik Go generika má ve standardní knihovně - akorát si nemůžu vytvořit svoje

Boileplatu jako v Jave
Míň minimálně díky typové inferenci.

2470
Distribuce / Re:Proc mame tolik distribuci Linuxu?
« kdy: 01. 05. 2017, 13:13:13 »
Zkus se proto podívat na FreeBSD, to je vyvíjeno univerzitou v Berkeley.
Ne, není. S Berkeley nemá FreeBSD nic společného, jenom historicky vychází z Unixu, který Berkeley kdysi vyvíjela (skončila s tím před 22 lety). Dnešní FreeBSD vytváří z části dobrovolníci a zčásti lidi placení nadací FreeBSD Foundation, zčásti přispívají kódem firmy, takže zdroje jsou úplně stejné jako u Linuxu (až na jejich poměr).


2471
Vývoj / Re:Proč je Go tak pomalý?
« kdy: 01. 05. 2017, 09:08:41 »
A o genitivu jsi už slyšel?  :P
Ano, ale správně se to píše genitÁL, pane suvenýr!

2472
Vývoj / Re:Proč je Go tak pomalý?
« kdy: 01. 05. 2017, 01:32:51 »
nejlepší je učit se jej z prací Pika
https://en.wikipedia.org/wiki/Pika bych určitě nedoporučoval, to není ani hlodavec! Jedině z prací https://cs.wikipedia.org/wiki/Pytlono%C5%A1ovit%C3%AD !

2473
Vývoj / Re:Proč je Go tak pomalý?
« kdy: 01. 05. 2017, 01:27:46 »
No a když už jsme teda u toho, proč není Go transofrmovatelný do C, tak neexistuje nad Céčkem nějaká jazyková OOP nadstavba, která by přío generovala Céčkový kód a až ten by se pak kompiloval?
To je naivní a (obecně) chybný předpoklad, že kdyby se z X generovalo "něco" v "tom rychlém" C, tak by z toho plynulo, že by bylo rychlé X.

Před lety jsem takový projekt implementující OOP do C viděl, bohužel si již nevzpomenu na jméno. Nezkoušel jsem, takže o něm nemohu nic moc říci. Tehdy byl v experimentálním stavu a přišlo mi zbytečné použít jej místo použití malé podmnožiny C++.
Myslíš https://wiki.gnome.org/Projects/Vala ? Ten je afaik už docela dlouho (polo)mrtvý.

Jaký máte vůbec názor na Golang?
Jazyk s jasnu agendou/myšlenkou, kterou velmi slušně naplňuje. Na můj vkus trochu moc jednoduchý. Tak mi přijde z pročítání materiálů, osobně jsem v něm nic nedělal.

Mezi performance testy je i binární strom a to mi opravdu nepřijde jako nějaké nefér srovnání výkonu.
Je to srovnání hrubého výkonu - jde o spíš jednodušší number crunching. O vhodnosti pro konkrétní praxi to nemusí vypovídat vůbec nic (např. pokud jazyk umožňuje snadno paralelizovat i složitější programy - tj. líp vytížit víc jader CPU, vhodněji cachovat atd. atd., může to být v praxi větší výhoda než samotný hrubý výkon).

bez podpory pro procedurální programování
To si teď nějak neumím představit - co konkrétně by v tom jazyce nebylo a jak a čemu by to pomohlo? :)

Ještě existuje jakýsik Rust, prý C++ gona right, ale ten jsem nezkoušel.
Rust jsem viděl z rychlíku tady na Root.cz a na prezentaci Pavla Tišnovského a vypadá fakt dobře. Ve finále ale stejně bude záležet na velikosti komunity. Bez ní bude těžko použitelný i kdyby to byl svatý grál designu programovacích jazyků... a z toho bych měl obavu, bohužel.

2474
Vývoj / Re:Node.js a multiplexed IO obecně
« kdy: 29. 04. 2017, 14:00:31 »
Třebaže je JS OOP tak super, zavádí se v ES6 vcelku normální podpora tříd.
Nerekl jsem ze je super. Jenom ze jednoduchej princip "mas mnozinu pojmenovanych funkci a kdyz se metoda nenajde tady, vyhleda se automaticky jinde" je v pohode, jednoduchy, snadno pochopitelny. Lepsi nez kdyby si vymysleli zas nejakou ujetou implementaci OOP, ktera by byla prekombinovana a pritom nesplnovala zakladni pozadavky podobne jako to dojebany == :)

Viz https://www.lua.org/pil/16.html - proc ne?

2475
Problém je tedy najít něco, kde se otisk nahraje jen jednou na terminálu nebo u pc a bude fungovat na všech dveřích + podpora levé i pravé ruky, protože stačí říznutí do prstu a nedostane se dovnitř. V sw export dat alespoň v xml. Nějaká web administrace, aby vedoucí mohl zjišťovat, kdo tu je a kdo není. Plánovač směn (to už se dá dělat jako modul za příplatek apod.).
Nebo udělat hw + základní sw a prodávat jeho zdrojáky, protože dost firem má specifické požadavky a to si můžou udělat sami.
Ta funkce, co hledám, je: možnost nastavovat každému denně přesčasy individuálně. Všechny sw umí buď zapnout přesčasy nebo vypnout přesčasy, ale nastavit to ručně denně každému už nejde (protože někdo se třeba denně 2 hodiny sprchuje a to mu firma logicky platit nechce).
No jo, jenže to's
1. popsal systém, kterej bych v jednom člověku fakt dělat nechtěl (ďábel je v detailu - už jenom nad tím plánováním směn můžeš strávit mládí, aby to mělo dobré UX a odpovídalo legislativě)
2. i když splní speciální požadavky tvoje, bude bambilion jiných firem s jinými požadavky (ta opensource varianta by to teoreticky mohla řešit, ale v praxi dopsat tam nějakou netriviální funkcionalitu stejně bude pro někoho, kdo to nepsal, tak složitý, že by udělal líp, kdyby dal těch 100kkč).

Stran: 1 ... 163 164 [165] 166 167 ... 618