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 - Filip Jirsák

Stran: 1 ... 130 131 [132] 133 134 ... 375
1966
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 22. 03. 2020, 15:12:59 »
4. Klikni si na "Files   jar (315 KB)" a stahni si to Jarko.
Ne, to rozhodně ne. O závislosti se stará buildovací nástroj, takže se jen v konfiguraci projektu uvede, že projekt závisí na nějaké knihovně, a buildovací nástroj už se sám postará o stažení té knihovny a závislostí.

A balíčky pro Javu se nehledají Googlem, ale v repository – např. přes javalibs.com. Tam se vám i pěkně ukáže, jak závislost vložit do Mavenu nebo Gradlu (nebo jiného buildovacího nástroje).

Mimochodem, v tom Gradlu si můžete snadno naprogramovat, aby se vám závislost na tom AWS SDK povýšila skriptem (ať už na ruční postrk, nebo automaticky).

1967
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 22. 03. 2020, 15:06:39 »
1. Pro zakladni rozvrzeni projektu vc submodulu je Gradle 1:1 to same co Maven
2. S tim rozdilem ze Gradle neumi definovat Parenta
3. S tim rozdilem ze Gradle je mene zaboilerplatovany, jenze jaksi za cenu toho, ze clovek nema naseptavani.
4. S tim rozdilem, ze v Gradlovi se da dobre programovat - to je snad ta nejhorsi vlastnost, protoze by to nekoho mohlo napadnout delat. Co potrebujete pri buildu programovat?
Ad 1) Jenom dokud máte prázdný projekt. A vlastně už ani to není pravda, Gradle zavedl rozdělení závislostí na api a implementation, takže konečně tranzitivní závislosti dávají smysl.
Ad 2) Gradle samozřejmě parenta nadefinovat umí. A umí, cokoli chcete – je to jen kód. Takže si můžete parenta udělat, jak chcete – můžete z něj dědit, co chcete, můžete si to parametrizovat, můžete si parenty třeba přepínat, když budete chtít.
Ad 3) IntelliJ Idea v Gradle skriptech našeptávat umí.
Ad 4) To, že můžete v buildskriptu programovat, je obrovská výhoda. Potřebujete to vždy, jakmile nejde jen o nějaký školní projekt. Stačí se podívat, kolik pluginů pro Maven vzniklo. Build chcete upravovat v závislosti na prostředí, kde poběží, chcete tam integrovat informace z VCS, chcete publikovat balíčky a dokumentaci, mimifikovat a komprimovat soubory, podepisovat, a milion dalších věcí, u každého projektu jiné. Když můžete v buildskriptu programovat, nepotřebujete různé šílené CI nástroje, které „naprogramujete“ (ideálně klikáním ve webovém prohlížeči), protože jediné, co od CI potřebujete, je spustit příslušný Gradle task. A co potřebujete si naprogramujete v něm.

1. Zkousel jste si uz zbuildit ten Micronauti Lambda example na Githubu s GraalVM? Vzdyt to je hrozne, kompilace tim Graalem trva snad 3 minuty.
2. Kdyz jsem videl nejaky benchmark, tak to stejne melo pomalejsi cold start nez Node.js lambda.
3. Na takovou monolitickou lambdu rovnou muzete pouzit Spring Cloud Function - nevim jen jestli tu v budoucnu bude podporovat Graal. 
4. Ikdyz to vsechno udelate, tak budete tvorit relativne velke monoliticke lambdy a ja se ptam - proc to do haje radeji rovnou nerozjet jako service v docker kontejneru? Co tim ziskate ze to bude lambda funkce?
Ad 1) Vašemu CD nástroji to nějak vadí, stěžuje si, že mu to trvá 3 minuty?
Ad 2) No jo, jenže Node.js už má za sebou roky optimalizací rychlého startu, GraalVM je ve stavu, že už to jde nastartovat a běží to. Optimalizace teprve přijdou.
Ad 3) a 4) Pokud vytváříte „monolitickou lambdu“, je chyba ve vás, ne v nástrojích.

