I should add that very few, if any of the students I have taught take my advice to heart, and as a result, their vocabulary is usually fairly limited, even after many years learning. You can only do so much with a textbook. Self-motivation is vital. Btw I totally agree with your advice to talk to yourself in the language you are learning. I do this everyday without thinking and even talk to my dogs and cats in Japanese.