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 - Ondřej Novák

Stran: 1 ... 4 5 [6] 7 8 ... 38
76
Vývoj / Re:Automatické uvolňování paměti v c++
« kdy: 11. 01. 2017, 00:46:06 »
Co brání v C++ tomu, aby byly do kódu vloženy automaticky řádky pro uvolnění již nevyužitelných zdrojů v čase kompilace? Je to pŘece deterministický úkol, až na nějaké speciální případy je známo, kde je potřeba paměť uvolnit. Proč to teda musí programátor psát ručně?
Nic, tohle C++ dávno má, říká se tomu destruktor a překladač ho tam vkládá automaticky. Programátor jen napíše, jakým způsobem se ty zdroje úvolní

A z jiného soudku, proč má třeba Java ještě pořád GC, když uvolňování zdrojů lze předvídat už v čase kompilace? GC přece zbytečne spotřebovává paměť a čas procesoru, tak nač?
Skutečně? Nejsem si jist.

Příklad kde to už existuje: Objective-C a Automatic References Counter.
ARC fungují jen když sdílíte immutable objekty. Pak mohou být i MT Safe. Jakmile ale můžete dodatečně měnit linky v již vytvořených objektech, pak umíte vytvořit cyklus a ten ARC uvolnit neumí.

Mimochodem, ARC je i v C++. Buď shared_ptr, nebo se dá napsat jednoduché řešení s counterem uvnitř objektu. Oba systémy mají své výhody a nevýhody.

77
Vývoj / Re:Jaký použít základ pro vlastní CMS?
« kdy: 12. 11. 2016, 15:54:12 »
Pro jedno CMS teď přepisuju backend z MySQL na CouchDB. Uvažujte o použití tohoto typu DB

78
Teď jsem to párkrát zkusil na homepage. Fullload na běžné lince, běžný PC, linux ubuntu:


Staženo 1.2MB dat, Load: 7.5s.


Stačí, aby se někde zpozdil nějaký obrázek, nebo reklama a load se protáhne. Za tu dobu si stihnu přečist titulek a kliknout na první článek. Na mobilu a třeba na pomalém mobilním spojení ty load časy mohou být delší.


Ideální stav by byl: Staženo: 50kB, Load: 1.0s

79
Stránky na rootu běžně nabíhají až 4 sekundy, homepage mi nabíhá až 10 sekund. Chome má nejspíš problém s historií ten, že stránku zařadí do historie až v okamžiku kdy nastane událost "onload".

Doporučení pro root.cz - a pomůže to i jinde, ne jen pro chrome bug. Proboha za všechno na světě, zrychlete načítání stránek. Vše co není potřeba načítejte asynchroně. V základní kostře mějte jen nejnutnější věci a vyhrazené místo pro reklamy a obrázky, ať to pak při čtení neposkakuje. Ale hlavně snížit ten load time. Třeba načítáním reklamního JS asynchroně

80
O serveru Root.cz / Tlačítko zpět na Lupě a na Rootu
« kdy: 14. 10. 2016, 16:26:06 »
Nevím jestli se to děje i vám, ale mně se často stává, že jdu na homepage Lupy nebo Root a otevřu si tam nějaký článek. Po přečtení článku dám zpět a odctnu se na stránce, na které jsem byl, než jsem přešel na homepage, tedy jako by to udělal 2x zpět. Mohu kdykoliv reprodukovat.

Děje se mi to v Chrome a to jak na linuxu, tak na windows, tak v mobilní verzi chrome. Netušíte čím by to mohlo být?

81
Sítě / Re:Dial-up cez smartfon
« kdy: 31. 08. 2016, 22:46:57 »
No, dostaneš reálný přenos zhruba 2-4 kbps. Což se dá použít s bídou na telnet

