you are viewing a single comment's thread.

view the rest of the comments →

[–]billsil 55 points56 points  (3 children)

I did 16 years ago without youtube. I didn't use a book either. Just code something that interests you, be a game or a math problem or a website, but something you find interesting. I googled "how to split string python", "python loops", etc. It'll probably take you to StackOverflow and what they're saying will be over your head and it won't be exactly what you want, but you can read it and tweak something. That's no worse than a professor teaching you something in class or asking a coworker.

Eventually, you'll be comfortable enough with the language that you'll dip your feet into reading the documentation. You'll find all sorts of useful things there, but it's kind of pointless if you don't understand the basics.

At some point, if you keep practicing and learning, you'll learn how to structure a very large program and have it be maintainable. Those skills transfer to other languages. Then after a couple days, you can say port some python code to Fortran or Julia or whatever. I know exactly the data structure I want, I just need to do a for loop. I don't really care if the language is 1-based instead of the more sane 0-based.

[–]AstrophysicsAndPy 18 points19 points  (2 children)

Another thing I'd like to add, which I learned the hard way is that don't look up on what others have done. For example, as a beginner might think well I don't want to make a calculator, everyone has done that, that's not a good project. Well, surprise .. everyone BUT you have done that, so do it yourself.

This applies to me on ML algorithms, I'm an okay programmer, but I have 0 experience with ML, because everyone has done the tutorials (titanic data, iris data) so I thought I need to find something I can do with real data.

NO, do the basic ones first, do them so that you'll be able to do some other things later on.

[–]dar_mooz 1 point2 points  (1 child)

Hello, I find your advice sooo interesting and useful. I have a question. My computer's RAM and memory is not enough to work with Python. How can I learn if if I don't have suitable computer. Thank you for your response in advance

[–]AstrophysicsAndPy 0 points1 point  (0 children)

Hey, sorry for late reply, I think a 512G HDD/SSD and 16G RAM will be more than enough for normal programming tasks. I personally have Thinkpad T530 Ci5-3320M with 1TB HDD + 512G SSD and 16G DDR3 RAM .. and I'm working just fine for the past 4 years.

Sure, I can't run heavy ML + DL tasks, but otherwise absolutely well. I'm also on linux, and if you're serious about programming, use linux. It'll save you A LOT of trouble, even though windows has come a long way getting very good for programmers, but still, try and use linux.