Re: [python] literatúra

2012-04-24 Tema obsahu Martin Stiborský
Ahoj,
tip na knížku ti nedám, protože žádná začátečnická pro Python mě
nenapadá. Všechno co jsem kdy potřeboval jsem našel na internetu.

Z literatury pro pokročilejší jsem si nedávno pořídil Core Python
Programming 
(http://www.amazon.com/Core-Python-Programming-2nd-Edition/dp/0132269937),
ale těžko hodnotit, zatím jsem se do ní pořádně nepustil.

Spíš bych se rád zeptal, proč myslíš, že kniha je lepší? Nic proti
knihám, ale zrovna když se chci učit Python, tak nejspíš sedím u PC,
spuštěný interpreter, google, nějaké pdfko (jako třeba Dive into
Python) a zkouším, hledám, čtu, atd...

On Tue, Apr 24, 2012 at 2:28 PM, Filip Muller filip.mulle...@gmail.com wrote:
 Zdravím som začiatočník s pythonom :) zatial som čerpal informácie z
 internetu ale ževraj z kníh sa učí lepšie tak by som bol rád za doporučenie
 niakej literatúri zo základmi a potom aj niaku tú zložitejšiu ktorou by som
 mohol pokračovať :) díky
 ___
 Python mailing list
 Python@py.cz
 http://www.py.cz/mailman/listinfo/python



-- 
S pozdravem
Martin Stiborský

Jabber: st...@njs.netlab.cz
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] python pro studenty

2012-04-24 Tema obsahu Hynek Fabian
 Mám za to, že u programování na webu je rizikem vždycky to, co
 dostávám od uživatele -- tedy data z formulářů a podobně. Pokud mi
 chce web někdo heknout, snaží se podstrčit nějaká svá data nebo kód,
 který vydává za data. Takže já jako programátor bych neměl dopustit,
 aby to, co vypadá jako data, šlo za nějakých okolností spustit. A zde
 jsou určité skupiny znaků, které jsou nebezpečné: závorky, zpětné
 apostrofy atd.
Ono je spustit a spustit. Tomu co popisuješ se říká code injection a je
to možné aplikovat mnohem šířeji. Například:
- pokud se uživatelský vstup dostává do eval()
- pokud se uživatelský vstup dostává do sql dotazu (což je téměř vždy)
  (obligátní xkcd: http://xkcd.com/327/ )
- pokud se uživatelský vstup dostává do shellu (voláním system() nebo
popen()
To jsou jen nejčastější případy, podle toho si tam kdo dá mohou nastat i
jiné (cronab, url, xslt, šablonovací systémy…) a každý má jiné
escapování. Ošetřit všechno je prakticky nemožné už jen vzhledem k počtu
možností, nemluvě o tom že jednotlivé syntaxe spolu kolidují.

 U Perlu je hezkou vychytávkou přepínač -T. Ten všechna data od
 uživatele považuje za nakažená vyléčit je je možné jen kontrolou
 přes regulární výraz. Dokud to programátor neudělá nemůže nakažená
 data použít v rizikových situacích. Nevíte o nějaké podobné možnost
 pro Python?
To je s prominutím pitomost. V PHP taková vlastnost kdysi byla ale bylo
z toho víc škody než užitku a nakonec byla zrušena.
Kromě toho – k čemu by to bylo? Pokud se mají tvoji svěřenci něco
naučit, tohle je jedna z lekcí bez kterých se neobejdou. Spoléhat se že
to někdo udělá za ně je přesně to co by se naučit neměli :-)
A protože učený z nebe nespadl, musíš prostě konzervativně předpokládat
že díry budou. Šel bych proto spíše cestou izolace – apač v privátní
síti, mod_user, chroot, jail, virtualizace…



___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] literatúra

2012-04-24 Tema obsahu zu1234

Nejvíc se naučíš z vlastní práce.
Na informace Ti bude internet prvních 20 let bohatě stačit :-)

Pak si už budeš bohatě vydělávat a rozhazovat za zbytečnosti.
Například na odborné knihy (až je budou muzea likvidovat)


Dne 24.4.2012 14:46, Filip Muller napsal(a):

No to bolo odporúčanie že keď som samouk tak sa naučím viac z kníh ako z
internetu :) ja som zatial tiež čerpal iba z netu :)


