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 ... 12 13 [14] 15 16 ... 31
196
Distribuce / Re:Co je to s tebou Canonical?
« kdy: 22. 01. 2014, 18:57:58 »
Co si o tom myslite vy?

Nic. Vůbec nic. Minimálně ne pozitivního.

Ubuntu bylo financováno ze soukromých zdrojů. A ještě v dobách, kdy posílalo instalační CDčka zdarma, bylo na internetu i v reálném světě hodně diskusí, jestli náhodou někdo někdy nepřiškrtí penězovody.

Prostě myslím, že potřebují nějakým způsobem získávat peníze i z jiných zdrojů, což s sebou nese tlak na rozšíření z desktopu na jiné platformy, protože na desktopu moc peněz vydělat nemůžou.

Předchozí věta byla domněnka. Jedno je ale jisté - tento thread žádný výsledek nepřinese.

197
Vývoj / Re:Nástroje a jazyky pro vývoj webu
« kdy: 10. 01. 2014, 10:31:09 »
Jaroslav: Co se rozčiluješ? Lidi tu zodpověděli Tvoji otázku. Možná ne tak jak jsi ji myslel, ale rozhodně tak, jak jsi ji napsal.

Volba prostředí záleží na tom, co chceš dělat. Jaké jsou prioritní požadavky uživatele a Tebe jako tvůrce?

- Levný hosting, levný vývoj, dostupní lidi?
Pak zkus PHP. Nástroje jako NetBeans, PHPStorm (IntelliJ IDEA), databáze MySQL. Rozhodně to má daleko k ideálu pro vývoj webových aplikací, ale Tvé primární požadavky to splní. U PHP je snadná rozšiřitelnost pomocí modulů napsaných v C, takže máš-li bottleneck v náročném zpracování dat, dá se to použít.

- Celkový výkon, dostupnost knihoven, integrovaná a prověřená řešení, vše od jedné firmy s dostupnou podporou?
Microsoft. C#, Visual Studio (+ plugin ReSharper - jestli to Tví vývojáři umí a chtějí použít (což bohužel není samozřejmost), hooodně to pomůže), MSSQL jako databáze, Windows Azure jako hosting. Lidská síla je také dostupná, byť povětšinou dražší než v PHP. Oproti PHP máš možnost využít lepší možnosti statické definice systému - C# a F# jsou staticky typované jazyky, navíc F# je pro zpracování dat a algoritmizaci téměř blbuvzdorný. Hlavní framework je Microsoft MVC na větší vývoj kde chceš mít věci přímočaře pod kontrolou, a Web Forms na jednoduché aplikace (např. čtení - úprava - zápis dat do databáze, např. e-shopy).

- Celkový výkon, dostupnost knihoven, mnoho věcí zdarma?
Ekosystém kolem Javy. Jazyky: hlavně Java (klasický objektový), Scala (hybridní objektový - funkcionální, má hodně propracovaný typový systém), Groovy (dynamický - dobře spolupracuje s Javou; když víš, co děláš, dost brutální věc). Nástroje Eclipse, Netbeans, IntelliJ IDEA. Frameworků je 6 půlek, vybere si asi každý. Lidská síla celkem dostupná. Databáze: MySQL, Oracle, MSSQL. Hosting buď vlastní nebo cloud (klidně i Windows Azure, který nabízí i linuxové servery, ale dá se najít levnější).

- Jednoduché dynamické prostředí, ne PHP, sehnatelná síla, dynamické prostředí?
Python, Perl. Prostředí opět IntellJ IDEA, případně něco přímo pro tyto jazyky. Zbytek záleží na Tobě.

--------

Pokud chceš aplikaci, aby "hrála, zpívala, blikala, měnila barvičky" a dělala podobné čoviny, tak Javascript na klienta. To můžeš zkombinovat s čímkoliv vyjmenovaným + tady možná dává smysl využít javascript i na server (node.js).

Stylování: CSS. Pokud si s tím potřebuješ víc vyhrát, existují frameworky pro usnadnění práce
.

