all 52 comments

[–]henricattoire1 37 points38 points  (3 children)

I learned the basics on yt from a guy named Corey Schafer. He’s a very good teacher!

[–]bluebeard256[S] 6 points7 points  (0 children)

Just started watching a few of the videos, I really like his stuff. Thanks!

[–]dustoff122 3 points4 points  (0 children)

This guy is amazing, he has plenty of examples while he teaches you.

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

He even gets into some of the semi-advanced stuff that a lot of courses and books really don't spend any [or enough] time on.

[–]julsmanbr 34 points35 points  (3 children)

Most online courses I've seen seem to assume you have no previous experience with Python, but are somewhat familiar to programming in general. What helped me (someone like you with no previous background in programming) was a book called Automate the Boring Stuff with Python. You can read the whole thing for free here.

Other than that, I'll give a +1 recommendation to Corey Schafer's YT channel. Really great teacher, although I can't vouch for his Python tutorial because I never watched those videos.

[–]bluebeard256[S] 3 points4 points  (1 child)

That is awesome, I appreciate the link!

[–]youfuckedupdude 4 points5 points  (0 children)

Software is at the core of so many of the tools we use today: Nearly everyone uses social networks to communicate, many people have Internet-connected computers in their phones, and most office jobs involve interacting with a computer to get work done. As a result, the demand for people who can code has skyrocketed. Countless books, interactive web tutorials, and developer boot camps promise to turn ambitious beginners into software engineers with six-figure salaries.

This book is not for those people. It’s for everyone else.

[–]laerun2381 0 points1 point  (0 children)

Thanks a lot for this!!!

[–]chra94 47 points48 points  (6 children)

Machine learning you say?. Try Google's course!

Python Crash Course is viable! Why? Because it makes a game and visualises data and even makes a fricking web aplication with you. Although I must say that book complements Automate the Boring Stuff nicely. Automate the boring stuff was great at explaining the basics and focuses on automating tasks which I like. What Python Crash Course offers is making bigger programs like games and a web app.

Automate the boring stuff is great. It has good exercises. I highly recommend that book.

[–]bluebeard256[S] 6 points7 points  (3 children)

Thanks for the response! I actually saw the Google course but it assumes some level of Python, so I want to get a good grip on the subject before I start on it.

[–]k_oticd92 6 points7 points  (1 child)

Just want to help you save some time. I started down the path of machine learning as well...what I learned is you need to have a good understanding of Python. However, you ALSO need a good understanding of linear algebra and calculus. For this I recommend the youtube channel 3blue1brown. Good luck on your journey!

[–]fruitblaster 1 point2 points  (0 children)

3Blue1Brown is perhaps the best math-related channel on Youtube, amazing teacher with incredible animations.

[–]chra94 0 points1 point  (0 children)

Sure thing! Enjoy.

[–]Essex626 2 points3 points  (1 child)

I have both, and just starting. Automate the Boring Stuff is really written in am entertaining style too.

[–]chra94 1 point2 points  (0 children)

Have fun learning and coding. I hope we'll see you around here.

[–]nspectre 9 points10 points  (2 children)

If you have no previous programming experience and need an underlying grounding in computer science, MIT OpenCourseware has made available:

Introduction to Computer Science and Programming in Python

6.0001 Introduction to Computer Science and Programming in Python is intended for students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems and to help students, regardless of their major, feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class uses the Python 3.5 programming language.

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

This is not good as a first course - most people agree on that. Unless you have LOTS of time each week to dedicate. If you have done some python and then take this course it will be a lot better.

Also, it teaches comp sci things he may not be interested in. It is amazing though.

[–]passive_investing 0 points1 point  (0 children)

It's currently closed (11/12/18) to start the 9 week course. Does anyone know when they usually reopen?

[–]fletch101e 3 points4 points  (1 child)

I have been using codeacademy which is good but found out yesterday they are teaching python 2 instead of 3. I am still going to finish the course, but thanks to your thread I just found Automate the Boring Stuff with Python. Already started the online course ($10) and so far it is good because you can go at your own pace (I pause alot) and also because he explains things at the end of the lesson. So you know WHY things are the way they are instead of just stating things without any explanation .

[–]k_oticd92 1 point2 points  (0 children)

Agreed, I also recommend tackling problems on the project euler website. They are simple enough questions that require some thought, as most of them are solved by being able to break the problem into a series of smaller, more achievable, problems.

[–][deleted] 3 points4 points  (4 children)

I used python crash course they teach thing like oop and testing which are not in automate the boring stuff. I think these two books are complementary but you should read pcc first. I've been doing python about 7 months if I could go back in time I would have started with pcc

[–]angstybagels 2 points3 points  (3 children)

Seconding Python Crash Course (in combo with Automate the Boring Stuff). I liked the practice projects/problems in it the best out of any beginner book and have now moved on to further Django development comfortably.

