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 ... 11 12 [13] 14 15 ... 375
181
Studium a uplatnění / Re:ChatGPT a AI pro vývojáře
« kdy: 15. 02. 2023, 12:58:34 »
Ty floaty nejsou moc dobrý příklad. Tam se nějaký nedeterminismus hledá dost těžko.
Jenže řeč nebyla jen o nedeterminismu, ale Tomas-T to rozšířil na všechny případy, kdy se kvůli zlevnění akceptuje občasný „chybný“ výsledek.

182
Server / Re:Domaci server a nefuncna domena
« kdy: 15. 02. 2023, 12:56:29 »
Provozovat něco veřejného na dynamicky přidělované IPv4 adrese není dobrý nápad – určitě tam budou výpadky, když dojde ke změně IPv4 adresy. Používat to pro osobní přístup (na domácí NAS, ke kamerám apod.) je OK, ale pokud k tomu mají mít přístup i cizí lidé, umístil bych to raději na nějaký hosting, na hostovaný VPS apod.

Jinak pro tu doménu weblandic.com je v DNS opravdu veřejná IPv4 adresa, v tom by být problém neměl. Otázka je, zda ISP neblokuje příchozí provoz (buď veškerý, nebo jen vybrané porty) na dynamicky přidělované adresy. Ať už jako prevenci některých typů útoků, nebo záměrně přesně kvůli tomu, o co se snažíte vy – aby lidé nepoužívali dynamické DNS pro přístup z venku a připlatili si za pevnou IPv4 adresu. Začal bych dotazem na ISP, zda nějaký příchozí provoz blokuje nebo ne.


183
Studium a uplatnění / Re:ChatGPT a AI pro vývojáře
« kdy: 15. 02. 2023, 11:32:16 »
Já mám pocit, že se tenhle stochaisticný přístup k návrhům začne brzy dostávat/asi už dostává i do HW.
Když dáte marketingu vybrat zda chce, aby procesor spočítal se 100% jistotou že 1+1=2 za 10 ms nebo do s 99,99999% pravděpodobností odhadl za 1 ms, co si asi vybere? 10x rychlejší procesor. ;D
I kvantové počítače jdou tímhle směrem.
Jako že by se třeba prodávaly paměti, které nemají kontrolní součty, takže občas může dojít (třeba vlivem kosmického záření) k překlopení bitu? Nebo že by se desetinná čísla reprezentovala tak, že půjde uložit jenom vybraná čísla a ostatní se „zaokrouhlí“ na nejbližší reprezentovatelné číslo?

Ale ono to tak je, že? To, že se dělají kompromisy, aby bylo nějaké řešení levnější (a tím třeba vůbec realizovatelné), se dělá odjakživa. Ve skutečnosti se dříve takových kompromisů dělalo daleko víc, protože hardware toho zvládal mnohem méně. Třeba dříve se běžně texty ukládaly bez diakritiky nebo dokonce jen velkými písmeny, u data se neukládalo století…

184
Studium a uplatnění / Re:ChatGPT a AI pro vývojáře
« kdy: 14. 02. 2023, 21:42:32 »
Na nektere veci je ChatGPT lepsi nez SO.
Třeba ve vymýšlení si knihoven a funkcí, které neexistují :-)

ChatGPT funguje podobne jako Github copilot.
Jestli se nemýlím, Copilot je postavený na předchozí generaci téhož modelu, jako ChatGPT, a je speciálně trénovaný na kód.

185
Studium a uplatnění / Re:ChatGPT a AI pro vývojáře
« kdy: 14. 02. 2023, 21:40:08 »
Tenhle přístup mne, co by inženýra dost děsí. Trochu mi to zavání rezignací. Nevíme jestli je to evoluce nebo rakovina. Prostě to neumíme nadesignovat, uřídit, tak to necháme jak se to vyvrbí. Evoluce funguje, ale v řádech miliónů let se spoustou slepých uliček a masových vymírání. Jsem stavební inženýr, trochu něco tuším o strojařině, a tam jen idea systémů, které nejsou 100% deterministické je nepřijatelná fantasmagorie.
Já to nepovažuju za rezignaci. Narazili jsme na limity, tak jsme vymysleli, jak to hacknout a limity obejít. Jako když jsme zjistili, že lepší dalekohled v optickém spektru už na Zemi nepostavíme, protože nám brání zkreslení atmosférou, tak jsme to hackli a vystřelili jsme dalekohled do vesmíru, mimo atmosféru.