To Ti poradil někdo kdo vyrostl v době kdy internet ještě neexistoval (a 
dinosauři už neexistovali).


Tedy asi stejně starý jako já :-))

ZU
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] lite?==?UTF-8?Q?ratúra

2012-04-24 Tema obsahu Petr Přikryl
Každému pasuje něco jiného. Knížka se dá číst ve vlaku i bez notebooku.
Čtečka typu Kindle (nebo něco podobného) může být dobrým kompromisem.
Alespoň občasné připojení na Internet je asi nevyhnutelné.

A taky si musím přihodit.. :) http://diveintopython3.py.cz/

Mějte se všichni fajn,
Petr
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] Dotaz na vi(m)kingy -- podpora pro Python

2012-04-24 Tema obsahu Petr Přikryl

Díky všem za vim tipy ;)

P.
__
...
Mě se docela líbí propojení Vim s interpretem. Je na to hezký plugin pro
iPython: https://github.com/ivanov/vim-ipython

Ještě je zajímavý plugin TagList. Díky němu se dá hezky poskočit na
začátek definice funkcí. Na root.cz vyšel seriál docela hezký seriál:
http://www.root.cz/clanky/vim-na-plny-vykon-vimrc/#ic=articles-relatedicc=nej-vim-pluginy-12064
http://www.root.cz/clanky/nej-vim-pluginy/
a o ještě Pavel Satrapa:
http://www.root.cz/clanky/jak-si-prizpusobit-vim/
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] python pro studenty

2012-04-24 Tema obsahu Marek Nožka
Ahoj.

Díky všem za reakce. Jsou to pro mě cenné informace. Sám se v tom musím
pořádně zorientovat. 

 drzim palce, protoze tlacit python do studentu uz od stredni skoly je
 super ;)) sam v tom podporuju meho otce, ktery se o to snazi na
 gymnaziu v roudnici nad labem.

Já jsem si zatím vyzkoušel učit ještě Pacal a C a musím říct, že Python
byla opravdu nejlepší volba. A čím hlouběji se do Pythonu nořím, tím jsem
si jistější že moje tlační jde správným směrem.

...no abych řekl celou pravdu: u nás si studenti vybírají buď Python nebo
Visual Basic. 

Díky, Marek
-- 
 @ @ @ Marek Nožka
 '.@
 :*`@   email: marek @t tlapicka d.t net
 `*'   jabber: tlapicka @t jabber d.t spseol d.t cz
  ::  web: http://tlapicka.net/
  `'
  `'   Powered by Debian GNU/Linux
  `.**'
¨¨
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] python pro studenty

2012-04-24 Tema obsahu rajcze
Tak z vyberu Python nebo VB je Python asi ta lepsi volba. Ale IMHO na
vyuku programovani (jen zduraznuju, ze vidim rozdil mezi programovanim
a algoritmizaci), neni Python nejlepsi jazyk. Mozna jsem prilis
starosvetsky, ale je potreba vedet, jak veci funguji uvnitr, aspon
trochu, a na to ma python moc vysokou uroven abstrakce. Navic kdyz
vezmu jake zmateni dokazou udelat mutable/immutable typy predavane
jako parametr funkce... No zlaty Pascal :)

Ale samozrejme zalezi na tom, co ma byt cil toho predmetu - jestli
naucit decka aspon trochu programatorsky myslet, pak je to Python
all the way up. Ale bal bych se nekoho ucit na Pythonu programovani.

J.

2012/4/24 Marek Nožka ma...@tlapicka.net:
 Ahoj.

 Díky všem za reakce. Jsou to pro mě cenné informace. Sám se v tom musím
 pořádně zorientovat.

 drzim palce, protoze tlacit python do studentu uz od stredni skoly je
 super ;)) sam v tom podporuju meho otce, ktery se o to snazi na
 gymnaziu v roudnici nad labem.

 Já jsem si zatím vyzkoušel učit ještě Pacal a C a musím říct, že Python
 byla opravdu nejlepší volba. A čím hlouběji se do Pythonu nořím, tím jsem
 si jistější že moje tlační jde správným směrem.

 ...no abych řekl celou pravdu: u nás si studenti vybírají buď Python nebo
 Visual Basic.

 Díky, Marek
 --
  @ @ @     Marek Nožka
  '.@
  :*`@   email: marek @t tlapicka d.t net
  `*'   jabber: tlapicka @t jabber d.t spseol d.t cz
  ::      web: http://tlapicka.net/
  `'
  `'   Powered by Debian GNU/Linux
  `.**'
    ¨¨
 ___
 Python mailing list
 Python@py.cz
 http://www.py.cz/mailman/listinfo/python



