Jak začít s computer science?

ITbaby

Jak začít s computer science?
« kdy: 26. 10. 2013, 12:11:30 »
Ahojte,

v podstate jak nazev napovida, chtel bych se vas zeptat, jak zacit s CS. Jde mne o to, ze trochu programovat uz umim, Java, Python, ale chtel bych pochopit i jak a proc pocitace delaji ruzne veci, jak funguji, proc jsou jazyky takove jake jsou apod.. Znate nekdo nejaky tutorial nebo knihu, ktera mne tak nejak predstavi tu IT vedu obecne? :) Diky
« Poslední změna: 29. 10. 2013, 17:58:55 od Petr Krčmář »


tadeas


eMko

  • ****
  • 456
    • Zobrazit profil
    • E-mail
Re:Jak začít s Computer science
« Odpověď #2 kdy: 26. 10. 2013, 13:47:15 »
Já viděl záznam SICP z roku 86. Jedná se o skutečně dobrý výchozí bod pro samouka a dobrá doplňková informace pro někoho, kdo se již v informatice pohybuje.

Jinak jakž-takž základy se dají pochytit i při studiu - některé univerzity nabízejí studium informatiky kombinovanou formou a dá se to skloubit s prací. Když jsem s přechodem z bakaláře na magistra šel z denní na kombinovanou formu studia, samotného mě překvapilo, že vedle mě nesedí jen mladí borci, ale také lidi s mnoha zkušenostmi z praxe.

kaktus

Re:Jak začít s Computer science
« Odpověď #3 kdy: 26. 10. 2013, 14:34:26 »
coursera.org (pokud neumis anglicky, naucit, jinak nema cenu..:) )
zalozit si ucet na githubu a zacit prispivat/tvorit
prihlasit se na FEL ;)

standy

Re:Jak začít s Computer science
« Odpověď #4 kdy: 26. 10. 2013, 15:08:30 »


eMko

  • ****
  • 456
    • Zobrazit profil
    • E-mail
Re:Jak začít s Computer science
« Odpověď #5 kdy: 26. 10. 2013, 15:52:17 »
http://diveinto.org/python3 :)

To nelze řadit do Computer Science. To je učebnice programovacího jazyka (a prostředí); byť se jedná o velmi kvalitní literaturu, o informatice jako takové neříká nic. Programování je pouze část aplikované informatiky, což je trochu jiná disciplína, než teoretická informatika - tedy to, na co se tazatel pravděpodobně ptá.

zalozit si ucet na githubu a zacit prispivat/tvorit

Toto, na rozdíl od zbytku příspěvku, také bohužel není relevantní.

ITbaby

Re:Jak začít s Computer science
« Odpověď #6 kdy: 26. 10. 2013, 16:32:58 »
kaktus: Ano courseru znam, dokonce jsem tam dodelal i par kurzu, ted zrovna delam jeden na python. Ale neni tam zadny kurs, ktery by seznamil ctenare ci posluchace s uvodem do Informatiky jako vedy takove. A jinak studuju uz techniku, ale jineho zamereni.

lelio

Re:Jak začít s Computer science
« Odpověď #7 kdy: 26. 10. 2013, 19:21:26 »
kaktus: Ano courseru znam, dokonce jsem tam dodelal i par kurzu, ted zrovna delam jeden na python. Ale neni tam zadny kurs, ktery by seznamil ctenare ci posluchace s uvodem do Informatiky jako vedy takove. A jinak studuju uz techniku, ale jineho zamereni.

Ahoj, MIT a Harvard majú vlastnú obdobu Coursery, platformu edX. Čo sa týka CS, sú tam oveľa rigoróznejšie kurzy, na hony lepšie spracované, ale aj náročnejšie, ako na coursere, kde je latka často položená dosť nízko, aby si neodplašili masy.
Pre CS na tejto platforme ponúka kurzy hlavne MIT. Majú tam kurz https://www.edx.org/course/mit/6-00-1x/introduction-computer-science/1122, ktorý je priamym (aj keď okliešteným) nasledovníkom slávneho sicp, ktorý sa interne na MIT vyučoval v LISPe. Tento predmet teraz inovovali, rozhodli sa LISP nahradiť Pythonom :/ Kurz na ktorý som dal link vyššie je presnou kópiou ich interného univerzitného úvodného kurzu do CS. Čo je pre Teba dôležité, neučí sa tam iba jazyk Python, ale dôraz je ukázať, ako rozmýšľa „computer scientist“. Je tam mimo iného dôraz na vysvetľovanie vecí ako je zložitosť (big O notation), OO prístup a využívanie a pochopenie štatistiky a pravdepodobností pri modelovaní. Ja som to absolvoval v lete a so žiadnou courserou sa to nedá ani porovnať. Je to suverénne najlepší a najobohacujúcejší online kurz, aký som kedy absolvoval. Som si istý, že tam sprístupnený materiál a kopa, kopa cvičení a perfektné automatické analyzátory zadávaného kódu naučia *základy programovania* lepšie, ako akýkoľvek úvodný semester na našich VŠ. Navyše bude mať v budúcnosti náväznosť na toto: eminentne Ťa bude zaujímať táto _pripravovaná_ kolekcia kurzov „Foundations of Computer Science“. Vyššie spomínaný kurz zároveň slúži ako úvod do tejto série. Budú sa dať robiť samozrejme, aj zadarmo:
https://www.edx.org/xseries

