Jak se naučit programovat?

martin

Jak se naučit programovat?
« kdy: 12. 04. 2011, 09:57:01 »
Co byste doporučili běžnému Windows uživateli, který se chce naučit programovat v Linuxu? Tedy kromě toho přejít do prostředí Linuxu :-)

Základy mám pár desítek let za sebou a nepamatuji se, jak vlastně začít z nuly. Výběr jazyka je vcelku vedlejší. Spíš by mě zajímalo, co všechno člověk musí znát, aby byl schopen se jazyk naučit z knížky. Např. bude asi dobré vědět, co je to bajt, že :-)

Máte nějaké tipy? Nejlépe přímo zkušenosti začátečníků by mne zajímaly. Díky


Jork

Re: Jak se naučit programovat?
« Odpověď #1 kdy: 12. 04. 2011, 10:33:42 »
doporučil bych především pokládat lépe (méně "obecně") dotazy.. sice je asi pravdou, že dobrý programátor je líný programátor, ale vše má své limity.. Hodně štěstí

asdvasdv

Re: Jak se naučit programovat?
« Odpověď #2 kdy: 12. 04. 2011, 10:34:55 »
Clovek nemusi vediet nic - zalezi to len od knizky.

Inak pri uceni programovania by si sa mal naucit algoritmy a to do takej miery, do akej miery chces vediet programovat. A potom by si mal samozrejme vediet vymyslat nejake dalsie algoritmy s tym, ze sa inspirujes uz naucenym.

Veci ako "byte" alebo nejaka reprezentacia v PC a syntax jazyka su uz len trocha "omacky" okolo, ktoru sa clovek nauci velmi rychlo.
Potom su tu este veci, ktore sa pomerne dost intenzivne menia (velkosti cache, pipeliny u CPU) - u tych staci vediet nejaky zaklad, ktory je vsade rovnaky, ostatne sa da najst v dokumentacii. Tieto znalosti sice pomozu aj vyrazne zrychlit program (fungovanie cache), ale bez dobreho algoritmu to bude nanic.

smoofy

  • *****
  • 1 059
    • Zobrazit profil
    • E-mail
Re: Jak se naučit programovat?
« Odpověď #3 kdy: 12. 04. 2011, 10:38:41 »
Obrnit se trpelivosti, ujistit se, jakemu typu programovani se chce clovek venovat (GUI aplikace, sitove aplikace daemoni etc.) a podle toho volit jazyk a pak zvolit vhodnou distribuci co se tyce prechodu na linux. Pokud clovek chce programovat tak asi nechce travit hodiny a hodiny nastavovanim a zprovoznovanim systemu, zejmena jako novacek.  Pro tyhle ucely je perfektni ubuntu. Mne pri mojich zacatcich s linuxem pomohlo moc.


v

Re: Jak se naučit programovat?
« Odpověď #4 kdy: 12. 04. 2011, 10:44:06 »


JS