Záleží na tom, co považujete za deterministické chování. Jestli požadujete to, že jste schopen dopředu přesně říci, jak se to bude chovat – nebo jestli vám stačí, že se to chová podle přesně daných pravidel, i když nedokážete domyslet, jak přesně se to v které situaci bude chovat.

Jsem 100% pro fault tolerant systémy, nicméně ty systémy stále musí být deterministické. Jinak se inženýrská práce mění v alchymii.
Ne v alchymii, ale v poctivé řemeslo. A poctivé řemeslo je super věc.

Já chápu, co se vám na tom nelíbí. Ale považuju věci jako internet nebo cloudy za skvělou věc. Myslím si, že to, jak se nám podařilo vyřešit problém komplexity, je něco úžasného a ještě nedoceněného – že to v budoucnosti bude vnímané minimálně stejně významně, jako vynález parního stroje. I parní stroj je možné brát jako rezignaci – rezignaci na to, že vše zvládneme vlastní silou, nebo alespoň biologickou silou. Akorát tentokrát nejde o fyzickou sílu, ale o sílu myšlenkovou.

A v žádném případě to neznamená, že by ta poctivá inženýrská práce nebyla potřeba. Pořád jsou v základech pečlivě navržené procesory, linuxové jádro, databázová jádra, u kterých pořád platí, že je teoreticky v lidských silách pro jakýkoli vstup určit, „co to udělá“. Na druhou stranu, přiznejme si, že i to je často jen teorie a ve složitých případech to reálně nikdo nedělá, že by promýšlel, co přesně se stane, když použije takovou kombinaci modulů či pluginů a nastane tento chybový stav, co přesně se pak bude dít. Ale připouštím, že je to stále teoreticky možné a pokud se z nějakého důvodu vyplatí nějaký takový případ zkoumat, může se do toho někdo ponořit a dny nebo týdny to zkoumat.

186
Studium a uplatnění / Re:ChatGPT a AI pro vývojáře
« kdy: 14. 02. 2023, 11:27:12 »
To je právě projev krize IT. Místo nástrojů, které by programátorům umožňovaly psát optimální kód, tak tu máme nástroje, které umožňují psát programátorům kód efektivně. Místo toho, aby se řešila komplexita kódu, konzistence API, tak máme nástroje, které umožní produkovat kód v prostředí s nekonzistentním, duplicitním API, nejasnými závislostmi. Za komplexitu se ale vždy platí, vyšší křehkostí (opak robustnosti), vyššími náklady, větší specializací, menší obecností.
Není to projev krize IT, je to naopak ukázka toho, proč IT změnilo svět.

Ve 20. století jsme dělali čím dál komplexnější projekty, kdy se vytvořil celkový plán a ten se pak rozpadl až do posledního šroubečku. Vrcholem takového přístupu jsou podle mne třeba jaderné elektrárny. Jenže tím jsme prakticky narazili na naše limity, ještě komplexnější systémy už nedokážeme uřídit.

Pak ale přišel internet (a po něm mimo jiné cloudy), který ukázal, že jde vytvořit ještě složitější systémy, u kterých je ale komplexita výrazně nižší – za cenu toho, že už tomu systému jako celku nerozumíme, nedokážeme předvídat jeho chování. Oproti předchozím komplexním systémům je rozdíl ten, že systém vybudujeme ze spousty jednoduchých prvků, u kterých nevadí selhání některých z nich. A celé to propojíme do sítě, která se řídí jednoduchými pravidly.

Velmi podobné principy platí třeba pro agilní vývoj. Ano, znamená to, že se tolik neřeší optimální kód, daleko důležitější je efektivita psaní kódu. Komplexita kódu se neřeší v tom smyslu, že by se řešilo, jak zacházet s komplexním kódem. Místo toho se řeší, jak komplexitu zmenšit tím, že se systém rozdělí na menší jednoduché části, propojí se do sítě a začnou pracovat v režimu, že jakákoli jednotka může selhat.