Výhoda je ta, že mám vše na jedné platformě. Takže můžu mít aplikaci, která se skládá z jednoho nebo více monolitů, kolem se mohou motat mikroslužby a nějaké nárazové prkotiny můžu řešit lambdou. A pořád mám jednu platformu a jeden zdrojový kód, takže můžu sdílet implementaci a přelívat ji tam, kam zrovna potřebuju. Chci vytrhnout z monolitu část a nadělat z ní mikroservisy? Jasně, není problém, nemusím nic programovat znova, jenom implementaci upravím pro jiný způsob běhu. Přestane lambda stačit? Nevadí, udělám z ní mikroservisu.

Jave tim ujel vlak a muj nazor po X hodinach googleni je, ze to jeste nedohnala.
Nemyslím si, že povědomí o současných technologiích lze získat googlením.

A pokud GraalVM nepohne pri rychlosti buildu zadeki, tak ani nedozene.
Jenže rychlost buildu do nativního kódu nikoho nezajímá. Vybral jste tu jedinou operaci, která nebrzdí nikoho důležitého – ani programátory, ani uživatele. Pro programátory je důležitá klasická kompilace do bajtkódu a start aplikace, kompilace do nativního kódu je nezajímá. A pro uživatele je důležitý běh aplikace.

Nicmene reseni b mohlo byt jine, a sice jinaci JVM. V Lambde vam je burt nejaka performance vyjma cold startu. Pomale to muze byt klidne jako python. Hlavne at se ta mrcha lina rychle nastartuje.
Ta jiná VM se jmenuje SubstrateVM a je právě součástí GraalVM. Už teď je start dost rychlý, a věřím, že se bude dál zrychlovat – protože optimalizovat ho dává smysl, na rozdíl od optimalizace rychlosti release buildu.

1968
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 22. 03. 2020, 13:58:51 »
Fuj, tak to radeji prejdu na Python, nez na Gradle.
Proč? Autoři Gradle pochopili, že každý trošku větší projekt si nevystačí s deklarativním popisem projektu. Maven sice neumožnil vyloženě imperativní programování v XML jako Ant, ale v Mavenu se to řeší miliony properties a profilů, takže výhoda deklarativního popisu je ta tam. A sice už se snad Maven zbavil Avalonu (alespoň pro pluginy), ale pořád je utrpení rozšířit build o nějaký kód.

Akorat musim rict, ze Jave docela dost hori koudel pokud jde o Cloud, microservices a serverless architketuru.
Co se vám nelíbí na Micronautu nebo Helidonu? Když to navíc spojíte s GraalVM… Můžete psát mikroservisy nebo lambda funkce, výkon bude už teď nejspíš lepší než u NodeJS a spol. a k dispozici máte celý ekosystém Javy. Javě v tom myslím trochu ujel vlak, ale už je zpět ve hře a má našlápnuto velice slušně.

1969
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 22. 03. 2020, 13:48:00 »
A je to jednodušší a rychlejší než použít botostubs?
Záleží na tom, jak je to API definováno. Pokud můžu použít nějaký nástroj, který mi definici API překlopí do modelu v daném jazyce, je to záležitost jednoho příkazu.

Nicméně jednoduchost a rychlost nejsou jediná kritéria pro vývoj. Existují i projekty, které mají delší životnost než tři měsíce, tam pak získává na vrchu kritérium udržovatelnosti.

1970
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 22. 03. 2020, 12:05:10 »
Tak s tim co jste napsal uplne nesouhlasim, AWS ma api definovane JSONem podobne, jako jina API jsou definovana treba XSDeckem. V Jave je to tradicni uloha na vygenerovani modelovych trid v dobe kompilace, v samostatnem maven modulu.
Nezáleží na tom, jak je to API definované, jestli WSDL, OpenAPI nebo nějak jinak. Pokud je statické, můžete si ho namodelovat v jakémkoli staticky typovaném jazyce (v dynamicky typovaných jazycích samozřejmě také). Pokud je to API dynamické, není to podle mne API – protože implicitní vlastností rozhraní je to, že se nemění. proto proti němu můžu programovat a spolehnout se, že ten můj kód bude ještě zítra s tím API fungovat. Na druhou stranu, pokud je API dynamické jenom tím, že se tam přidávají nové služby,není problém mít ho namodelované ve staticky typovaném jazyce – a když budu chtít tu novou službu využít, vytvořím si příslušný model.

