
Ask HN: How to be a self-taught programmer in 4 years? - asian_guy
Hi HN,<p>I am from a third world country who fall behind in the race for university entrance exam.
Though I have a science background, I have to study `Management` now.<p>I have some programming skill in python and never write anything more than 150 lines and
contribution in GitHub is less than 2k lines.<p>Now,<p>1. How should I plan for next four years to be a self-taught programmer?<p>2. Should I spend my time on (a) contributing on GitHub, learn Django etc.
 or (b) learning algorithm and participate in competitive programming?<p>thanks.<p>(I have a low-end laptop on which I run KDE Neon and can afford upto 10GB monthly 3G data.
my family won&#x27;t force me to do anything and can&#x27;t afford for a private university.
probably, you can guess my English skill.)
======
dundercoder
A lot of questions like these catch flack because once you have some good
experience programming, you forget what it was like to be lost in the
beginning.

Asking a question like "How do I learn to program?" Is a lot like asking "How
do I use a hammer?" The answer, it depends on what you're building. I'm self-
taught, mostly in Python, but in other languages as well. The trick is to find
something to fix. Find something to build. When you're building something it
changes your mindset and you start learning instead of memorizing.

Head over to [https://www.oppslist.com/](https://www.oppslist.com/) and find a
"problem" that you find interesting. Then hit codecademy and stack overflow to
help you get enough syntax down to start writing something.

For python, the
[https://reddit.com/r/learnpython](https://reddit.com/r/learnpython) community
is extremely helpful and has few trolls :)

Your laptop need not be fast for programming. You could do it on a chromebook
and have much success. Especially in the beginning.

~~~
asian_guy
[https://www.oppslist.com](https://www.oppslist.com) gives me a lot of ideas.
This was one of the things I was missing. I needed a mentor who will ask me to
"do this and that". Once I am comfortable with it, maybe, I will be able to
earn some :)

I knew about /r/learnpython.

thank you.