-- 
Rules of Optimization:
Rule 1: Don't do it.
Rule 2 (for experts only): Don't do it yet.
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python


Re: [python] python pro studenty

2012-04-24 Tema obsahu Hynek Fabian
 Tak z vyberu Python nebo VB je Python asi ta lepsi volba. Ale IMHO
 na vyuku programovani (jen zduraznuju, ze vidim rozdil mezi 
 programovanim a algoritmizaci), neni Python nejlepsi jazyk.
Já by řekl že je to právě naopak – z vysokoúrovňových jazyků je python
mezi nejlepšími. Java je mnohem složitější, visual basic je zanesený
generacemi historických reliktů, php prudce účelové, perl má možná
průhlednou filozofii ale obfuskovanou syntaxi :-) …zapoměl jsem na někoho?
(ruby nepočítám – IMO je to překrásný jazyk, ale tolik nepodobný
ostatním potomkům fortranu že se na výuku nehodí)

 Mozna jsem prilis starosvetsky, ale je potreba vedet, jak veci
 funguji uvnitr, aspon trochu, a na to ma python moc vysokou uroven 
 abstrakce.
IMO všechno v čem se nemusíš starat o alokaci paměti má moc vysokou
úroveň abstrakce. Pascal není nízkoúrovňový, jen tupý. V dnešních
podmínkách bych low-level uvažování ilustroval (zájemcům) spíš v nějakém
jednočipovém asembleru nebo třeba corewars, A programování dělal v
jazyce ve kterém se dá programovat na dnešní úrovni.
A Python má tu krásnou vlastnost že základní kroky – proměnné, cykly,
funkce – nejsou o nic složitější než v pascalu nebo basicu.

 Navic kdyz vezmu jake zmateni dokazou udelat mutable/immutable typy 
 predavane jako parametr funkce... No zlaty Pascal :)
Zrovna třeba problémy s mutable/imutable typy (já bych to nazval rozdíl
mezi kopií objektu a referencí na objekt) jsou překrásná ukázka toho na
co dítka narazí až narazí na ukazatele a reference v C/C++. S tím
rozdílem že interpret poskytuje záchranou síť místo segfaultů.
Podobných věcí by se dalo najít spousta – objekty, iterátory,
funkcionální triky, přenositelnost, síťování, paralelizace,
metaprogramování…
To že děti pascalu (včetně mě) takové vlastnosti automaticky považují za
bůhvíjak pokročilé jen dokazuje jak máme pascalem poškozené mozky :-/

 Ale samozrejme zalezi na tom, co ma byt cil toho predmetu - jestli 
 naucit decka aspon trochu programatorsky myslet, pak je to Python 
 all the way up. Ale bal bych se nekoho ucit na Pythonu 
 programovani.
Ja bych se rozhodně nebál. V práci nějaký ten milionek řádků v pythonu
máme, a programujeme bez uvozovek :-) A o lidi které bychom nemuseli
odnaučovat pascalovské/céčkařské/javistické (škrtni co se nehodí)
idiosynkrazie máme veliký zájem.

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] python pro studenty

2012-04-24 Tema obsahu rajcze
No, ja tusil ze to smrdi flejmem (a to jsem pravoverny Pythonista ;D)

2012/4/24 Hynek Fabian hynek.fab...@firma.seznam.cz:
 Tak z vyberu Python nebo VB je Python asi ta lepsi volba. Ale IMHO
 na vyuku programovani (jen zduraznuju, ze vidim rozdil mezi
 programovanim a algoritmizaci), neni Python nejlepsi jazyk.
 Já by řekl že je to právě naopak - z vysokoúrovňových jazyků je python
 mezi nejlepšími. Java je mnohem složitější, visual basic je zanesený
 generacemi historických reliktů, php prudce účelové, perl má možná
 průhlednou filozofii ale obfuskovanou syntaxi :-) ...zapoměl jsem na někoho?
 (ruby nepočítám - IMO je to překrásný jazyk, ale tolik nepodobný
 ostatním potomkům fortranu že se na výuku nehodí)