198
Studium a uplatnění / Re:Přednášky FIT ČVUT, VUT, MUNI
« kdy: 10. 01. 2014, 10:14:03 »
Tak základní algoritmy je dobré znát a upřímně, merge sort zapsaný v imperativním jazyku bude vypadat dost podobně - je jedno, jestli to bude Pascal, C nebo Java (totéž platí pro funkcionální jazyky - v F# vypadá podobně jako v Haskellu nebo Scale). Samozřejmě zabít s tím spoustu času je blbost, ale je třeba tomu věnovat dostatečný čas. U mnoha funkcí v Javě máš popis "dělá tohle s použitím algoritmu ..." - je fajn mít přehled o slabých a silných stránkách daného algoritmu a o jeho složitostech. A jinak pokud člověk hlouběji pronikne do OOP a architektury a navrhne netriviální graf (např. s kombinací nějakých takovýchto vzorů: http://martinfowler.com/apsupp/accountability.pdf), bude potřebovat napsat vlastní algoritmy pro práci s takovým grafem. Bez toho, aby znal základy (ano, ty, které jsou implementovány v základních knihovnách jsou většinou pouze základy), se mu to bude implementovat těžko. Samozřejmým předpokladem je také znalost základů vyčíslitelnosti a složitosti a puf, už jsme opět u formálního vzdělání.

S Perlem bych se na začátku nezabýval - to raději Python, který je modernější a lépe navržený. Perl je fakt celkem peklo. Na toto téma už byly napsány terabajty textu, takže není třeba to asi dále rozpitvávat. Spíš jenom poznámku k datovým strukturám - v mnoha případech je lepší mít pevnou datovou strukturu - u asociativního pole nikdy člověk neví, co je v něm, jestli tam nějaká data nechybí nebo není překlep (což se dozví až za běhu programu) a na netriviální věci to paradoxně práci jen přidělává. Binec v programu se opraví snadno (byť před uživatelem bude vývojář vypadat jako debil), ale pokud je binec v uživatelských datech, je to obvykle dost průser.

199
Studium a uplatnění / Re:prednasky FIT CVUT, FIT VUT, FIT MUNI
« kdy: 06. 01. 2014, 15:25:16 »
Tiez by zaujimalo s akymi znalostami koncia absolventi FIT...v priemery..

To se nedá zprůměrovat, protože každý končí s naprosto jinými znalostmi. Škola dá teoretické základy, případně u složitějších věcí nastíní problematiku (např. u softwarové architektury), ale to je záležitost spíš magisterského studia. Je to o tom, že ty základy jsou ucelené, tj. jsou tam jak pro Tebe důležité věci, tak i takové, které Tobě jeví jako naprosté kraviny a důležité jsou zase pro někoho jiného - ale jsou ucelené, což je obrovská výhoda. A na těch základech se staví. Upřímně neznám nikoho, kdo by šel hned po škole pracovat na dobré místo, aniž by strávil mnoho času samostudiem (ještě nad rámec školy) věcí, kterým se chce věnovat. Většina lidí při studiu informatiky zároveň pracuje alespoň na částečný úvazek, aby si zvykla pracovat v týmu - komunikovat, používat týmové nástroje, naučila se přizpůsobit styl práce ostatním atd. Toto se na škole nebo doma naučit nelze. A sehnat tu praxi není sranda - na jednu stranu firmy nechtějí člověka bez praxe na plný úvazek, protože to jsou příliš velké náklady a na druhou stranu nechtějí studenta na praxi, protože student na částečný úvazek rozděluje čas mezi práci a školu a zřídkakdy mívá pravidelný rozvrh a časovou flexibilitu tak, jak chce firma. Je to dost na palici. A toto prostředí vytváří silné individuality - zpravidla nepotkáš informatiky, kteří by měli stejný soubor znalostí. Ti, kteří na škole dělají jen to, co po nich chce škola, nic navíc, jsou v praxi téměř vždy nepoužitelní.

nasel jsem lepsi tutorialy pro zacatecniky, ovsem teda je treba podotknout, ze na zapade jaksi frci Python, takze na Javu jsem tak kvalitni veci nesehnal

Na slovo tutoriál jsem trochu háklivý, zvlášť v kontextu diskusních fór. Tutoriál by měl být k tomu, aby někomu poskytl "kick start" pro danou problematiku, technologii apod., ne aby se z toho někdo "naučil". Tutoriál na programování pro začátečníky je super věc, ale nezle zůstat u toho :-) . Jestli jsou lepší tutoriály pro začátečníky pro Javu nebo pro Python je myslím na volbu prostředí úplně jedno.

