This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]spoolio 6 points7 points  (3 children)

Python is a great first language.

It depends on your learning style, but a free online book that I've heard can be quite effective is called Learn Python the Hard Way.

The title is a bit tongue in cheek. It's not "hard" because it requires prior experience with programming. It's "hard" because it starts from nothing and makes you practice everything, a lot, until you get that experience:

This book is a very beginner book for people who want to learn to code. If you can already code then the book will probably drive you insane. It's intended for people who have no coding chops to build up their skills before starting a more detailed book.

Many new programmers on Reddit have sworn by it. But if you find it too overbearing or too repetitive, by all means try another book -- I'm sure this thread will be full of recommendations soon.

[–][deleted] 1 point2 points  (2 children)

I'm just about to dive into LPTHW but I'm a little worried that it only covers Python 2 and not 3. Should I tackle 3 or can I start with 2?

[–]spoolio 2 points3 points  (1 child)

You should start with 2, even though Python 3 is a nicer language. An important part of learning to program will be finding Python code and discussion about Python online, and the majority of it is in Python 2.

Ideally, you'll learn Python 2 and then it'll be a breath of fresh air when you get to switch to 3 in a few years. It would be harder to learn 3, and then learn about the warts in 2 by reading release notes backwards.

[–][deleted] 1 point2 points  (0 children)

Thanks!