Vsak ja myslim, ze spolu souhlasime, nebo ne?

 Mozna jsem prilis starosvetsky, ale je potreba vedet, jak veci
 funguji uvnitr, aspon trochu, a na to ma python moc vysokou uroven
 abstrakce.
 IMO všechno v čem se nemusíš starat o alokaci paměti má moc vysokou
 úroveň abstrakce. Pascal není nízkoúrovňový, jen tupý. V dnešních
 podmínkách bych low-level uvažování ilustroval (zájemcům) spíš v nějakém
 jednočipovém asembleru nebo třeba corewars, A programování dělal v
 jazyce ve kterém se dá programovat na dnešní úrovni.
 A Python má tu krásnou vlastnost že základní kroky - proměnné, cykly,
 funkce - nejsou o nic složitější než v pascalu nebo basicu.

Jasne, ale co ti da programovani ATMegy pro psani na pocitaci? De
fakto nic, na mikrocipech se naucis, ze musis umet trochu obfuskovat,
aby ti vysly registry a moc ses nezdrzoval sahanim do pameti, a pak uz
je to jen o rizeni periferii... Celkem nuda...

 Navic kdyz vezmu jake zmateni dokazou udelat mutable/immutable typy
 predavane jako parametr funkce... No zlaty Pascal :)
 Zrovna třeba problémy s mutable/imutable typy (já bych to nazval rozdíl
 mezi kopií objektu a referencí na objekt) jsou překrásná ukázka toho na
 co dítka narazí až narazí na ukazatele a reference v C/C++. S tím
 rozdílem že interpret poskytuje záchranou síť místo segfaultů.
 Podobných věcí by se dalo najít spousta - objekty, iterátory,
 funkcionální triky, přenositelnost, síťování, paralelizace,
 metaprogramování...
 To že děti pascalu (včetně mě) takové vlastnosti automaticky považují za
 bůhvíjak pokročilé jen dokazuje jak máme pascalem poškozené mozky :-/

Ukazatel a reference je IMHO zakladni koncept, kterymu je treba
rozumet. Kdybys videl jaky jsem opravoval na vysoke prvakum projekty v
Ccku (jaksi nepochopili smysl reference a dereference, a kdyz
potrebovali predat ukazatel do pole z funkce do funkce tak jim
postupne rostl pocet hvezdicek :D). A tim ze je to nepruhledny jsem
myslel spis to, ze pokud nevis co je predani ukazatelem a co hodnotou,
tak to tezko jde vysvetlit jinak nez Je fakt, ze list, dict, object
(...) se vam ve funkcni meni, ale retezec, int (...) ne. Deal with
it.

Ja jsem teda taky ditko pascalu, a krom metaprogramovani (v cemkoli
jinym nez v lispu :D) to za pokrocily veci nepovazuju. Jen zastavam
staromilecky nazor, ze je potreba nejen vedet, _ze_ neco jde, ale i
proc to tak je. Pak totiz vznikaji prasarny s exponenicialni
slozitosti, misto logaritmicke, a podobne :)

 Ale samozrejme zalezi na tom, co ma byt cil toho predmetu - jestli
 naucit decka aspon trochu programatorsky myslet, pak je to Python
 all the way up. Ale bal bych se nekoho ucit na Pythonu
 programovani.
 Ja bych se rozhodně nebál. V práci nějaký ten milionek řádků v pythonu
 máme, a programujeme bez uvozovek :-) A o lidi které bychom nemuseli
 odnaučovat pascalovské/céčkařské/javistické (škrtni co se nehodí)
 idiosynkrazie máme veliký zájem.

Jak rikam - zalezi na tom, co si clovek klade za cil. Za milionek
radku pythonu respekt (pokud je to jeden projekt). To mozna ani nechci
vedet co to je zac, mohl bych se vydesit :D Na druhou stranu, kdyz uz
musis nekoho odnaucovat prasarny z pascalu/c/javy, tak vetsinou
vymysli prasarny i v Pythonu.

Ale tu nouzi o schopny lidi sdilim. Jeste ze se Zen of Python da
vysvetlit za odpoledne ;)

J.


-- 
Rules of Optimization:
Rule 1: Don't do it.
Rule 2 (for experts only): Don't do it yet.
___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python