Jenze pochybuju, ze v Pythonu na tento ukon maji dostatecne robustni nastroj jako je Maven a generatory.
Když se tak bijete za to, jak je ekosystém Javy moderní, doporučuju něco tak zastaralého jako Maven přestat nazývat „robustním nástrojem“ a podívat se na nástroje, které patří do roku 2020 – třeba Gradle.

1971
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 22. 03. 2020, 11:16:38 »
To znamená, že Java vůbec neumí takto dynamické API vytvořit? Představ si, že máš API, které nabízí různé funkce() třeba podle regionů, podle objednaných služeb, podle různých kombinací služeb atd. Takové API nelze vytvořit staticky, protože bude pro každého individuálního zákazníka jiné, tudíž ti nebude fungovat ani klasické našeptávání. Takže buď by se to muselo řešit nějakým pluginem do konkrétních IDE a ostatní IDE mají smůlu nebo bys i v Javě potřeboval něco jako botostubs. Pokud Java neumožňuje vytvořit dynamické API, tak to považuješ za výhodu?
To, čemu říkáte „dynamické API“, se normálně nazývá „dynamické typování“. Java používá statické typování, tj. typy jsou zafixované a kontrolují se už v době překladu. Pokud se API takhle často mění, je nesmysl pokoušet se na to napasovat statické typy (protože kompilátor vám jeden den zkontroluje, že máte typy správně, ale druhý den už to stejně nebude fungovat, protože se API změnilo). Ve světě staticky typovaných jazyků se tedy na tu proměnlivou část API budete dívat jako na data. Ostatně vy sám jste to jako data popsal – regiony nebo objednané služby jsou data, ne výkonný kód.

A upřímně řečeno, nevidím žádný přínos dívat se na ta data jako na kód a chtít po IDE, aby mi našeptávalo – když stejně zítra takhle napsaný kód nemusí fungovat.

1972
Sítě / Re:Nezabezbečené spojení k Wi-Fi routeru
« kdy: 21. 03. 2020, 23:02:09 »
FQDN nemusí poskytovat ISP, může ho poskytnout výrobce routeru. Tu adresu pak může natisknout k údajům jako MAC adresa nebo výchozí heslo pro WiFi. Takže uživatelé konečně nebudou muset řešit nějaké IP adresy. Už dnes to někteří výrobci routerů dělají tak, že pro úvodní konfiguraci zadáváte nějaké FQDN od výrobce (ale zatím je to jedno univerzální jméno pro všechny).

Veřejnou IP adresu router mít nemusí, vystavení certifikátu opět může zprostředkovat výrobce routeru. A nemusí to být certifikát od LE, ale certifikát vystavený výrobcem – i když to by nejprve chtělo v prohlížečích zprovoznit restrikce CA na konkrétní podstrom DNS, protože zrovna výrobcům routerů bych do ruky nesvěřoval certifikát, kterým můžou podepsat libovolnou doménu…

U ostatních zařízení by to mohlo být stejné, ale tam bych jako lepší viděl řešení, kdy jim to vystavení certifikátu zprostředkuje router v rámci připojení do sítě.

1973
Sítě / Re:nezabezbecene spojenie
« kdy: 21. 03. 2020, 10:23:35 »
Ale teď vážně, co zkusit se připojit přes ethernet kabel přímo do routeru z notebooku? Nebo reset routeru do továrního nastavení a znova vše nakonfigurovat.
Nezačínejte slovy „teď vážně“ humorný příspěvek. Tohle tu hlášku prohlížeče opravdu nijak neovlivní, ta říká jenom to, že spojení s routerem je pro nešifrovaném HTTP, nikoli po šifrovaném HTTPS.

Je to jak píše Petr Krčmář. Typlime, vám nezbývá, než to risknout, protože ten router nemá důvěryhodný certifikát. Takže i kdybyste se k němu připojil přes HTTPS (pokud by to podporoval), bude vás prohlížeč varovat před nedůvěryhodným certifikátem.

To je bohužel nevýhoda toho, že výrobci routerů si ještě stále nevšimli, že prohlížeče vyžadují HTTPS. A nejspíš jim to ještě pár let bude trvat, než na to zareagují. Technické řešení to má, jen je potřeba něco drobně do těch routerů vyvinout, a do toho se výrobcům nechce.

