Jak si rozšiřujete své vědomosti?

PsychoIT

Re:Jak si rozšiřujete své vědomosti?
« Odpověď #30 kdy: 13. 04. 2016, 20:15:23 »
Jak se učit - najděte si známý a zajímavý projekt na githubu, naučte se to používat a pak si přečtěte zdroják. Věci které jsou trendy a hype jsou vhodné, alespoň budete stíhat všem těm dnešním script kiddies 8).


Altruista

Re:Jak si rozšiřujete své vědomosti?
« Odpověď #31 kdy: 13. 04. 2016, 21:25:20 »
ak mam byt uprimny, nejake skriptovacie veci typu - javascript, jquery, a ine script ma nelakaju. nikdy som sa v tom nenasiel, a ked som nieco musel vyriesit pomocou javascriptu, jednoducho som to vygooglil a viac som tomu nevenoval pozornost. Nemotivovalo ma to venovat sa tomu

Greatlama

Re:Jak si rozšiřujete své vědomosti?
« Odpověď #32 kdy: 13. 04. 2016, 21:37:03 »
Já osobně bych doporučil studium jazyků (ne programovacích), třeba angličtinu. Nebo i jiné, záleží na oboru, kde se pohybujete, nebo chcete pohybovat.

Člověk si u toho alespoň trochu odpočine (od programování) a v budoucnu to může otevřít velmi zajímavé dveře.

Kit

Re:Jak si rozšiřujete své vědomosti?
« Odpověď #33 kdy: 13. 04. 2016, 22:36:33 »
ak mam byt uprimny, nejake skriptovacie veci typu - javascript, jquery, a ine script ma nelakaju. nikdy som sa v tom nenasiel, a ked som nieco musel vyriesit pomocou javascriptu, jednoducho som to vygooglil a viac som tomu nevenoval pozornost. Nemotivovalo ma to venovat sa tomu

Javascript je jen jedním z mnoha skriptovacích jazyků a mně osobně také moc nesedí. Ovšem pokud něco má běžet přímo v prohlížeči, tak jinou volbu nemám.

Skripty na druhou stranu bývají obvykle mnohem kratší než programy v kompilovaných jazycích a při vývoji se ušetří dost času - testy se dají spouštět bez kompilace přímo v editoru.

mikrom

Re:Jak si rozšiřujete své vědomosti?
« Odpověď #34 kdy: 13. 04. 2016, 23:36:00 »
ako si rozsirujete svoje vedomosti v oblasti IT, hlavne programovanie
Ja som od r. 2002 na http://www.tek-tips.com/ - prave pozeram, ze doteraz som sa tam prihlasil 13.265 krat
Su tam diskusne fora na rozne programovacie jazyky, databazove systemy, operacne systemy atd,...
Najprv som sa tam prihlasil, pretoze som potreboval pomoc pri rieseni nejakeho problemu z prace. Neskor ma to tak chytilo, ze som tam bol denne a tiez som zacal pomahat ostanym clenom s ich problemami. Tymto sposobom som vyriesil mnozstvo problemov a sam som sa tiez pritom zdokonaloval - napr. v Perl, Tcl, Ruby, REXX, VBscript, Fortran, COBOL a SQL DB2 ... atd.

Takze moja rada je: prihlas sa na nejake diskusne forum, ries tam prakticke problemy ostanych clenov a to ta bude udrzovat vo forme a posunie ta dalej.



noef

  • *****
  • 897
    • Zobrazit profil
    • E-mail
Re:Jak si rozšiřujete své vědomosti?
« Odpověď #35 kdy: 14. 04. 2016, 08:24:28 »
ak mam byt uprimny, nejake skriptovacie veci typu - javascript, jquery, a ine script ma nelakaju. nikdy som sa v tom nenasiel, a ked som nieco musel vyriesit pomocou javascriptu, jednoducho som to vygooglil a viac som tomu nevenoval pozornost. Nemotivovalo ma to venovat sa tomu

Tak ono je jedna vec napsat hello world v jQuery a druha opravdu porozumnet jazyku, coz v pripade JS prekvapive neni uplne trapne, a umet resit realne netrivialni problemy, mit rozhled v prostredi kolem jazyka - knihovny.

Ja jsem se k tomu dostal asi pres user scripty - ohybani cizich stranek k obrazu svemu. Ale pokud vas to netahne, tak bych spis doporucil neco z tech vice exotickych - Haskell, pripadne ten Prolog. Osobne si moc v Prologu stredni a vetsi projekty nedovedu predstavit (videl jsem ho ale jen kratce na skole), ale v Haskellu urcite ano. Pokud se motate kolem .NETu, tak mozna lehce pricichnout k F#?

Javascript je jen jedním z mnoha skriptovacích jazyků a mně osobně také moc nesedí. Ovšem pokud něco má běžet přímo v prohlížeči, tak jinou volbu nemám.

