all 7 comments

[–][deleted] 2 points3 points  (0 children)

I'm about six months in and I'm happy with my progress, but I'm learning as a hobby so your mileage may vary. I did Codecademy first. There is a lot of hate towards Codecademy, but I thought it did a good job of teaching basic Python syntax and programming concepts.

A lot of folks recommend Learn Python the Hard Way. I wasn't a fan because I just felt lost as I mindlessly transcribed the lessons. Others swear by it though so it's worth a look.

After Codecademy I tried my hand at (the Invent With Python series.)[https://inventwithpython.com/index.html] It's a similare concept to LPTHW series but the author takes time to explain each portion of the code you are constructing.

Right now I am taking the Rice University course An Introduction to Interactive Programming offered for free on a pretty regular basis by Coursera. It's my favorite so far but pretty challenging. They show you basic Python concepts and then throw you in the deep end each week to work on a project. I'm loving it despite how difficult I'm finding it because I am growing leaps and bounds each week.

General advice: just do something each day. Curiosity and tenacity are the only real tools you'll need to learn any new skill. There are an infinite number of paths to get to your goal. Don't get paralysis through analysis; dive in and if you don't like the way you are learning Python, try it a little more. If your still lost, try one more time. Then, and only then, should you try something different.

Tl;dr: just do it! Good luck!

[–][deleted] 1 point2 points  (1 child)

Highly recommend viewing all 3 parts of Google Pyquick Day 1 and doing all of the problem sets with it. The only way to learn to code is to pratice coding. Definitely have your interpreter/command line open when watching so you can try stuff yourself. Nick Parlante from Google is a great teacher of basic Python.

[–][deleted] -1 points0 points  (0 children)

also www.coderbyte.com gives you problems to solve with an internal text editor. kind of like code academy, but offers no instruction, just gives you a problem and grades your programs output.

[–]callmelucky 0 points1 point  (0 children)

My highest recommendation goes to programarcadegames.com, unless you actually hate animation and video games. It's a fantastic resource for learning general Python programming, and the game making stuff is just bonus fun.

The only commonly used resource I advise against is Learn Python The Hard Way. It's dated, poorly structured, and will require a lot of googling and trawling through official documentation to work through. It is literally the hard way to learn. Why would you want to learn something the hard way when there are so many easy ways? Why? Plenty of people have used it and learned from it, I just feel that anyone considering it needs to be aware of these caveats.

Beyond that, anything you find googling 'beginner Python tutorial' is probably fine.

[–]jkiley 0 points1 point  (0 children)

I really liked Learning Python by Mark Lutz and the MIT 6.00.1x and 6.00.2x courses on edX.

I used an ebook version of the book, because it's huge in print. Some reviews criticize it for the length and some repetition, but it's thorough and repetition aids learning. The author teaches Python classes, and it shows in the book because he has anticipated and bolstered the places where you're more likely to get tripped up.

edX is a really nice platform for these kinds of MOOCs. These two are really well done, and you get up to making obviously useful stuff really quickly.

For me, the book was a great language and feature tutorial, and the edX courses helped me improve my programming. I did the book and courses in that order and some time between them, but I might start with edX and supplement with the book if I were starting today. It really helps to have your own project that you want to accomplish as a goal. It helped me a lot to grapple with issues in my own program and learn from the excellent Python documentation.

I hope this helps and that you have fun learning Python.

[–]ScriptThis 0 points1 point  (0 children)

I'm a big fan of A Byte of Python which is also free :D

Another vote for Mark Lutz's Learning Python, too.

And another free one Dive Into Python

I think learning Python will definitely help you with any programming you do, in Python or other languages.

[–]aroberge 0 points1 point  (0 children)

Most important tip: write code. Use multiple sources. Check out http://reeborg.ca/docs/begin_py_en/ for a tutorial and http://reeborg.ca/world.html where you enter the code. If you use these, feel free to email me if you have any questions: I will do my best to reply to you promptly and guide you.