Java je fajné prostředí, ale je trochu problém se v tom na začátku zorientovat. V základní knihovně je nepřeberné množství věcí, bohužel mnoho z nich zastaralých (jsou tam jen kvůli zpětné kompatibilitě) a problém tutoriálů pro Javu je v tom, že mnoho z nich je zastaralých. Např. v Javě existují 3 API pro práci se souborovým systémem a navzájem se moc nemají rády atd. Zastaralý tutoriál, což začátečník nemá šanci poznat, je tak spíš ke škodě než k užitku.

To, co doporučuje GoHong, sice osobně neznám, ale podle anotace vypadá dobře a pochybuji, že v MIT Press by si dovolili vydat nějakou kravinu (což se bohužel nedá říct o mnoha jiných). Pro učení se základů tvorby softwaru jako takových je Python ucházející prostředí (navíc existuje velice dobré IDE http://www.jetbrains.com/pycharm/), protože je celkově jednodušší se v něm orientovat než v Javě. Byť má taky svoje idiocie a nemůžu jej doporučit pro vývoj větších aplikací, na učení je dobrý, pro produkční nasazení, zvlášť na webu, taky. Stejně tak Python jako jazyk není navržen úplně marně (na rozdíl od té zpraseniny jménem PHP, s kterou bývá často srovnáván). Python je pro začátečníka dobrá volba (bohužel se to dost zveličuje; zůstaňme u slova "dobrá"), Java má k ideální volbě pro začátečníka daleko.

A trendy typu "dneska frčí ..." jsou mnohdy uhozené (a zkreslené - co "frčí" na diskusních fórech je často jiné než co "frčí" opravdu v praxi) - ano, ObjectPascal je jazyk, který se nepoužívá tolik co kdysi, Delphi ještě koncem 90. byl majoritní hráč na desktopu, teď je jedním z minoritních a mnohými zapomenutých. Nicméně na naučení se základů programování je Pascal příjemnější jazyk než C, byť je k němu méně zdrojů a těch kvalitních ještě méně. Zcela určitě u něj lze zůstat, ale PHP, Python, .Net nebo Java nabídnou více jistoty při shánění práce.

200
Studium a uplatnění / Re:prednasky FIT CVUT, FIT VUT, FIT MUNI
« kdy: 06. 01. 2014, 07:48:11 »
Za FIT VUT můžu říct, že s přednáškama to tam není tak slavný. Před 3 lety, kdy jsem tam skončil, se nenahrávalo už skoro nic a většina přednášek stejně stála za prd ... a podle toho, co jsem nedávno mluvil s lidmi tam stále studujícími, nic moc se nezměnilo.

Spíš než shánět záznamy z přednášek bych doporučil přihlásit se někde na kombinované studium, chceš-li vysokoškolské přednášky. Nicméně ty přednášky jsou dělány pro lidi studující daný studijní program jako celek, kde "všechno souvisí se vším", např. algoritmizace hodně čerpá z vyčíslitelnosti a složitosti nebo teoretické informatiky, které ale mají k záživným předmětům k..va daleko. Jenomže tyto souvislosti nejsou vždy zcela zřejmé (mě, stejně jako mnohým ostatním, začalo mnoho věcí docházet až při učení se na státnici) a nikdo se neobtěžuje je vysvětlit - prostě si odpřednáší "svoje", vypíchně věci, které jsou podle něj důležité a věci potřebné do dalších předmětů vynechá atd. Každopádně bys musel sehnat a prohlédnout záznamy téměř všech povinných předmětů, aby Ti neunikly podstatné souvislosti. Poměr "výživnost vs čas" vychází hooodně bídně.

Jestli nechceš začínat další vysokou školu, tak se na takovéto přednášky vyprdni, nestojí to za to. Zkus se podívat na přednášky primárně určené pro "veřejnost", zrovna témata jako úvod do programování, základní datové struktury a z části i základy algoritmizace se dají na netu najít celkem snadno a bez těžko-pochopitelné hnusné formální teorie, která je v pozadí. Začínáš-li s programováním a nemáš-li v úmyslu mít vysokoškolské znalosti (které podle mě jsou potřeba, ale na rootu jsem asi jediný s tímto názorem), není k tomu důvod.

Upřímně, podle čeho se Ti líp učí principy řadících algoritmů?
Podle něčeho takového http://www.youtube.com/watch?v=2HjspVV0jK4 nebo něco takového http://cs.fit.edu/~pkc/classes/writing/hw13/song.pdf ? To druhé je sice psaný text, ale většina učitelů na výšce neumí na přednášce srozumitelně říct ani tohle - takový text by byl často hodnocen jako příliš neformální.

201
Vývoj / Re:Jazyk podobný C#
« kdy: 05. 01. 2014, 17:07:35 »
Java ma vic nativni vzhled nez WPF

Swing je lépe porovnávat s Windows.Forms než s WPF.

Každopádně pokud má karol problém s paddingy ve Swingu, je chyba někde jinde než ve Swingu samotném. Každý vzhled je má nastaveny jinak.

202
/dev/null / Re:Hledá se schopný programátor Andorid/C++
« kdy: 03. 01. 2014, 20:11:40 »
Takto formulovana nabidka prace je tak vagni, ze se Vam ozvou jen diletanti a pochybne existence. "Schopny" programator v C++ je vesmes dobre placeny clovek, a je po nem velka poptavka. Mel byste proto uvest alespon ramcove nasledujici veci, ktere budou kazdeho "schopneho" programatora zajimat:

* o jaky typ pracovniho uvazku se jedna? Plny uvazek, castecny, prace na zivnostnak, spoluprace zadarmo, za sex?
* jaky je rozsah projektu? Je to prace na vikend, nebo na 2 roky?
* co takovemu schopnemu programatorovi nabidnete? Plat, benefity, atd.
* bude pracovat jako "osamely vlk" nebo v tymu?
* proc by mel jit delat zrovna k Vam?

Mimochodem, neni to "Andorid", ale "Android" (pochybuji ze se jedna o preklep, vzhledem k tomu, ze se tento vyraz nachazi na dvou mistech).

Samozřejmě, že chce levného studenta/diletanta. Ale nemůže přece napsat inzerát "Hledám nezkušeného patlala, který zatím nemá co napsat do životipisu" :-) .