82
Server / Re:mysql startuje nekolik procesu a zere 90% pameti :(
« kdy: 17. 03. 2016, 22:20:01 »
Zobrazování spotřeby paměti aplikace je opravdu tvrdý oříšek a ten kdo nerozumí jak to funguje z toho může udělat šílené závěry.

1) Vlákna sdílí jeden adresový prostor. Některé zobrazovače ale evidují paměť pro každé vlákno i když vlastně všichni sdílej jednu paměť
2) Virtuální paměť v linuxu je pouze rezervovaný adresový prostor, kde nic nemusí být. Paměť se zabere až při prvním zápisu do vyhrazené paměťi. Ve Windows je to stejné, akorát aplikace explicitně deklaruje dopředu, že hodlá zapsat do rezervované stránky (udělá její commit)
3) Často se paměť sdílí i mezi procesy. Zvlášť naforkované děti, namapované knihovny, které jsou v paměti jen 1x, ale jsou namapované do každého procesu a protože každý proces vidí jen sám sebe, vypadá to, že ta knihovna je tam rozkopírovaná xkrát.
4) Tzv. working set (linux RES) je paměť přidělená aktuálnímu procesu, která může být větší, než její skutečná potřeba. Jsou v tom i různé cache operačního systému, diskové cache, paměť obrazovky atd. Například ve Windows je working set větší,pokud aplikace používá okna, GUI, atd. Při minimalizaci okna se working set zpravidla zmenší. Pokud část paměti leží ve swapu, představuje working set objem paměti fyzicky zabrané RAM včetně mapovaných  souborů a knihoven + paměť operačního systému nutnou k jeho řízení + výše zmíněné cache, gui objekty, okna atd (třeba i buffery rour)
5) Asi nejblíže skutečné potřebě aplikace je "potvrzená" / committed memory, což jsou stránky, které leží buď v paměti, nebo ve swapu. Na linuxu jsem to číslo nikde nenašel

Posoudit, která aplikace zabírá kolik místa je dost problematické. Asi nejlepší je se na to dívat globálně. Mám zabráno X, volno Y, cache Z. Cílem je samozřejmě volnou paměť věnovat cache. Takto zabranou paměť je možné kdykoliv uvolnit pro potřeby aplikací

83
Nabízím zakázku / Re:Javascriptář (Praha)
« kdy: 26. 02. 2016, 12:11:14 »
Hledám do týmu malého startupu javascriptáře pro delší spolupráci (OSVČ)

Prelozim: nemame dost prachu na to, abychom si mohli dovolit zamestnance, takze te opicko zaprahnem jako to delal pan Svarc.
No to není jen o tom. Dotyčný může dělat doma, není povinný chodit na osmou do práce, nemusí povinně odpracovat 8 hodin denně, spolupráce nemusí být trvalá, ale nárazová. Myslím si, že pro osamělé vývojáře je to výhodnější.

Proč ta nenávist?

84
Nabízím zakázku / Javascriptář (Praha)
« kdy: 26. 02. 2016, 11:40:33 »
Zdravím.

Hledám do týmu malého startupu javascriptáře pro delší spolupráci (OSVČ)

Firma: Adveri s.r.o

Hlavní náplní práce by bylo vývoj webových aplikací (HTML5, JS, AJAX)
Příklady:
 - vývoj webové verze mobilní aplikace
 - aplikace pro snadnou administraci dat informačního systému.

(nejsou vyžadovány grafické dovednosti)

Sídlo společnosti je v Praze, není nutná trvalá fyzická přítomnost, přesto je třeba počítat s občasnými návštěvami v sídle.

Zájemci pište PM, nebo na nov.ondrej@gmail.com

85
Sítě / Re:Jak obejít NAT z jiné adresy
« kdy: 30. 01. 2016, 22:12:50 »
Jinak řešením je IPv6 a pro sítě za NATem existuje nějaký tunel.

86
Odkladiště / Re:Bitcoin change adresa
« kdy: 30. 01. 2016, 19:47:37 »
Každá transakce má dvě strany. Na pravé straně transakce jsou výstupy, tedy množství bitcoinů a úkol, který musí nový vlastník splnit, aby mohl uvedené množství použít jako vstup do nové transakce. Na levé straně jsou pak právě tyto výstupy uvedeny jako vstupy včetně údajů, kterými lze dokázat, že dotyčný byl schopen splnit úkol, který byl u patřičného výstupu vyžadován.

Zpravidla tím úkolem je, že dotyčný podepíše transakci tak, že její veřejný klíč po zahashování odpovídá hashu veřejného klíče výstupu. Tomu hashu se pak říká adresa. Píšu to proto, aby bylo jasné, že bitcoiny nemusí být poslány na adresu, ale způsob identifikace nového vlastníka může být libovolná.

Problémem je, že každá transakce vždy využije celý výstup, v ideálním případě by do transakce měly vstupovat všechny bitcoiny, které byly poslány na určitou adresu. Protože ale prakticky potřebuju zaplatit jen něco, a ne všechno, část peněz, které nechci poslat novému vlastníkovi musím poslat někam, nad čím mám kontrolu. Většina peněženek generují novou adresu. Této adrese se říká change adresa.

Občas se dají najít peněženky, které používají pouze jednu adresu, pak zbytek peněz posílají zpět na původní adresu. I v tomto případě se ji říká change adresa, přestože je stejná jako původní adresa.

