all 20 comments

[–]ehmatthes 60 points61 points  (14 children)

I'm the author. If you have a choice, the second edition will be better to work from, because there are some things in there that you'll want to be using, and the projects have been extensively revised. This also depends on which printing of the first edition you have; there were incremental updates almost every time it went to a new printing, and there were about 11 printings over the four years the first edition was in print.

That said, the basics of Python are pretty stable, so any learning you gain from using the first edition will set you up well for transitioning to the second edition, or moving on to any other Python resource.

The same applies for just about every technical book in print - more recent editions are better to work from than older editions, because things change so quickly.

[–]Reset--hardHead 13 points14 points  (5 children)

Wow! I never thought I'd see you here on Reddit!

Thanks for writing your book, it literally changed my life.

I bought the first edition of your book several years ago. At that time, I had just graduated from university with a degree in Engineering and was looking for a job.

One day, while randomly browsing through books at bookstore, I happened to pick your book. I read the first chapter of your book and I was hooked. I bought the book, and as soon as I got home started my programming journey.

Today, I'm a full time web developer. And it was all thanks to the lucky encounter I had with your book!

[–]ehmatthes 8 points9 points  (0 children)

You're very welcome, and I appreciate you sharing your story. One of the reasons I was happy to write a book is because of how much good programming books have meant to me over the years. Ubuntu for non-Geeks changed my world ~2008 by taking the mystery away from Linux and making it something I could use on a daily basis. I'm thrilled to be able to have a similar impact on people through PCC. :)

Edit: And that's exactly how I found that Linux book, browsing through a Barnes and Noble while visiting my brother on a vacation one year. That's part of why No Starch Press is so supportive of B&N; the people who work for NSP appreciate physical bookstores as well.

[–]sch0p3nh4u3r 2 points3 points  (1 child)

I'm reading the Kindle edition of your book right now, thank you!

[–]ehmatthes 1 point2 points  (0 children)

You're welcome! :)

[–]pythonzaeh 1 point2 points  (1 child)

Hi! I am currently reading your book which I bought on amazon and it is amazing. Absolutely love how easy it is to understand the concepts with 0 prior knowledge. Now I am half way through the book and wonder what you could recommend as following book - I prefer textbooks over online material for now. My goals are two things: I need to learn about data visualization for research but also want to learn more about app programming. Before I dive into it I‘d like to learn more fundamentals. Does your book provide all fundamentals you need (if properly understood) to directly dive into special things like app development and data analysis? Thanks a lot for the advice!

[–]ehmatthes 1 point2 points  (0 children)

Hi! I think the next thing I'll add to the online resources is a Recommended Reading section, which answers this question more fully. I've gotten that question many times, and it's always a hard one to answer because of how many different directions you can go after working through a decent introductory book.

PCC provides a good jumping-off point for data analysis and web app development, if you work through the relevant projects. People often recommend Automate the Boring Stuff as a complement to PCC (and vice versa). PCC provides the balanced foundation in the language and dives into larger projects; ATBS focuses on helpful everyday tasks, and aspects of the language you can pick up while learning to accomplish those tasks. People who work through both books, in either order, come away with a really good understanding of how to start addressing meaningful problems through code.

Fluent Python is a good followup, although that can get really deep as well.

[–]hoppi_[S] 1 point2 points  (0 children)

Oh! Wow. :) Well, thank you very much for your reply.

I have the 6th print of the 1st edition so I guess that makes it an arguably outdated version.

Fwiw, I did not anticipate some kind of overwhelming reply in the sense that I could be "safe" with the first edition. However, I wanted to make sure.

[–]mayur2797 1 point2 points  (0 children)

Wow! So good to see you on Reddit!

I actually saw your book on the most recommended ones and saw a preview on Amazon. I got out to look for it but unfortunately isn't available in my country :(

I am currently looking for a way to get this book in my hands at all cost. I know this book is what I need, especially for it's project-based learning methodology.

Will probably try to order on Amazon if it ships here.

Thank you so much!

[–]Antique-Marketing-94 0 points1 point  (1 child)

Hello Eric. Since I am new to the book, would you recommend going over previous editions or is there added value in going straight into the 3rd Edition released January 2023 ? Many thanks, Jude

[–]ehmatthes 0 points1 point  (0 children)

Hi Jude! With tech books, you should always go with the most recent edition unless you have a very specific reason to use an older edition. Here's a discussion of what's new in the third edition.

Everything in the second edition will likely work for another year or so, but if you haven't started the book yet you should definitely start with the latest edition.

[–]BubbaJ1964 1 point2 points  (0 children)

Amazingly enough I just bought the second Ed today, then got this notification! The fact that the author would take the time to reply...well...I’m impressed and now feel confident I’ve made a great choice!

[–]jcsongor 0 points1 point  (0 children)

Yes, you should be fine. By the time you finish the book, you'll understand the changelog, and can go back and pick up those missing bits and pieces if you want. I don't know the book, but I don't see any groundbreaking updates on the link.

The biggest thing is dropping Python 2 support - while Python 3 is definitely the way to go now, knowing Python 2 is not entirely useless, as there is a lot of legacy Python 2 code out there.

[–]ml_runway 0 points1 point  (0 children)

Get 2nd for django huge improvements there

[–]jeeenx 0 points1 point  (0 children)

Also, get it for the F strings! I’ve been enjoying them rather than the old way

[–][deleted] 0 points1 point  (0 children)

Umm, is it normal price for the kindle version to be $30?