Ne, teď vážně - ten inzerát je dost nešťastně motivovaný, příspěvek kde píšeš o C++ na desktopu je přesný opak, než vyznívá inzerát. Belzebubův příspěvek by měl být vytesán do kameňa a snad jen zbývá dodat, že u takovýchto inzerátů je také potřeba představit firmu. Jste softwarová firma? Dle stylu věty "Předpokládá se, že aplikaci zpracuje sám dle zadání" to vypadá, že nejste (to, že programátor pracuje sám dle ne zcela přesného zadání a radí/koordinuje svou práci s kolegy/manažery/zákazníkem je v dnešní době samozřejmost).

203
Vývoj / Re:Jazyk podobný C#
« kdy: 02. 01. 2014, 11:34:26 »
eMko: ona i java se da pouzit pro realtime aplikace, ale musis pouzivat jine nastroje, nez pro "bezne" programovani, viz treba Javolution a Java RTS

Neříkám, že se to nedá, právě naopak, vím, že se používá. Ale vzhledem k povaze původního příspěvku to nemá smysl rozpitvávat.

204
Vývoj / Re:Jazyk podobný C#
« kdy: 02. 01. 2014, 09:11:39 »
Můžeš zkusit jazyk jménem Scala, který se kompiluje do bytecodu JVM.