Je mnohem lepší, pokud change adresa je jiná, už kvůli zvýšení obtížnosti při stopování plateb.  Dalším důvodem nepoužití původní adresy je, že dokud na adresy přichází pouze přírustky, je celá kryptografie chráněna dvojitým hashem, který je prakticky neprolomitelný. Jakmile ale vytvořím transakci, dostane se do blockchainu můj veřejný klíč, který je pouze chráněn matematikou eliptických křivek a je teoreticky prorazitelný například kvantovám počítačem (byť ne okamžitě). Navíc s každou další transakcí zvyšuje šance možnosti prolomení. Prostředkům na nové adrese toto v zásadě nehrozí.

Závěrem je dobré říct, že s aktuálními HD peněženkami by BFU neměl vůbec znát význam slova adresa. Adresa je jen identifikace platby, o tom, že jsou někde uloženy bitcoiny nemusí nic vědět. Peněženka mu spočítá, kolik bitcoinů má dohromady.

87
O serveru Root.cz / Úvodní článek vypadá jako reklama
« kdy: 30. 01. 2016, 11:28:33 »
Já vím, že je tady vlákno, ale nechtěl jsem aby zapadl můj postřeh.

Dřív jsem si při návštěvě rootu přečetl úvodní článek a pak zbytek. Nyní narazím na novinku. Pak si uvědomím, že je to jen novinka a přečtu si... druhý článek. Proč přeskakuju první..?

sakra teprve dneska jsem si ho všimnul, on totiž vypadá jak reklama.

Tolik zpětná vazba.

88
Sítě / Re:Jak obejít NAT z jiné adresy
« kdy: 29. 01. 2016, 01:41:30 »
Co jsem naposledy zkoušel, tak jediný co funguje je, že počítač za NATem (PATem) pošle UDP packet ven a pak z druhé strany lze doručit paket dovnitř na adresu a port odesílate toho přijatého paketu. Ale zpravidla do 1 minuty, pak se spojení uzavře.

Jenže v zásadě poslední stav běžných NATů / PATů je, že žádný z nich už dneska nemapuje IP:Port venku na IP:Port uvnitř, ale mapuje se zvlášť každá čtveřice. Takže i když si z venkovního počítače vezmu IP:Port na NATu / PATu  a z jiného počítače se tam pokusím dostat, tak to nepůjde. Alespoň se to týká většina NATů co mají poskytovatelé mobilních připojení a O2 a podobně.

Propojit dva počítače za NATy lze jen přes prostředníka, bubble packet už dneska v zásadě nefunguje právě díky vlastnosti posledních NATů

89
Vývoj / Re:V čem napsat mobilní aplikaci (frontend only)
« kdy: 14. 01. 2016, 00:01:12 »
Děkuji za téma. Phonegap jsem neznal

(připomíná mi to nwjs pro mobily)

90
Vývoj / Re:Vyplatí se učit C++?
« kdy: 07. 01. 2016, 09:25:08 »
Citace
Kdyby to bylo hezký, tak to vypadá nedůvěryhodně :)

Doufám, že to byla ironie :) Vypadá to krásně technokraticky, asi jako když jeden můj známý spravuje věci zásadně izolačkou(funguje to? funguje), ale na běžného uživatele to zrovna dvakrát důvěryhodně nepůsobí, spíš přesně naopak. Tuhle stránku věci by bylo opravdu lepší buď přenechat některému z těch untermensch webdesignerů nebo sáhnout po nějaké free šabloně. Obal prodává a první dojem se nevyplácí podceňovat.

Byla to ironie... ale tak nějak jsem spoléhal na open source komunitu, celý projekt je free včetně zdrojáků na githubu, ono totiž sakra jde o hlavně o bezpečnost a já bych netroufnul něco garantovat v uzavřeném projektu a nést za to zodpovědnost. Snahou bylo ukázat funkční a jednoduché řešení. Nic víc. Budu mi stačit, když se to ujme jako systém, který bych chtěl třeba taky používat (třeba při přihlášení do diskuze na rootu :D ) - prostě není cílem něco prodávat, ale spíš demonstrovat technologii. Ale uznávám, že to může vypadat hezčí, jenže já jsem prostě programátor a ne grafik. Nicméně jak píšu, je to free na githubu a každou pěknou úpravu s radosti zamerguju a nasadím (a klidně dopíšu do credits autora, nebo spíš se tam může dopsat sám)

Stran: 1 ... 4 5 [6] 7 8 ... 38