Live data from Hacker News

Think Python, 3rd Edition

allendowney.github.io

31–40 of 126 posts

Re: Think Python, 3rd Edition

#31

What are some books for mid to advanced programming in Python? I already know Puthon and programming in general but want to improve my Python skills. I know only Fluent Python which I'm currently reading, and CPython Internals.

`Fluent Python` is more than enough; the rest of the language features you will understand them by reading the official reference manual.

Re: Think Python, 3rd Edition

#32
This book ALSO changed my life when I was first learning programming!! Not so much in terms of a pivot but of the way the book was written itself and how some concepts all of a sudden just made sense as a total freshman. Now, ~10-15 years later, seeing this third edition is such a nostalgia and I can't recommend this book enough!!!

Re: Think Python, 3rd Edition

#33
post #30
post #19

I love the Jupyter-/Colab-approach and would like to join the journey... and support the project by buying the book (although I don´t need it to follow the Colab?). But without subscribing to the OReilly-learning platform it seems that buying it on amazon is the only option, right ?

Green Tea Press (by Prof. Downey) has a donate button. That's probably a more efficient means of supporting the project than buying the book, considering all the middlemen.

Oh my ..., was skipping too fast through the page and didn´t see this, and also didn´t realize what he exactly is doing with his Textbook Manifesto etc. Ok, the Paypal-Link is a no-brainer for me now. Thanks for pointing out the obvious.

Re: Think Python, 3rd Edition

#34
Love Think Python, I have recommended it to so many learners: it balances the various concerns of a new programmer book really well. Allen Downey has a bunch of other books with somewhat similar approaches too https://greenteapress.com/wp/ -- some I do think he might have gone too far in the low-rigor side, but all the ones I've reviewed have been pretty good.

(I was sharing a table at a conference with Allen some time ago and told him how many times I'd recommended or bought people his books, and I think he thought I was bullshitting him.)

Re: Think Python, 3rd Edition

#35
How does one do proper concurrency in Python? As in separate "processes" running with encapsulation, fault tolerance, etc. For example, how does one bundle up a TCP client in a "process" such that the process handles failed connections, broken connections, retrieving data at periodic intervals (relatively fast), receiving "messages" from other "processes", etc.?

There's Ray, Pyro, Pykka, Celery, multiprocessing, asyncio, threads, Qt, and more, but all of them have issues. And a lot of it boils down to the GIL, although "processes" that are doing I/O such as TCP and other network communication should ideally reduce the GIL effect, to my understanding (is that right?).

From what I can tell, it's basically one of the worst language choices for systems of this nature, but I am trying to figure out how to do it because I need to.

Re: Think Python, 3rd Edition

#36

Think Python 2e changed the trajectory of my life. I took a single Java class and hated it so much I gave up on programming. A few years later as a network engineer I had a problem that seemed like it could be scripted and ended up picking up Think Python and fell in love with the language and programming in general.

This is just the sort of thing I needed to read. I am considering changing the trajectory of my own life, towards a more community/maker/teacher role, and I have a freelance/small business idea about teaching but I need sort of "soft syllabus" materials. I am learning Python myself, having just never had a need for it in all of my professional web development life (I've written apps in just about every other web-focu…

Think Python is also just a really great book, even for people who don't want to stick with Python long term.

Re: Think Python, 3rd Edition

#37
post #24

Earlier quoted context omitted.

Similar for me - I had learned some Java, Matlab, C, Perl here and there but it wasn’t until Think Python 2e that I was gripped and from there read many other books and changed my career to software.

Couldn't this result be more attributable to Python itself than the book?

In the abstract, yes. But I also know that Think Python is a great book.

(I came across Think Python when I was trying to help other people learn how to program. So I did not learn programming from Think Python, and Python is also not my favourite language. (It's also not my least favourite language, either. Far from it.))

Re: Think Python, 3rd Edition

#38

What are some books for mid to advanced programming in Python? I already know Puthon and programming in general but want to improve my Python skills. I know only Fluent Python which I'm currently reading, and CPython Internals.

You could also look into more general algorithm and data structure books, or into design books.

https://www.redblobgames.com/ has lots of really nifty articles, too.

Re: Think Python, 3rd Edition

#39
post #6

Tangential, is there a book to learn typing? I feel I need a hefty book to learn typing. Don't mind if you recommend a Typescript book or other language with similar concepts.

You mean types, right? Typing is what you do on a keyboard. If you want to understand type systems, Types and Programming Languages ( https://www.cis.upenn.edu/~bcpierce/tapl/ ) is the book most people start with. If that is too advanced for you, PLAI ( https://www.plai.org/ ) is a gentle introduction to programming language theory which includes type systems.

Those books are great; though I'm not sure whether they are good for a beginner? Getting your feet wet by programming in a few reasonably typed languages might be better, before you tackle TAPL?

(By 'reasonably typed' I mean something like Haskell, OCaml, even TypeScript or Facebook's hack. But not Go, C++ or Java.)

Re: Think Python, 3rd Edition

#40
This has been a great resource - I love this book! For the last 5 years, I've taught an intro to programming class at the college level and I always recommend that my students augment their resources with this book.

Glad to see it evolving!

Post reply on HN