Ja sa ďalej teším, až si nájdem čas aj na tieto ďalšie kurzy:
https://www.edx.org/course/louvain/louv1-01x/paradigms-computer-programming/1203
https://www.edx.org/course/mit/6-002x/circuits-and-electronics/1130

ITbaby

Re:Jak začít s Computer science
« Odpověď #8 kdy: 26. 10. 2013, 23:11:34 »
lelio: Wow, diky moc za cas venovany tomuto tematu. Abych byl uprimny vubec jsem netusil ze existuje az tolik tech ruznych online kurzu, je to neuveritelne. A docela i s tebou souhlasim, ze ta coursera je takova zvlastni. Ten Python kurz, na kterem jsem ted zapsany na me pusobi trochu zbrkly a nevim, jestli se v nem clovek nauci i programovat neco jineho nez hry. Profesori tam porad hrajou kamen,nuzky a delaji ze sebe trochu sasky, asi fakt pro min narocne obecenstvo nebo pro nejake deti, ktere jsou talentovane ve vypocetni technice, to mozna neni spatny uvod. Kazdopadne diky za kurzy, urcite je prohlednu, hledal jsem nejake jistejsi zdroje.
A jestli se muzu zeptat, ty si samouk nebo studujes primo IT a jen si obrusujes sve znalosti?

Re:Jak začít s Computer science
« Odpověď #9 kdy: 27. 10. 2013, 08:11:01 »
Jako zaklad bych doporucil naucit se matematiku (od mnozin a vyrokove logiky, algebry, analyzy az po diskretni matematiku, pravdepodobnost a statistiku...) pokud mozno vcetne dukazu, tim vas samozrejme nechci znechutit, ale je potreba ason tusit o co jde :) Zacit s CS muzete hned tady http://www.cs.vsb.cz/jancar/TEORET-INF/ti-text.2010-01-20.pdf (nejsem student VSB). Dobre materialy se daji najit i na MUNI, UPOL, CVUT a jinych skolach. Online kurzy uvedene vyse jsou taky ok pokud rozumite dobre anglicky. V CJ se daji najit i docela zajimave stare knihy, napr. Automaty a gramatiky od pana Chytila (najdete ve vetsine univerzitnich knihoven, kde se muzete jako nestudent registrovat za nejaky poplatek a nebo napr. zde http://uloz.to/xmJSn4y/automaty-a-gramatiky-pdf). Kdybyste hledal neco konkretniho tak se klidne zeptejte ;)

eMko

  • ****
  • 456
    • Zobrazit profil
    • E-mail
Re:Jak začít s Computer science
« Odpověď #10 kdy: 27. 10. 2013, 08:49:11 »
Ten text od prof. Jančara je velmi náročná četba pro někoho, kdo IT nestuduje, navíc trochu opomíjí matematickou logiku a matematiku jako takovou, byť některé znalosti z ní vyžaduje (ty jsou v jiných předmětech, které teoretické informatice předchází - ta je v letním semestru prváku navazujícího studia). Každopádně na své stránce http://www.cs.vsb.cz/jancar/TEORET-INF/teoret-inf.htm má i odkazy na nějaké názorné flashové animace od Dr. Kokota, které jsou dobré k dovysvětlení.

Nicméně si myslím, že toto hned na začátek bude velmi odrazující, byť ten materiál jde od úplných základů až po Random Access Machine, od kterého je jen krůček k programování v assembleru.

mikrom

Re:Jak začít s Computer science
« Odpověď #11 kdy: 27. 10. 2013, 16:38:13 »
... animace od Dr. Kokota ....
Asi nebol mysleny Dr. Kokot  :D ale Dr. Kot.

eMko

  • ****
  • 456
    • Zobrazit profil
    • E-mail
Re:Jak začít s Computer science
« Odpověď #12 kdy: 27. 10. 2013, 18:48:44 »
2 různé názvy pro jednu a tu samou entitu. ;-)

mikrom

Re:Jak začít s Computer science
« Odpověď #13 kdy: 27. 10. 2013, 19:57:14 »
CS zahrnuje vsetko mozne - pozri:
http://en.wikipedia.org/wiki/Computer_science
Nie je to iba ten teoreticky formalizmus ako automaty, gramatiy a teoria zlozitosti ale aj prakticke pouzitie: databazy, pocitacova grafika, ...
Podla mojho nazoru ti ten formalizmus moc pre prax neda - ked to nestudujes - tak to sam sotva pochopis a asi ta to nebude bavit. Orientuj sa radsej prakticky.

davkol

Re:Jak začít s Computer science
« Odpověď #14 kdy: 27. 10. 2013, 23:32:43 »
Doporučuju knížky Klasická matematická logika (Antonín Sochor) a Kapitoly z diskrétní matematiky (Jiří Matoušek, Jaroslav Nešetřil), něco k algebře a příp. matalýze. Dál kurs Paradigmata programování 1 z KMI UPOL (na webu jsou IIRC skripta a záznamy přednášek). Dál něco k formálním jazykům a automatům, vyčíslitelnosti a složitosti (dobrou knížku opět nedoporučím, protože jsem četl hlavně divné). Prolistuj si TAOCP a Cormena. To by jako přehled mohlo stačit. Pak stačí vybrat si něco typicky v análech ACM.