Problém je spíš v použití JVM/.Netu pro realtime aplikace. Na tomto poli jsou kladené zcela jiné požadavky než u běžných aplikací (navíc se liší mezi jednotlivými RT aplikacemi) a začíná to již u operačního systému.

205
Vývoj / Re:Jak nejlépe programovat GUI v Javě?
« kdy: 30. 12. 2013, 12:03:22 »
Od té doby to šlo hodně dopředu :-) .

206
Vývoj / Re:Jak nejlépe programovat GUI v Javě?
« kdy: 29. 12. 2013, 18:23:45 »
Proc se trapit s Javou, kdyz lze pohodlne a rychle udelat GUI aplikaci v Pythonu nebo Ruby nad Qt nebo Gtk(resp. wxWidgets) ? Rychlost zrovna u GUI nebude problem, navic jsou to jen bindingy kdy vetsi cast kodu stejne pobezi z knihoven zkompilovanych z C/C++.

Qt? To je tiez celkom "peklo". Pracoval som s C++ a Qt. A teda nebol som z toho nadseny. Taketo externe kniznice, ktore su potrebne na GUI, narobia niekedy viac skody ako osohu. V skole som sa s tym stretol prvy a verim aj posledny krat. Chcel som pracovat s tym pod Windows, nakoniec som to nespojazdnil a presiel na linux. Kamarat robil BP, kde vyuzival Qt a tiez s tym mal problemy. Nehovoriac o tom, ze ked niekto vyvija projekt a potom na servery kde to ma bezat, zvysia verziu, tak to nejde prelozit. Ako vazne super cele Qt :)
Ked si to zoberiem zo strany bezproblemovosti, tak pri zinstalovani Visual Studia, .Net frameworku, tak mi ostane ovela viacej povodnych vlasov, ako pri nastavovani nejakych extra kniznic, kde viac zosediviem

Kdy to bylo, když ses s nimi naposledy setkal? Zrovna Qt udělalo celkem slušný krok dopředu a už, i pod Windows, je to naprostá brnkačka - stáhnout, nainstalovat, spustit QtCreator (celkem povedené vývojové prostředí pro vytvoření GUI; prostě tool, který dělá jednu věc, ale dobře). Nicméně souhlasím, že poslední Visual Studio+ReSharper je přece jen jinde.

207
Vývoj / Re:Jak nejlépe programovat GUI v Javě?
« kdy: 29. 12. 2013, 17:03:10 »
Z mnoha důvodů.

Je to overhead navíc, další "část" aplikace, kterou je třeba testovat, aktualizovat, udržovat, instalovat, podporovat ... v momentě, kdy počet externích částí jde do desítek, už to přestává být p*del. Navíc komunikace mezi pythonem a programem nad JVM není až tak snadné a přidává to další komplexitu (kdyby původní tazatel neměl program napsaný v Javě, asi by k němu nechtěl Javové GUI, toť můj předpoklad) a zpomalení. To, že mnoho opensource vývojářů podporu programu odbude s tím, že podporují pouze nejnovější verze knihoven, které jsou v balíčkách jeho oblíbené distribuce, bohužel nelze použít v komerční praxi.

Kromě toho Python nebo Ruby mají taky svoje mouchy (největší asi GIL - Global Interpreter Lock, což efektivně znemožňuje jakoukoliv normální práci s vlákny). Samozřejmě se jim lze vyhnout, ale pak jsme tam, kde jsme byli na začátku.

Binding na externí knihovny je supr věc, ale je to věc celkem komplexní a je velmi náročné to udělat dobře. Máš proti sobě 2 světy, které Tě drtí jako mlýnské kameny - výsledkem bude v dobrém případě kompromis, v horším prasečina. Udržovat je také není sranda, protože musíš reagovat na změny v obou prostředích. Za svůj život už jsem viděl velkou spoustu nekompletních nebo nadále neudržovaných bindingů, které není sranda použít na jiném projektu, než je použil původní autor (a upřímně, taky jsem takových pár vytvořil "protože rozpočet projektu") - prostě příliš mnoho, abych věřil projektům typu "část je bindnutá, část nefunguje, část nebude, tady je tutorial, podívejte se do dokumentace k původnímu projektu" (toto je konkrétně python binding na WxWidgets).