Re: Jak se naučit programovat?
« Odpověď #5 kdy: 12. 04. 2011, 11:20:09 »
Ja popravde receno moc nechapu tu otazku. Z hlediska programovani je dnes uz castokrat operacni system vedlejsi zalezitost. Prakticky kazdy jazyk (snad krome C# a VB) ma implementaci i pro Linux. Takze by to asi chtelo upresnit, co konkretne se snazite programovat. A pokud vam nejde ani tak o jazyk, jako spis o programovani na urovni OS (tzn. nejake zaklady Unixu), nevim, co na tom resit, jak zacit - proste si asi koupit nejakou knizku, ja mam treba (uz trochu starsi) http://www.root.cz/clanky/linux-zaciname-programovat/. Urcite vam lide v diskusi daji i mnohem lepsi doporuceni, pokud to trochu upresnite.

martin

Re: Jak se naučit programovat?
« Odpověď #6 kdy: 12. 04. 2011, 12:04:49 »
Myslím, že knížka "Linux - Začínáme programovat" je pořád na uživatele, co neví, co je bajt nebo jak je reprezentová obrázek nebo text v souboru, stále dost velké sousto. Normální uživatel neví nic o ASCII natož UTF-8 nebo kontrolních znacích typu \t, \n atd.

Pokud je někdo schopen se z knížky naučit Diango nebo Rails, tak bude schopen se naučit i tlustou aplikaci s GUI. Problém je, že normální uživatel není schopen hned na začátek ani jedno právě pro zmíněnou absenci základů a čtení takové literatury je jako pro nefyzika číst kvantovou mechaniku.

Nebo se pletu? Lze do toho skočit po hlavě a základy pochytit v průběhu? Myslím, že pokud by existovalo nějaké rychlé shrnutí typu co je bajt, obrázek, soubor, binární soustava, tak by to docela urychlilo start.

Díky, za náměty.

Pavel 'TIGER' Růžička

Re: Jak se naučit programovat?
« Odpověď #7 kdy: 12. 04. 2011, 12:05:17 »
No já myslím, že na rozjezd je skvělé HTML, pokud ho neovládáte, je dobré se ho naučit, protože dříve, či později na něj narazíte. Je to sice programování v uvozovkách, dá se naučit rychle a během toho se zapřemýšlí, jakým směrem dál.

dvdmchl

Re: Jak se naučit programovat?
« Odpověď #8 kdy: 12. 04. 2011, 12:26:44 »
HTML je značkovací jazyk, to fakt nemá s programováním nic společného, ani v uvozovkách ne.
Jinak pdo linuxem se programuje úplně stejně jako pod widlema, jen se používají jiné nástroje.

Pořád se dělá to samé. Veme se úkol, ten se rozdělí na dílčí podůkoly, ty se dále dělí až není na co dělit a to se pak napíše do kódu v nějakém jazyku.

Takže k původnímu dotazu. Naučte se programovat na libovolném systému. Pak budete umět programovat i pod linuxem, prostě proto, že se to v principu nijak neliší.

JS

Re: Jak se naučit programovat?
« Odpověď #9 kdy: 12. 04. 2011, 12:41:42 »
Myslím, že knížka "Linux - Začínáme programovat" je pořád na uživatele, co neví, co je bajt nebo jak je reprezentová obrázek nebo text v souboru, stále dost velké sousto. Normální uživatel neví nic o ASCII natož UTF-8 nebo kontrolních znacích typu \t, \n atd.

Aha, tak to jsem to spatne pochopil. Myslel jsem, ze jste myslel, ze zaklady programovani mate uz nekolik let za sebou. Jinak totiz, jak uz psali ostatni, je volba platformy podradna. Doporucil bych zacit v Pythonu, na Linuxu je v kazde distribuci, nebo treba Active Python je pekna distribuce pod Windows. Mozna by bylo uzitecne koupit si k nemu nejakou knizku, ale ted vam zadne doporuceni nedam, protoze to nesleduji. (Kdybych mel deti, a chtel je ucit programovat, asi bych ted jel podle The Land of Lisp, ale to neni vas pripad.)

alefo

Re: Jak se naučit programovat?
« Odpověď #10 kdy: 12. 04. 2011, 16:03:44 »
Tiez by som uvital vediet, co znamena ,,programovat v Linuxe".

Znamena to shell scripting? Ovladat to, co sa spomina v Advanced Linux Programming, teda procesy, vlakna, synchronizacne mechanizmy, IPC? Programovat moduly do jadra?

Alebo vyvijat GUI v GTK ci QT?

Ublas

Re: Jak se naučit programovat?
« Odpověď #11 kdy: 12. 04. 2011, 16:41:45 »
Skus trebars tento odkaz: http://howto.py.cz/index.htm 

Re: Jak se naučit programovat?
« Odpověď #12 kdy: 12. 04. 2011, 17:23:38 »
Skus trebars tento odkaz: http://howto.py.cz/index.htm
To je uz trosku out-of-date. Na python pokial knizku tak odporucam tuto: http://knihy.cpress.cz/python-3.html 8) pripadne nejaky tutorial na internete. Tiez odporucam ucit sa python 3 a nie 2 (je lepsi ;) ).

JS

Re: Jak se naučit programovat?
« Odpověď #13 kdy: 12. 04. 2011, 17:33:17 »
To je uz trosku out-of-date. Na python pokial knizku tak odporucam tuto: http://knihy.cpress.cz/python-3.html 8) pripadne nejaky tutorial na internete. Tiez odporucam ucit sa python 3 a nie 2 (je lepsi ;) ).

Knizka o Pythonu je to mozna dobra, ale nevim, jestli je vhodna pro nekoho, kdo neumi vubec programovat (prece jenom, takove veci jako regularni vyrazy a vlakna.. a jen na konci mala nenapadna zminka o GUI).

Pavel 'TIGER' Růžička

Re: Jak se naučit programovat?
« Odpověď #14 kdy: 12. 04. 2011, 19:24:49 »
@dvdmchl ... máte pochopitelně pravdu, přesto je dobré ho znát :-D