ISBN: 9780596009250

I don't think the number of tutorials matters, otherwise Haskell monads would be super easy to learn. ;-)

Python circa 2000 was a language that was easy to learn. [1] What you saw was basically what you got. Python in 2018... well... it has grown lots more features, which might not show up in tutorials but a beginner will see them as soon as they look at actual code. List comprehensions, generators, context managers, metaclasses, async/await, decorators, 2/3 split, ABCs, etc. Useful? Yes. Easy to learn or understand for a newbie? Maybe not so much.

Never mind that setting up an environment is no longer as easy as creating a 'lib' directory somewhere in $PYTHONPATH and unzipping files in there. Now we have many package managers, virtual environments, competing Python versions, you name it. Back in the day I started a Python "project" with a single file and worked from there, growing as necessary. Nowadays I see new projects with a dozen files and directories. Again, there are (presumably) reasons for all this, but easier it certainly is not.

Not sure where I fall with these books in terms of skill and knowledge. Looking through the table of contents for Learning Python I recognize everything and know what they are, but don't have a great masterful grasp of most of the stuff but I am afraid too much of it will be stuff I already know. On the flip side, Programming Python might be too advanced for me.

With a healthy amount of coding, I've gotten very comfortable with python, although I still feel like I'm not quite utilizing it idiomatically. As such, I've been going through Programming Python ( http://oreilly.com/catalog/9780596009250/ ) - which is very well written, IMO - as well as reading a healthy amount of other people's source code, notably CherryPy ( http://cherrypy.org/ ), since I use it a lot.

If you're experienced with other languages, I'd suggest implementing something like a tetris clone as an exercise in learning the language. If you're only experienced with web-dev (as is often the case these days), I'd recommend implementing a few small web-apps with CherryPy - it's the most "pythonic" "web framework" I've seen so far.

HackerNewsBooks.com is a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for sites to earn advertising fees by advertising and linking to Amazon.com.