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 - eMko

Stran: 1 ... 13 14 [15] 16 17 ... 31
211
Studium a uplatnění / Re:Nástupní plat pro programátora
« kdy: 19. 12. 2013, 07:44:32 »
Záleží na tom, co myslíš tou BZD :-) . Třeba Jeseník (tenhle: http://mapy.cz/#!x=17.230099&y=50.229286&z=12&t=s&q=jesen%25C3%25ADk&qp=10.929043_47.732717_20.070398_51.720354_6&d=muni_290_0_1 - ono je tu Jeseníků víc), je to dupa světa a blbě se od tama dostává kamkoliv - Česko je odříznuté horami a do Polska skoro nic nejezdí (a vlak do Ostravy stjeně jede 14km za polskou hranicí); i tam se dá najít něco, čemu se říká "život".

Kromě toho v takových zapadákovech se dá sehnat levnější bydlení než třeba v Brně.

212
Vývoj / Re:Proč je Java pomalá a problémová?
« kdy: 16. 12. 2013, 06:52:20 »
JIT nepochybně funguje ale je to popření principu Javy, tedy jeden bytecode běžící všude.

JIT neodporuje principu "jeden bytecode běží všude". Při spuštění se bytecode překompiluje do nativního kódu a pak se spustí, to ano, ale obsah původního jar balíčku/class souborů (tedy původní bytecode) zůstanou nezměněny. To znamená, že lze vzít jar/class, spustit ho na Windows na amd64 procesoru, pak jej zkopírovat na SPARC a znovu spustit - znovu se JIT zkompiluje do nativního kódu a spustí, aniž by se bytecode aplikace změnil.

Naopak, třeba ARM/AVR má CPU přímo optimalizovaný pro C/C++, například je tam HW podpora na x=*y++; a x=*--yy; v jiném jazyku to takhle moc nejde napsat.

Pokud píšeš aplikaci, pro kterou je stěžejní hardwarová optimalizace těchto věcí, pak ta aplikace stejně není v Javě/C#/jakémkoliv_jiném_jazyku_s_(polo-)automatickou_správou_paměti. Toto vidím jak trochu zcestný argument.

213
Vývoj / Re:Google Chrome - GUI
« kdy: 16. 12. 2013, 06:42:38 »
O skypu se povídá, že používá knihovnu Qt. Chrome používá GTK na linuxu, Cocoa na Macu a pro Widle mají vlastní, viz http://dev.chromium.org/developers/design-documents/chromeviews . uTorrent je na Widlích tuším přímo přes Win32 api, ale je to jen můj dojem.

Co se týče Qt, jedná se o celkem povedený aplikační framework pro C++, kde si pomocí jazyka podobného CSS můžeš jednoduše měnit vzhled ovládacích prvků. Podobně funguje na JavaFX a WPF.

Pokud programuješ na Javě, tak doporučuji spíš JavaFX - je to sice ještě mladý projekt a chybí mu některé věci, na druhou stranu oddělení view/controller, nativní podpora databindingu a možnost dělat psí kusy se vzhledem aplikace jsou dost dobré věci. Určitě bych nešel do Swingu, pokud chceš aplikaci, která má kulervoucí vzhled a do toho ještě hraje a zpívá a animuje každou hovadinu - ne, že by to nešlo, ale původně k tomu nebyl určen a ohýbat ho není sranda. Chceš-li to na C++, pak moje doporučení je Qt.

Ad napodobení vzhledu jiné aplikace - myslím, že tady žádné knihy nejsou. Prostě se na ni podívej a udělej to podle toho :-) . Jestli chceš poradit s něčím konkrétním, pak na to asi založ samostatné vlákno, kde napíšeš v čem děláš (JavaFX/Qt...) a dáš screenshot konkrétní části UI.

214
Vývoj / Re:Proč je Java pomalá a problémová?
« kdy: 15. 12. 2013, 10:14:53 »
Vždy jsem všude četl, že je Java interpretovaný jazyk a překládá se do tzv. bytekódu

Zjednodušeně: soubory s příponou .class, tedy to, co vyleze z kompilátoru, jsou bytecode. Je možné, že některé JVM se k něm chovají jinak, ale ta od Oraclu vždy při spuštění programu překládá bytecode do nativního kódu (JIT) dané platformy (proto trvá déle, než se program spustí) a také při běhu programu kritická místa optimalizuje.

Srovnej to PHP - tam se při každém spuštění probíhá celá kompilace znovu, u Javy je většina práce již hotová překladem do bytecodu.

215
Vývoj / Re:Proč je Java pomalá a problémová?
« kdy: 14. 12. 2013, 20:31:02 »
Chápu, že interpretovaný jazyk bude vždy pomlejší. Ale subjektivně mi přišlo, že java, i když už je s námi velmi dlouho, je stále nejnefektivnější a nejproblémovější prostředí vůbec.