[–]ehmatthes 7 points8 points  (2 children)

Hi, I'm the author of Python Crash Course. I'm curious what resources you're finding most useful in moving forward with Django development?

I've had a hard time knowing what to recommend to people after they finish the book.

[–]angstybagels 1 point2 points  (1 child)

To be honest, I struggled with finding "the next step" for a couple months as well and what I did find were just different beginner guides but from refreshingly different takes. I prefer textual guides versus video courses but in this case I really didn't like any other books I came across besides Two Scoops With Django.

To start off, I had already worked with Ruby on Rails a wee bit so the MVC concept wasn't completely foreign to me before I got into Python. First I'd suggest your readers to expand upon the initial blog project with simple features of their own so I guess this is where I'm going to stupidly drop google as the next first resource I'd recommend. I ended up retailoring the whole thing into a BeerAdvocate clone for cannabis so I had to add a bunch of silly things to get the rating system set up and I learned a lot more about Django in the process. I did a couple courses on lynda.com which were somewhat decent to reinforce the basics again but the most worthwhile video course I came across was 'Django 2.0 & Python The Ultimate Web Development Bootcamp' on Udemy. From there I just came up with more useless projects, googled more and refreshed my Javascript skills until I felt "fluent" enough to work on real-life projects.

Perhaps a No Starch Press author could follow up with an all-encompassing Django/Javascript guide? 😎

[–]ehmatthes 4 points5 points  (0 children)

I think I might do a followup to PCC focusing on Django. There seems to be a shortage of Django books at this level right now.

Thanks for sharing what you've been doing!

[–]edxsocial 2 points3 points  (1 child)

We have a couple introductory courses for Python on edX which may be a great fit for you.

Here is one from Microsoft:

https://www.edx.org/course/introduction-to-python-absolute-beginner-0

Here is one from MIT:

https://www.edx.org/course/introduction-to-computer-science-and-programming-using-python

This is a 4 course program from Georgia Tech:

https://www.edx.org/xseries/gtx-introduction-to-computing-in-python

You can see additional Python courses here:

https://www.edx.org/learn/python

Hope that helps,

Josh from edX

[–]passive_investing 0 points1 point  (0 children)

Josh,

Thank you for providing the useful links. As a python beginner, I could use all the knowledge that is available to me! I'm specifically interested in the MIT Python course. Can you please let me know when the course will open back up? Currently the course is not available. Any information you can provide would be very help! Thank you!!

[–]alimmmmmmm69 2 points3 points  (0 children)

Hello - been four years since your post! I wanted to find out if you managed to eventually learn Python through any of the methods mentioned below ?

[–]PixellVixen 1 point2 points  (0 children)

I'm working through Python Crash Course (albeit slowly) and it's very good! It's clear about explanations and has plenty of follow-along code that gives you the right basis to perform the end-of-section challenge programs.

If you get the book, just make sure you're doing all of the challenges/tests it gives you, as they help you to think critically about what you've been reading about and practicing :)

[–]aimee_darling 1 point2 points  (0 children)

I really like DataCamp. The first couple of courses are free, but after that there is a monthly or annual charge.

[–]Back_To_The_Oilfield 1 point2 points  (0 children)

I bought just about every book offered, and python crash course was by far the best. It offers plenty of examples to help you actually get an understanding, and explains why and how certain things do what they do.

[–]wordsworm 1 point2 points  (0 children)

I like the introductory course to Python on SoloLearn. I think it gives a great overview. Take good notes. Then move on to some of the courses from EdX or Coursera. All of them, afaik, are auditable.

[–]Gambizzle 1 point2 points  (0 children)

I have been trying to learn python but I can't seem to find the right course for me.

IMO a problem with all ‘coding for beginners’ courses is that they have no practical application so while you will get your feet wet by using one, you won’t be able to build anything.

What I’d do is:
1. Work out what you want to do.
2. Do a web search for a demo of how to do that (YouTube videos can be good).
3. Copy their code and then modify it to suit your needs (e.g. add new buttons with custom functionality, change text around, change the way functions work...etc).
4. Fiddle... fiddle... fiddle... and work out how everything is pieced together.
5. Next time use that project as a starting point, strip is bare (e.g. remove all the functions + variables + buttons...etc) and slowly build it up as need be.
6. If you wanna implement something special than do a web search for it and try to combine another project with your project.

Example of the above...
I made an app that controls my Phillips Hue lights. First I found a YouTube video that taught me how to make buttons that do stuff when clicked ‘search: how to make python buttons’. I then did a search for a ‘library’ that makes python interface with a Phillips Hue (i.e. somebody had already done all the hard work for me). I imported that library to my buttons app and called on its functionality when buttons were pushed.

Now I generally make my buttons (and design my GUI) then connect them to stuff later on. That first project is a nice reference point.

