* write lots and lots of code as beginner till some programs live in the muscle memory of your fingers
* humility, be easy on yourself; no one makes it in the first jump
* find better programs and copy but never paste, as a beginner always key-in your programs
* keep a count of the lines you write and the time you take to write (reach 100k lines, this is to motivate yourself)
* make programming habit
* seek better programmers and study their code
* always go from code to theory
>>Whereas, I find myself going for almost academic perfection (i.e read all docs first) / mastery.
I suffered from the same problem. The key for me was to say to myself, it's ok to write non-perfect programs, it's ok to fail, in fact it's a must to fail, humility, humility, humility is the key virtue for a true master programmer.