To je naštěstí pouze Tvůj subjektivní dojem. Zkus si něco o té platformě zjistit, Java není interpretovaný jazyk (kód se zkompiluje před zpuštěním aplikace, když se některá funkce provádí častokrát, tak se po čase zkompiluje s brutálními optimalizacemi a hot-swapne - sorry, ale tohle není interpretace).

Kdysi jsem v tom něco i programoval, ale vždycky to bylo takové divné.

Tato platforma (stejně jako každá jiná) má svá specifika (viz třeba kniha Java Puzzlers). Stejně tak fakt, že díky zpětné kompatibilitě jsou přístupná i zastaralá API (např. java.io -> java.nio -> java.nio2 pro práci se souborovým systémem), se v ní může ze začátku těžko orientovat. Pokud ta specifka neznáš nebo nevíš, která API jsou moderní a která ne a která spolu vycházejí dobře a která ne, může Tě to pěkně vyliskat a to se taky asi stalo :-) . Smutná zpráva je, že nejsi sám, naopak, znám armádu lidí, kteří jsou _placení_ za to, že je JVM/.Net vyliskává za jejich neschopnost a neznalost, čímž vytvářejí šílené prasárny a berou za to těžký prachy.

Např. nedávno jsem viděl, že architektovi přišlo, že třída mající 50.000 řádků C# kódu je příliš velká (byla to nějaká Utils třída - univerzální třída na všechno, anglicky se tomuto architektonickému vzoru říká "fucking big bucket of shit"), tak ji rozdělil do asi 10 partial class. Tohle je bohužel realita běžného korporátníhho života a dokud budou ze strany manažerů tlaky na co nejnižší cenu a manažeři nebudou problematice dostatečně rozumět (minulý týden jsem slyšel projekťáka z jiného oddělení, že "přímé přístupy do databáze ze zobrazovací vrstvy jeho týmu nikdy nepřinesly zvýšené náklady na údržbu, naopak zavedení návrhových vzorů jako MVC nesmyslně prodražilo projekt, protože developeří se museli s těmito vzory seznamovat a obcházet jejich nedokonalosti"), nebudou mít lidi motivaci se učit psát dobře a budou vznikat prasárny. A právě prasečiny jsou hlavním důvodem, proč jsou v případě Javy aplikace ze strany uživatele naprd.


216
Distribuce / Re:Vhodná distribuce pro Eclipse
« kdy: 13. 12. 2013, 15:15:14 »
Měl jsem s instalací Oracle Javy problémy (=šlo to, ale bylo s tím spousta ruční práce)

Já jsem tedy javu vždy instaloval tak, že jsem stáhnul zip balíček, někam ho rozbalil a nastavil update-alternatives. Max 5 minut i se stahováním.

217
Sítě / Re:Problém :(
« kdy: 08. 12. 2013, 16:49:38 »
Nevíte kde je problém

Vzhledem k tomu, že mně, mojí ženě a všem okolo tyto hry fungují, bude problém na Tvojí straně. ;-)

Zkus si pohrát s firewallem, antivirem a podobnými věcmi, pokud je používáš. Pokud ne, zkus se zeptat konkrétněji např. Jaké dostáváš chybové hlášky? ("Nefunguje to" neposkytuje dost informací) Které konkrétní hry? ("Všechny" je špatná odpvoěď) atd. Potom založ thread, ve kterém se zeptáš na konkrétní otázku a napiš titulek threadu normálně ("Problém :-P" neposkytuje dost informací o tom, čeho se fórum týká - ne každý čte všechno - správně je např. "Flight Simulator X: Crash to desktop 0xc0000005" a položíš otázku "S tím a tím letadlem jsem letěl tam a tam, udělal jsem to a to a když mi řídící letového provozu povolil přistání, ...").

218
Studium a uplatnění / Re:Freelancer alebo full-time
« kdy: 26. 11. 2013, 08:50:52 »
kuka: s tim co pises souhlasim. Samozrejme jako freelance nebudes delat system pro banky...
Mozes.
uplne bezna praxe to neni.

Záleží na tom, co je to za systém. Pokud je to systém na rožínání světel nebo monitorování času, kolik zaměstnanci prosedí na záchodě, tak ano.

219
Odkladiště / Re:Napsal jsem sw, jak ho prodat?
« kdy: 26. 11. 2013, 06:30:21 »
Mimochodem, samozrejme neznam jaka byla dohoda s kamaradem pro ktereho si to psal primarne. Typicky ale prava na danou aplikaci patri jemu. V budoucnu dej teda trochu bacha at se v nejakem podobnem pripade nechytnes do pasti...

Tady je potřeba rozlišovat autorská vs vlastnická práva. Vlastnická mohou patřit jemu, pokud to zadal na zakázku nebo u něj pracoval. Vlastnická nikoliv.

220
Studium a uplatnění / Re:Freelancer alebo full-time
« kdy: 25. 11. 2013, 10:40:18 »
Vyzkoušel jsem oboje a hlavní pracovní poměr je větší pohoda. Přijdeš do práce, uděláš si svoje, odejdeš. Máš dovolenou, nemocenskou, svátky ...