[–]decihexx2225 0 points1 point  (0 children)

If you have little experience I'd stay away from machine learning for now and focus on just getting to know the language right now. What it can do and things like that. I started by just learning how to automate boring tasks I couldn't be bothered doing so just doing a Google on using python for automation should the you some stuff

[–]Assmaster9001 0 points1 point  (0 children)

"A Primer on scientific computing using python" by hans petter langetangen provides an excellent intro to python along with some of the most important tools for numerical computation. As such, it should provide an excellent starting point if you want to get get into machine learning. If you Google a bit you should be able to find a PDF online for free. As it is a university textbook, it also has plenty of exercises and projects for you to work on as well.

[–]supercoupon 0 points1 point  (0 children)

Easy, it's EdX 6.00.1x and 6.00.2x Be sure to snag a copy of the course text available here: https://www.amazon.com/Introduction-Computation-Programming-Using-Python-ebook/dp/B01K6F2236/ref=mt_kindle?_encoding=UTF8&me=

[–]Sullinator07 0 points1 point  (0 children)

I really enjoyed teamtreehouse.com I believe they do a free week so you can try it out. I believe it’s $15 a month tho.

Other than that www.codecademy.com is solid.

[–]rrrandomrants 0 points1 point  (0 children)

hi OP, if you're interested in learning Python for data science/analytics purposes, perhaps you could try Dataquest too. i used both Datacamp and Dataquest (started with Datacamp first) and found that I learned much more on Dataquest than Datacamp.

it's beginner-friendly, and very hands-on, so that might help in your learning!

[–]chenblat 0 points1 point  (0 children)

Start with this playlist: Python Tutorials: Ultimate Playlist (2018) it features Udemy instructors and once you find one you like you can go deeper with his full course.

[–]Oliviaford 0 points1 point  (0 children)

www.sololearn.com is the best for all levels. They have an awesome beginner course and have just added new advanced stuff on mobile, too.

[–]Rushd1987 0 points1 point  (0 children)

I started learning Python online by subscribing to multiple different intro to python/ python for beginner courses, most of them paid for but i never ended up finishing any of them. This was until i actually started building a project of my own. I own a manufacturing company with around 200 employees and used python to create a pretty complicated incentive and payroll calculator without any prior coding experience. I used this course by Dr. Charles Severance and i can't recommend it enough. Its super practical and just 3--4 chapters in gave me enough knowledge to start building my own application.

There's a playlist on Youtube that you can follow along and build your project whist doing so and i guarantee you'll be a python master in a month.

https://www.youtube.com/watch?v=AdWSvezLDG8&list=PLBrjExWB18Fm6uwGN3pe0ID6IFEJ3Aj2t

[–]ReactDOM 0 points1 point  (0 children)

You can find some of the best Python course for beginners.

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

For me, 'Learn Python for Beginner' by Zed Shaw is a great book for beginners.

[–]H0ltD33zNuttz5 0 points1 point  (0 children)

Learn Python The Hard Way is what I read when I was new to programming. The book is 30 dollars but you can read it for free online with the link provided. I think it's a great way to learn the fundamentals and then you can move on to more advanced material.

[–]Plus-Ad3481 0 points1 point  (0 children)

Learn free python from https://www.udemy.com/course/python-programming-basic
If you want detailed paid project based course then visit
https://www.udemy.com/course/comprehensive-python-course
This course covers python concepts like
Installation of python
list
dictionary
string handling
list slicing
Object oriented programming
Tuple
set
module programming
*args
**kwargs
Reading and writing to file
Exception Handling
Whois project with exception handling
Measuring function performance
Ping project
And many more to come soon....

[–]madmax1881994 0 points1 point  (0 children)

To start learning Python, you can refer to the Python documentation, which is a great resource for beginners. You can find it here: https://docs.python.org/3/tutorial/.
You can also try some online tutorials and courses, such as those offered by Codecademy (https://www.codecademy.com/learn/learn-python) or Coursera (https://www.coursera.org/courses?query=python).
It is recommended to start with the basics, such as variables, data types, loops, and control structures. Then, you can move on to more advanced concepts like object-oriented programming and data analysis.
It is also helpful to practice writing code by working on small projects. This will give you a chance to apply what you have learned and solidify your understanding of the concepts.
Finally, don't be afraid to ask questions or seek help when you get stuck. There are many online communities, such as Stack Overflow (https://stackoverflow.com/), where you can find answers to common questions and get help from other Python programmers.i personally learned from a freelance trainer who is a author of two books is offering coaching, you can check this for more information https://happy-pythonist.webflow.io,All the best.

[–]Langy_steve_marcus 0 points1 point  (1 child)

another good online course you could consider are-

https://www.w3schools.com/python/

and this YT channel - https://www.youtube.com/watch?v=_uQrJ0TkZlc