About 6 years ago I set out to improve my Spanish language knowledge and skills. I had taken Spanish in High School, but what little I learned there had faded and my understanding of spoken Spanish was minimal (at best.) I set out with several approaches to learning and now in retrospect I see what I SHOULD have been doing. To start out, here is what I DID at the time. I started reading to pick up vocabulary. I forced myself through books that I was familiar with in English after completing some early dual language readers. I didn’t let myself stop and look up every single word I just forced myself to keep going and the ones that were more common I would look up. Here’s what I should have done.
I should have learned pronunciation first. It took me a while to start recognizing some words when I heard them because I had been “pronouncing” them in my head wrong for a good while. (Matching an audio book to a written book could be a good idea for this, or just about anything with a transcript.)
The other thing I should have done (which I’m doing more of now…) is to diligently write down on a notecard EVERY word I don’t understand. Look up the definition for these words and enter them in a notecard program like anki or mnemosyne. (Work on your notecards every day.)
IF I had done that diligently from the start, I wouldn’t feel like today, 5 or 6 years later I’m still in the intermediate to advanced stage. My vocabulary would probably be more solid (and broader). As it is, my vocabulary is pretty good, my understanding of Spanish has greatly improved, but I think the process could have been MUCH more efficient.
With regard to songs that I’ve listened to. I should have done the same as with the books, print out the lyrics, add the words I don’t understand to the card deck and do all of it methodically.
Instead I took a slightly lazier approach of trying to absorb and learn by context. I think the better approach is to use the tools available (like spaced repetition notecard software) to pick up your vocabulary that you don’t understand.