Take me moc nesedi/nesedel, nejak jsem si na nej ale zvyknul a novejsi verze vypadaji, ze jdou spravnym smerem. Muzete psat v jazyku, ktery se transpiluje nebo kompiluje do JS. Jak jsem psal, napr. LiveScript (vice dotazeny CoffeScript, je to trochu podobne Ruby nebo Pythonu, LiveScript ma nesctetne vice vychytavek, napr. operator |> [pipe, presmerovani do fce] nebo !-> [nevraci posledni vyraz jako vysledek]) nebo pokud chcete neco silne typovaneho, tak ScalaJS.

https://www.youtube.com/watch?v=9SalPdAEI28 - delsi predstaveni ScalaJS s priklady

Skripty na druhou stranu bývají obvykle mnohem kratší než programy v kompilovaných jazycích a při vývoji se ušetří dost času - testy se dají spouštět bez kompilace přímo v editoru.

Tohle (alespon u JavaScriptu) prestava platit. V beznych projektech mate nejake build scripty, ktere kod transformuji - vetsinou z ES6 do ES5, ktere podporuji vsechny "normalni" prohlizece, take se casto pouzivaji lintery, je treba zpracovat vsechny zavislosti a vsechny veci nejak spojit (bundle) a nastrkat do stranky, pripadne pokrocilejsi veci jako webpack, ktere netvori jeden bundle, ale nekolik, aby se to nenacitalo prilis dlouho, atd.

Je treba rozlisovat opravdu skripty - jsou kraticke a pousti se primo vs. aplikace, ktere jsou malokdy poustene primo a resi obecne slozitejsi ukol.

Skripty na druhou stranu bývají obvykle mnohem kratší než programy v kompilovaných jazycích a při vývoji se ušetří dost času - testy se dají spouštět bez kompilace přímo v editoru.
ak mam byt uprimny, nejake skriptovacie veci typu - javascript, jquery, a ine script ma nelakaju.

A samozrejme oblibeny termin "skriptovaci jazyky" - podle jedne z definic z wiki tam spada i vse nad JVM (napr. Java nebo Scala), protoze to vse je interpretovane pomoci JVM. Podle dalsi definice tam naopak uz ani JavaScript, Ruby ci Python nepatri, protoze bezne projekty v nich presahuji predepsany pocet radku na "skriptovaci" jazyk. A pak tu mame veci, ktere vetsina lidi jako skriptovaci jazyky nebere, jako Scala Script nebo Groovy, ktere bezi nad JVM ale pouzivaji se vyhradne (Scala Script) nebo bezne (napr. Gradle) pro skriptovani.

Re:Jak si rozšiřujete své vědomosti?
« Odpověď #36 kdy: 14. 04. 2016, 13:26:48 »
Ale pokud vas to netahne, tak bych spis doporucil neco z tech vice exotickych - Haskell, pripadne ten Prolog.
Misto Haskellu bych pro ucely zabavneho (ve smyslu "bavi me to") zkoumani fakt doporucil ten Elm. Intenzivne ho ted testuju a musim rict, ze autori odvedli fakt az prekvapive dobrou praci ve smeru priblizeni FRP "normalnim" lidem. Nevim, jak moc bezbolestne je s nim zacit pro cloveka, ktery FP nikdy nepouzival, ale urcite to bude o rad jednodussi nez Haskell. A az treba Elm prestane stacit, da se potom krasne prejit prave na Haskell nebo PureScript.

Myslim, ze pricichnout k FRP by mel ze studijnich duvodu snad kazdy programator, ktery to se sebou mysli vazne. Nikde jinde si tak hezky neprocvici systematicky cisty pristup, udalosti, transformace, skladani krasnych cistych funkci do prehlednych celku...

Kdyz uz nic jinyho, tak minimalne "Elm manifest" stoji urcite za prostudovani: https://github.com/evancz/elm-architecture-tutorial

zboj

  • *****
  • 1 507
    • Zobrazit profil
    • E-mail
Re:Jak si rozšiřujete své vědomosti?
« Odpověď #37 kdy: 14. 04. 2016, 14:03:41 »
Ale pokud vas to netahne, tak bych spis doporucil neco z tech vice exotickych - Haskell, pripadne ten Prolog.
Rozhodně doporučuju ten Prolog (tím neříkám, že Haskell ne, FP je také důležité) a některé jeho varianty jako XSB Prolog nebo λ-Prolog.

Re:Jak si rozšiřujete své vědomosti?
« Odpověď #38 kdy: 14. 04. 2016, 14:09:03 »
Rozhodně doporučuju ten Prolog
Ja taky, Prolog je mimoradne cenna zkusenost - i kdyby treba jenom proto, zakusit, jak muze byt formalne suprova myslenka prakticky nepouzitelna ;)

noef

  • *****
  • 897
    • Zobrazit profil
    • E-mail
