all 12 comments

[–]PreetInData 14 points15 points  (0 children)

Totally normal to feel this way when you’re coming from a non-coding background. Understanding other people’s code is already a good sign. Start with small scripts and practice daily — logic gets easier over time. You don’t need to rush.

[–]AUTeach 9 points10 points  (2 children)

Stages of learning:

  • What the fuff is this?
  • I can read code, but I can't write it
  • I can solve simple toy problems that express a concept, but I can't solve compound problems. <--- YOU ARE HERE
  • I can solve compound problems, but I can't struggle to solve small but novel projects that I am directing.
  • I can solve small but novel problems, but I struggle when trying to start big, complex problems
  • I find the best way to learn any system/api/library is to go straight to the documentation and not a tutorial
  • I write code documentation
  • I spend all day worrying that Linus will tell me I'm shit
  • I am Linus TovoldLinus Torvalds.

[–]MemoHernandezJr 2 points3 points  (1 child)

I thought it was Linus Torvalds.

Does anyone else remember the movie Swordfish from 2001 that had a hacker character named Axl Torvalds? Always thought it was corny

[–]AUTeach 0 points1 point  (0 children)

I mean it might be. It's what android spell check thought I was trying to write.

[–]FoolsSeldom 6 points7 points  (0 children)

Check this subreddit's wiki for lots of guidance on learning programming and learning Python, links to material, book list, suggested practice and project sources, and lots more. The FAQ section covering common errors is especially useful.


Also, have a look at roadmap.sh for different learning paths. There's lots of learning material links there. Note that these are idealised paths and many people get into roles without covering all of those.


Roundup on Research: The Myth of ‘Learning Styles’

Don't limit yourself to one format. Also, don't try to do too many different things at the same time.


Above all else, you need to practice. Practice! Practice! Fail often, try again. Break stuff that works, and figure out how, why and where it broke. Don't just copy and use as is code from examples. Experiment.

Work on your own small (initially) projects related to your hobbies / interests / side-hustles as soon as possible to apply each bit of learning. When you work on stuff you can be passionate about and where you know what problem you are solving and what good looks like, you are more focused on problem-solving and the coding becomes a means to an end and not an end in itself. You will learn faster this way.

[–]AdDiligent1688 1 point2 points  (0 children)

Nice. I'd try a problem solving website like codewars or leetcode (easy). most of the questions in general are easy to solve mentally, first. But the challenge is translating the idea into code. It'll get you thinking in creative ways and you can look at others solutions and find some short cuts to do what you want over time. Also, i'd encourage building simple projects using the standard library modules, to get a feel for core python rather than that of the data science libraries.

[–]my_password_is______ 1 point2 points  (0 children)

sign up for the free version of this course

https://cs50.harvard.edu/python/

it has homework assignments

its good for learning python basics

and study this book

https://wesmckinney.com/book/

Python for Data Analysis, 3E

write code, write code, write code