Jako freelancer máš sice vyšší hodinovou mzdu, na druhou stranu to musí vyrovnat výše zmíněné + otravování se se sháněním zakázek. To není sranda a když 2 dny děláš analýzu + nacenění, borec Ti pak řekne že si na to najme někoho jinýho, tak čas je samozřejmě v p...

Švarcsystém kombinuje nevýhody obojího.

221
Studium a uplatnění / Re:Budoucnost a vize v IT
« kdy: 24. 11. 2013, 14:21:49 »
Ok, může být, ale asi těžko můžeš ve firmě říct, že musíme C++, Java a .Net projekty přepsat do jiného prostředí.

Za článek díky, rád jsem si jej přečetl. Nicméně pokud bychom mohli měřit "míru nedeterminismu", stále je na tom Actor model lépe než Thread/Semaphore/Lock.

222
Studium a uplatnění / Re:Budoucnost a vize v IT
« kdy: 24. 11. 2013, 13:53:02 »
Zrovna Actor model ani STM se deterministicky nechovají. Například u Actor modelu je využití paměti těžko předvídatelné.

S tímto jsem nenarazil na problém, pravda, že jsem to nějak nezkoumal. Je to obecná vlastnost toho modelu, nebo jenom jedné z implementací? Těžko by asi Ericsson dlouho stavěl telefonní ústředny na něčem, co by způsobovalo problémy s pamětí.

Jinak když si pustíš program v debuggeru, zjistíš, že se pokaždé "chová" stejně => žádné, že se Ti debugger zastaví na breakpointu o 100 cyklů dále nebo vznikají deadlocky atd. (deadlock u actorů může vzniknout pouze v 1 případě, kterému se lze vyhnout)

223
Studium a uplatnění / Re:Budoucnost a vize v IT
« kdy: 24. 11. 2013, 12:33:44 »
Ok, je-li tedy toto téma myšleno vážně (což jsem nečekal :-D ), tak:

Budoucnost, alespoň na desktopu, je podle mne v paralelním programování - výkon 1 procesorového jádra není o moc vyšší než před řekněme 5 lety, ale běžně jich máme víc (před 7 lety jsem se rozmýšlel, jestli si draze připlácet za dvoujádro; teď jsem si postavil "nejlevnější počítač, na kterém rozběhnu Flight Simulator, Visual Studio a Intellij Ideu" a mám čtyřjádrák, ale ty jádra nejsou nijak brutálně vykonnější, než co byly v tom noťasu, co se před měsícem odebral do věčných lovišť (Core 2 Duo 2,2 GHz vs AMD A8 6600 na 3,9 GHz)). Zatím se paralelizace běžně řeší vláknama a zámkama, ale není to sranda, což asi víš, pokud se v IT pohybuješ. Už sám Einstein říkal, že "Problém nevyřešíš na stejné úrovni myšlení, která ho vytvořila" - proto je již dnes patrný posun k deklarativnímu programování, spíš než zůstávání u imperativního. Např. na JVM i na .Netu se objevují funkcionální či hybridní programovací jazyky, které získávají celkem dost pozornosti (Scala, Clojure, F#), což by se před 10 lety nestalo. Zároveň se objevují návrhové vzory a frameworky (Actor model, Software transaction memory), které Ti umožní se elegantně vyhnout práci s thready a locky a program se chová deterministicky a dá se odladit (což s Thread/Lock modelem moc nejde). Zmíněné modely samozřejmě nejsou nové, ale až nyní si získávají pozornost.

Zároveň je hodně patrno, že funkcionální programování čím dál víc prosakuje např. do C# (např. LINQ, Parallel LINQ, delegáty, anonymní funkce) a dokonce i do Javy (Lambda výrazy ... ehm ... snad už konečně někdy příští rok :-) ). V jazycích jako Groovy nebo Python jsou tyto vlastnosti již dlouho a získávají na popularitě.

224
Server / Re:Proč je Java špatná na server?
« kdy: 23. 11. 2013, 22:02:59 »
Pokud zabíháme až do takovýchto věcí, tak v Emacsu se dá editovat Clojure a Java celkem slušně. Neznám sice moc lidí, kteří by měli emacs na serveru, ale zcela určitě to není takový problém jako tam mít třeba IntelliJ Ideu.

Nailgun má nevýhodu, že má stále spuštěný proces a okupuje paměť. Své využití to má (např. kompilace na pozadí), ale podle mě se nehodí na systémové utilitky.

225
Vývoj / Re:Nefunguje kód z tutoriálu v C++
« kdy: 23. 11. 2013, 21:02:19 »
Tak zrovna označení strstream za deprecated má smysl, viz http://stackoverflow.com/questions/2820221/why-was-stdstrstream-deprecated .

Jinak co se týče zvlášť českých programovacích tutoriálů, víc než kde jinde platí "what you pay is what you get". Navíc v dnešní době se stačí podívat různě po internetu a získat i dobré knihy zadarmo (odkazy sem samozřejmě dávat nebudu, ale stačí použít google - "název knihy".pdf)

Stran: 1 ... 13 14 [15] 16 17 ... 31