Což neznamená, že bychom vůbec nepotřebovali vysoce optimalizované jednotky kódu. Pořád někde v útrobách těch systémů jsou, ale jsou hezky zapouzdřené, aby jejich komplexita nepřerůstala ven.

Za mne je skvělé, že k takovému posunu došlo. Je to posun od inteligentního návrhu k evoluci a já věřím tomu, že evoluce dokáže víc.

187
Studium a uplatnění / Re:ChatGPT a AI pro vývojáře
« kdy: 14. 02. 2023, 08:32:34 »
Aktuálně to nevypadá, že by programátorů byl dostatek. Naopak, tím, že je napsaného a dostupného čím dál víc kódu, je čím dál víc možností, co se s jeho pomocí dá docela snadno vyřešit. Akorát je potřeba lidí, kteří z těch kostiček ty další a další věci postaví. Myslím, že AI způsobí, že programátoři budou podstatně efektivnější, ale nezpůsobí to, že by přišli o práci. A pořád budou potřeba ti, kteří vymyslí architekturu nebo nějakouo novou optimalizaci nebo nový algoritmus. Ale většině práce už dávno je jenom skládání různých kostiček dohromady, kde se převážně píše stále dokola podobný kód. Který zvládne AI napsat mnohem rychleji. Jako když dnes máte šablony či makra na napsání kostry cyklu nebo getterů a setterů, akorát AI dokáže napsat větší části kódu a lépe je zasadí do kontextu.

188
Vývoj / Re:Maximální délka e-mailové adresy při registraci
« kdy: 13. 02. 2023, 11:13:54 »
Obmädzovať dĺžku vstupných polí má zmysel hlavne z hľadiska security (data sanitation, input validation).
Nemá zmysel povoliť niekomu pasntúť do poľa pre meno 4KB dát, ktoré môžu potenciálne obsahovať XSS a iné zranitelnosti.
Zranitelnosti typu XSS se nemůžou řešit omezením délky polí. I do vašich 255 znaků se může XSS vejít.

Ja osobne by som dĺžku emailovej adresy obmädzil na 255 znakov plus regexp na validnú email adresu.
Validace se opravdu nedělají tak, že budete ignorovat standard a vycucáte si nějaké číslo z prstu. S tímhle přístupem si koledujete i o bezpečnostní chybu.

189
Vývoj / Re:Maximalna dlzka Emailu pri registracii...
« kdy: 13. 02. 2023, 10:38:55 »
Zkuste se, když vyvíjíte zamyslet - co tím chcete získat, je to, co se snažíte řešit, opravdu objektivní problém? Nebo se vám "jenom nezdál něčí email"?

Nebo ta délka někde dělala nějaký problém?

Tohle bych doporučil vytisknout velkými písmeny a jako trest za porušení vytesat do kamene. Pokud něco tvořím, přemýšlím především o tom, kterým omezením uživatele se opravdu nedokážu (z hlediska cena/efekt) vyhnout. Abych si přidělával práci s tím, že budu komplikovat život uživatelům - no, v životě jsem udělal spoustu hovadin, ale tohle asi ne.

Přesně jak tu píše spousta lidí - pokud nemáte extra důvod, použijte pro validaci e-mailu knihovní funkci a nevymýšlejte kolo. A když už, tak ho aspoň nedělejte hranaté, protože kulaté se vám zdá zbytečné.
Obecně s tím souhlasím, je nesmysl vymýšlet si nějaká omezení, která nemají žádné reálné opodstatnění – hrozí akorát to, že někomu bezdůvodně odepřu přístup nebo něco neumožím. (Obzvlášť miluju validace e-mailu, které se snaží podle domény uhodout, zda jde o pracovní nebo soukromý e-mail, takže některé domény odmítají.)

Pozor ale na to, že validace (a zejména ty na frontendu) slouží především pro to, aby upozornily uživatele, když udělá chybu. Třeba kdyby e-mailovou adresu odněkud kopíroval a zkopíroval spolu s ní kus dalšího textu, který není součástí e-mailové adresy. Je potřeba s tím zacházet opatrně, neřešil bych zrovna tohle omezením délky e-mailu, ale někdy jsou podobné validace pro uživatele užitečné.