Re:Jak si rozšiřujete své vědomosti?
« Odpověď #39 kdy: 14. 04. 2016, 14:13:02 »
Ale pokud vas to netahne, tak bych spis doporucil neco z tech vice exotickych - Haskell, pripadne ten Prolog.
Rozhodně doporučuju ten Prolog (tím neříkám, že Haskell ne, FP je také důležité) a některé jeho varianty jako XSB Prolog nebo λ-Prolog.

Si pamatuju, jak jsme na skole prskali, kdyz jsme v tom meli psat tymovy projekt :D. Ale v zaveru to bylo hodne zajimave, zkusili jsme si neco naprosto odlisneho. Psali jsme tusim AI pro nejakou deskovou hru a na konci predmetu nechali vsechny vytvory bojovat proti sobe, IMO hezky provedene :).

zboj

  • *****
  • 1 507
    • Zobrazit profil
    • E-mail
Re:Jak si rozšiřujete své vědomosti?
« Odpověď #40 kdy: 14. 04. 2016, 16:09:41 »
Ale pokud vas to netahne, tak bych spis doporucil neco z tech vice exotickych - Haskell, pripadne ten Prolog.
Rozhodně doporučuju ten Prolog (tím neříkám, že Haskell ne, FP je také důležité) a některé jeho varianty jako XSB Prolog nebo λ-Prolog.

Si pamatuju, jak jsme na skole prskali, kdyz jsme v tom meli psat tymovy projekt :D. Ale v zaveru to bylo hodne zajimave, zkusili jsme si neco naprosto odlisneho. Psali jsme tusim AI pro nejakou deskovou hru a na konci predmetu nechali vsechny vytvory bojovat proti sobe, IMO hezky provedene :).
Jo, je to úplně jiné a na mnohé úlohy mnohem efektivnější.

Re:Jak si rozšiřujete své vědomosti?
« Odpověď #41 kdy: 14. 04. 2016, 16:48:55 »
Si pamatuju, jak jsme na skole prskali, kdyz jsme v tom meli psat tymovy projekt :D. Ale v zaveru to bylo hodne zajimave, zkusili jsme si neco naprosto odlisneho. Psali jsme tusim AI pro nejakou deskovou hru a na konci predmetu nechali vsechny vytvory bojovat proti sobe, IMO hezky provedene :).
Školní projekty jsou trochu problém. Prolog se skvěle hodí na ukládání informací a vyvozování na základě pravidel. Pokud ale v Prologu píšu program, který má imperativní charakter (prvně udělej tohle a pak tohle), tak Prolog víceméně znásilňuju - vím, jakými kroky bude vyvozovat a využiju toho. Pokud je takhle školní projekt postavený, může to mít dva důsledky: 1. budu si ťukat na čelo, proč vůbec takový jazyk existuje a nikdy už ho nepoužiju 2. pochopím, že psát imeprativní program v Prologu je opruz a nikdy už to neudělám. Přitom podle mě by školní projekt v Prologu měl vést k něčemu úplně jinému: 3. pochopím, jak skvělý a v podstatě nezastupitelný nástroj Prolog je pro ukládání strukturovaných dat a vyvozování nad nimi. To ale můžu zjistit jenom pokud ho použiju tak, jak má v praxi smysl ho použít, a ne tak, jak se používá ve školních příkladech.

Re:Jak si rozšiřujete své vědomosti?
« Odpověď #42 kdy: 14. 04. 2016, 16:54:14 »
Mimochodem, proto taky nemusí být špatný zkusit si prvně Datalog - aby se člověk na ten nástroj díval spíš jako na databázi. A teprve až narazí na věci, na který Datalog nestačí, kouknout na Prolog - tou optikou Datalogu ho imho pochopí líp/realističtěji.

zboj

  • *****
  • 1 507
    • Zobrazit profil
    • E-mail
Re:Jak si rozšiřujete své vědomosti?
« Odpověď #43 kdy: 14. 04. 2016, 17:37:12 »
Ale pokud vas to netahne, tak bych spis doporucil neco z tech vice exotickych - Haskell, pripadne ten Prolog.
Rozhodně doporučuju ten Prolog (tím neříkám, že Haskell ne, FP je také důležité) a některé jeho varianty jako XSB Prolog nebo λ-Prolog.
Jinak psát v nějakém funkcionálním jazyce bez znalosti teorie kategorií je k ničemu, protože člověk pak nechápe základní principy a získá "blbé" návyky, kterých se pak těžko zbavuje. Jinými slovy, chce to dobrou knížku nebo radu zkušeného.

noef

  • *****
  • 897
    • Zobrazit profil
    • E-mail
Re:Jak si rozšiřujete své vědomosti?
« Odpověď #44 kdy: 14. 04. 2016, 17:38:10 »
Rozhodne se nazacinalo tymovym projektem, tim predmet koncil :). V prubehu semestru byla cvika a tam se zacinalo na tech asi klasickych prikladech s vazbami v rodine, listy, stromy atp. Prednasejiciho jsem moc nemusel (pan Kolar, pusobil dost namyslene), ale latka (FP a LP - Haskell a Prolog) to byla zajimava a cvicici se snazili.