A na závěr duševního průjmu: vytvářet GUI v Javě není větší trápení než v Pythonu nebo Ruby. Kdyby to opravdu byl propastný rozdíl, jak se tu často s oblibou prezentuje, Javu by používal málokdo. Pohled na složení pracovních nabídek ale hovoří jinak.

Klidně používej Python nebo Ruby nad Qt nebo Gtk(resp. wxWidgets), pokud to na Tvém projektu funguje jak má. Ale toto řešení není samospasitelné a přestože třeba pro malé projekty funguje, pro větší nikoliv.

208
Vývoj / Re:Jak nejlépe programovat GUI v Javě?
« kdy: 29. 12. 2013, 15:00:21 »
Zhovedilosti od M$ mi na notebook nesmú. M$ pomerne slušne ukradol Javu a z toho urobil .net. Sám od tejto absurdity vo w8 upúšťa, takže nechápem, prečo v tom niečo nové vyvíjať. Okrem toho to pôjde jedine na windoze.(mono je paskvil)

To, že .Net je ukradený paskvil, se dalo říct ve verzi 1.0 nebo 1.1. V dnešní době, tedy době 4.0 a 4.5 je situace přece jen jiná. A co se týče Windows 8 ... ty mají .Net Framework 4.5 předinstalovaný a mnoho systémových věcí je na něm závislých. Není pravda, že by se od něj upouštělo.

Možná máš na mysli Windows RT, tedy runtime pro tu zhulenost místo nabídky Start. Tam je technické řešení trochu jiné právě kvůli tomu, že ARMové tablety a telefony mají nižší výkon.

209
Vývoj / Re:Jak nejlépe programovat GUI v Javě?
« kdy: 29. 12. 2013, 13:48:04 »
noname:

Koukám, že mnoho lidí tu radí Swing, což je celkem slušná knihovna, bohužel ale desktop technologie se posouvají trochu dále, což se o Swingu říci nedá. Zkus nahlédnout i na JavaFX (verze 2). Aplikace v něm napsané nejsou výrazně náročnější než u Swingu a lépe umožňuje oddělit uživatelské rozhraní od kódu aplikace (má např. i nativní podporu pro databinding).

JavaFX v. 1 byl hodně neúspěšný pokus Sunu udělat "něco jako WPF na .Netu" a dopadlo to dost tragicky. Současná verze už je celkem použitelná, bohužel na mnoho novinek se čeká až s vydáním Java 8.

Jinak s tím, že cokoliv delšího než cca 250ms, co se v aplikaci děje, se má dít ve vlákně na pozadí, platí samozřejmě obecně. Podíváš-li se např. na framework Griffon (je sice pro groovy, ale využívá Swing/JavaFX), tam již jsou připravená řešení právě pro tyto příklady a nemusíš se s tím drbat sám.

210
Vývoj / Re:Proč je Java pomalá a problémová?
« kdy: 19. 12. 2013, 07:59:54 »
Používat Visual Studio bez pluginu jménem ReSharper (od tvůrců prostředí IntelliJ IDEA) je celkem nesmysl, protože neumí ani desetinu toho, co vývojová prostředí pro Javu. S ReSharperem už je to jiné kafe, nicméně je velmi znát, že s tímto pluginem je VS pomalejší - podobně jako IDEA nebo Eclipse (drží-li se počet pluginů na rozumné úrovni). Paměťově je taky na zhruba stejné úrovni. Visual Studio+ReSharper má celkem dobrou podporu pro C# (a prý ještě Visual Basic, ale na ten jsem od doby VB6 nesáhl, tak nevím). Podpora pro C++ je ve VS celkem ostuda.

QtCreator je "lightweight" na tvorbu uživatelských rozhraní. V oblasti GUI sice exceluje, ale udržovat v něm celý netriviální projekt už bude dost o držku.

Ideu/Eclipse nelze po stránce pomalosti či paměťové náročnosti srovnávat ani moc s Visual Studiem, natožpak s QtCreatorem.

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