1974
Sítě / Re:DHCP problém
« kdy: 20. 03. 2020, 21:15:00 »
Jste si jistý tím, že na tom WiFi routeru je ten DHCP server opravdu vypnutý? Také by byla možnost, že se k tomu WiFi routeru připojí nějaké zařízení se zapnutým DHCP serverem – ale to vidím jako málo pravděpodobné, protože by přes WiFi nejspíš nestíhal odpovědět rychleji, než ten Huawei.

Každopádně si nemyslím, že by ten Huawei začal přidělovat IP adresy z jiného rozsahu (zvlášť když to vyřeší vypnutí WiFi routeru), spíš je prostě jiný DHCP server s odpovědí rychlejší.

1975
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 19. 03. 2020, 13:52:52 »
Tohle uz zavani nejakou kognitivni poruchou, fakt si to po sobe precti. V mem svete nejsou zadne dobre a spatne jazyky (kdyz pominu vystrelky typu Whitespace, ale ty nikdo nemyslel vazne - bavme se o mainstreamu). Jelikoz se Java pouziva takto siroce, tak na ni asi nebude VSECHNO SPATNE a ani jsem nikdy nepsal, ze je "cela spatne" - pokud ano, tak ukaz odkaz. Zbytek nekomentuju, to fakt nema smysl.
Já jsem ale nikde nepsal, že vy tvrdíte, že je na Javě všechno špatně. Mne jenom zajímalo, zda lidi označujete za ovečky opravdu jenom proto, že používají jazyk, který nemá přetěžování operátorů. Myslel jsem, že se třeba dozvím něco zajímavého, že se na věc třeba umíte podívat v širších souvislostech a vaše kritika bude podnětná. Teď už víme, že to tak není, že už jste své argumenty vyčerpal. Takže myslím, že už není důvod v této diskusi pokračovat.

1976
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 19. 03. 2020, 13:27:36 »
Je to jako mluvit do dubu. Oveckou jsem tu jmenovite oznacil koho? No nikoho. Ze napisu, ze je neco chyba, je samozrejme vyjadreni meho nazoru, pisu ho tu stejne jako Ty. Obhajujes neobhajitelne.
Jasně, takže vaše vyjádření zde adresovaná ovečkám píšete proto, že si myslíte, že tu v diskusi žádné ovečky nejsou.

Navíc to nic nemění na tom, že jste pro takové označení neuvedl žádný důvod – jediné, co se dalo z vašeho textu pochopit, že tak označujete ty, kteří mají jiný názor.

Ze napisu, ze je neco chyba, je samozrejme vyjadreni meho nazoru, pisu ho tu stejne jako Ty.
Jenže vy jednu takovou věc, která je podle vašeho názoru chybou, používáte jako argument pro to, že je špatně celý jazyk, a kdo by byl jiného názoru, toho označíte za ovečku. Mně je to jedno, jenom jsem vám vysvětloval, proč je váš pohled na svět omezený.

1977
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 19. 03. 2020, 12:49:13 »
Takže to navrhneme špatně, ale aspoň že to pojede... A co to třeba neimplementovat radši vůbec než blbě?
Jenže ono to není navržené špatně. Je to navržené nejlépe, jak bylo v dané situaci možná, nebo se to k tomu ideálu dost blíží. A to je rozhodně lepší, než nic. Ono vytvářet každý půl rok nový jazyk bez zátěže minulosti je sice hezké, ale v praxi se tyto jazyky jaksi neuchytí.

Mimochodem, Optional nijak nebrání Javě někdy v budoucnosti implementovat opravdové non-null typy, pokud bude jasné, jak to udělat co nejlépe. Takže je to přesně tak, jak chcete – než udělat špatně non-null typy v jazyce, to raději v základní knihovně poskytneme Optional, který spoustu případů řeší. Tím si nezablokujeme možnost udělat to v budoucnu lépe přímo v jazyce.

1978
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 19. 03. 2020, 12:42:49 »
Ja jsem nekoho oznacoval za ovecku PROTO, ze nepasuje do meho videni sveta?
Ano, přesně tak. Neuváděl jste žádné důvody, jenom prostě když se vám něčí postoj nelíbí, označujete ho za ovci.

Ne, u me je ovce ten, kdo nekriticky prijima tvrzeni nejake autority, at je autoritou Steve Jobs, Linus Torvalds nebo Guido van Rossum.
Nikdo takový tu ovšem není.