Dobré je, pokud se takovéhle věci dají řešit varováním – tj. uživatel je upozorněn na to, že jeho vstup možná není správně, ale pokud si to zkontroluje a vstup potvrdí, může ho uložit. Příklad je třeba kontrolní číslice u rodných čísel – desetimístná rodná čísla mají kontrolní číslici, která ale občas byla spočítána špatně. Takže je dobré kontrolní součet ověřit a upozornit uživatele, ať si rodné číslo zkontorluje, zda v něm není překlep. Ale pokud je dotyčný ten chudák, který má rodné číslo se špatnou kontrolní číslicí, přes varování projde dál.

191
Server / Re:bezpecnost weboveho serveru
« kdy: 11. 02. 2023, 16:55:41 »
Zaměřujete se na nepodstatné věci a míjíte ty podstatné. Zarazil mne už ten port 80 – ten se používá jen pro ověření před vydáním certifikátu a pro přesměrování požadavků, pokud někoho hloupý prohlížeč po zadání adresy směruje na HTTP a ne HTTPS. Jinak už web dávno běží jen na HTTPS.

Obáváme se zranitelností webového serveru, chcete ho schovávat, blokovat přístupy… Webový server musí vydržet to, že je plně dostupný z internetu. Pokud nevěříte, že to vámi vybraný server zvládne, pak takový software vůbec nepoužívejte.

Nejzranitelnější je aplikace, která na tom serveru poběží. Pokud je to produkt třetí strany, sledujte vydávané aktualizace, co nejdřív je aplikujte – a ještě před instalací si prověřte, jak to ten produkt vůbec s bezpečností má, jestli na ni třeba autoři úplně nekašlou. Jestli je to něco interního, pak je potřeba, aby vývojáři uměli napsat bezpečnou aplikaci – a pokud je to důležité, je dobré podrobit ji pak bezpečnostnímu testování.

192
Server / Re:secondary DNS hosting
« kdy: 08. 02. 2023, 14:40:31 »
Podívejte se, zda to neumí ClouDNS.net.

193
Vývoj / Re:Stackoverflow.com licence + licence dokumentací
« kdy: 07. 02. 2023, 08:19:41 »
A ktery zakon mate na mysli? Ja jenom, ze stackoverflow ma HQ v New Yorku a nemyslim, ze pro pouziti cehokoliv ze stackoverflow bude rozhodujici nejaky cesky zakon.
Kde má sídlo StackOverflow je úplně jedno, autorské právo se řídí podle občanství autora. A autorské právo je řešené mezinárodními smlouvami, ze kterých vychází národní legislativa. Takže pro začátek se stačí řídit českým autorským zákonem. Pokud budete potřebovat detaily, které se mohou mezi různými státy řešit, budete se na to ptát právníků a ne ajťáků na root.cz.

194
Vývoj / Re:Stackoverflow.com licence + licence dokumentací
« kdy: 06. 02. 2023, 22:00:04 »
Myslím, že všechny ukázky kódu v dokumentaci i příklady na StackOverflow spadají pod nepodstatné vedlejší užití autorského díla, takže na to máte licenci ze zákona. Pokud byste použil nějaký složitější kód nebo algoritmus, odkázal bych na zdroj spíš kvůli dokumentačním než licenčním důvodům.

Aj licencovaný software môže byť voľný...
Veškerý software je licencovaný. Když k softwaru nemáte licenci, nemůžete ho používat (pokud nejste jeho autor).

195
/dev/null / Re:Různý EHLO string
« kdy: 06. 02. 2023, 15:26:54 »
Mimochodem, když odesílám e-mail přes STARTLS, Tak po tomto příkazu (EHLO,STARTTLS,EHLO,MAIL FROM) zase se začíná od EHLO.  Jaká je praxe při kontrole EHLO, pokud se použije pokaždý jiný EHLO string (ano, nedává to smysl...), kontrolují se obě nebo jen tam první nebo ta po STARTTLS nebo stačí když vyhoví jedna?
Myslím, že na tohle máte někde ve zdejším odkladišti svoje téma. Netahejte to prosím sem, kde se řeší reálné problémy.

Stran: 1 ... 11 12 [13] 14 15 ... 375