Co presne bys chtel slyset? Pokud napriklad uz davno existuje koncept pretezovani operatoru a tvurci Javy se presto rozhodnou si vyresit aritmetiku jmennymi metodami pro kazdy ciselny typ krome par vyvolenych, je to u me spatny navrh a ne chybejici featura.
Chtěl bych slyšet nějaké odůvodnění pro vaše tvrzení. Ne další a další tvrzení, ale aspoň jedno tvrzení odůvodnit. Jinak to totiž vypadá, že jen nekriticky přijímáte tvrzení nějakých autorit.

Napsal jste, že Kotlin postrádá velkou část špatných vlastností Javy. Nechtěl jsem po vás nic jiného, než abyste napsal dvě tři špatné vlastnosti Javy, které Kotlin nemá.

Že je přetěžování operátorů dobrý vynález je váš názor, já vám ho neberu. Ale není to nic objektivního, stejně tak existují dobré důvody proti přetěžování operátorů. Tvůrci jazyka si musí vybrat jeden směr a toho se držet – nemůžete mít jazyk, kde bude možné si vybrat, jestli operátory půjde nebo nepůjde přetěžovat.

Na tyhle reci fakt nejsem zvedavy, priste si to prosim odpust.
Tak vy si odpusťte ty kecy o ovečkách, „nadšení“ a chybách, které spočívají jenom v tom, že si někdo dovolil mít jiný názor, než vy.

1979
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 19. 03. 2020, 11:15:09 »
Docela by me zajimalo, kde beres ten pocit, ze nekdo jiny ma omezeny pruzor a Ty ho nemas.
Každý má nějak omezený průzor, ale záleží na tom, jak moc. Já nemám potřebu označovat ostatní za ovečky jenom proto, že nepasují do mého vidění světa, nevyhýbám se diskusi. Neargumentuju tím, že jsem včera četl komentáře na Hacker news.

Napis neco noveho a necham si rozsirit obzor, zatim jsi to neudelal.
Ono to bylo tak, že vy jste vyslovil nějaké tvrzení o Kotlinu a Javě, já jsem se dotázal, z čeho to tvrzení vychází, a odpovědi jsem se zatím nedočkal. Takže zatím nemám, na co bych reagoval.

Navíc takhle to nefunguje. Že vy si necháte rozšířit obzory. Že se budete dívat svým tunelovým viděním, co je mimo vaše zorné pole neexistuje a co je v něm, to už znáte a není to nic nového. To, jestli se budete dozvídat nové věci, záleží jenom na vás, nikdo jiný vám to zařídit nemůže. A zařídíte to jedině tak, že se na věci budete dívat v souvislostech a nebudete apriori odsuzovat vše, co se vám zrovna nelíbí.

1980
Vývoj / Re:Doporučte programovací jazyk pro Windows
« kdy: 19. 03. 2020, 10:14:18 »
Nemam potrebu slovickarit co je chybejici featura a co je nedobry navrh konkretni veci. Shodou okolnosti jsem vcera na Hacker news cetl komentare k nove Jave. Nemaji dobre vyresene null hodnoty, Optional je navrzeny blbe. Spatne je, ze nema Java rozumnou podporu pretezovani operatoru atd. atp. Klidne si s oveckami notuj, jak jsou vyvojari Javy mazani, ze cekaji 10 let nebo kolik, nez prosadi zakladni veci, ktere mainstream davno vstrebal, ja mam na to jine hodnoceni, tohle nema smysl diskutovat.
Na vašem komentáři je krásně vidět efekt tunelového vidění. Vidíte jenom svůj uzounký průzor – a neuvědomujete si, že už za půl roku uvidíte něco jiného, a co dnes bylo úžasné, bude za půl roku pasé.

Ano, pro jazyk, který by vznikl v roce 2019 na zelené louce, je Optional navržené blbě. Ovšem Java nevznikla v roce 2019, její obrovskou sílou je rozsáhlý ekosystém. A Optional bude fungovat i s třídou z knihovny napsané pro Javu 1.0.

Ale nebudu vás přesvědčovat, vy máte jasno, diskutovat nechcete, kdo má jiný názor, je pro vás ovce. Holt jste uzavřený ve svém vlastním světě a bojíte se podívat ven. To je vaše věc.

Stran: 1 ... 130 131 [132] 133 134 ... 375