Fluency is defined as being able to express yourself easily and articulately. A vocabulary of 1,000 words allows you to understand at least half of what's going on around you. Some studies go as high as 75-80%, such as this one for Spanish (pg. 109), but I aimed low for my example. A vocabulary of about 10,000 words and a general understanding of how to assemble them into a sentence is enough to be considered fluent in almost any situation.
If you learn 30 words per day you would be able to express yourself at least half the time in a little over a month. You may lack grammatical skills but the idea would come across with some consistency. Continuing on that track, it would take just under a year to be able to express yourself with a high degree of fluency. Mind you, I am assuming you started focusing on grammar at some point during that year. For Spanish, I found it took about six weeks until my grammar limited me more than my vocabulary. I’m only a few months into learning but I can already communicate well with native speakers.
If you make flashcards using some kind of spaced repetition system like Anki or Mnemosyne it will automatically handle the review of words you’ve already learned so you just need to focus on daily study and let the program handle the rest. The greatest difficulties you’ll face during this process are making the flashcards, which is an important step in building recognition, and the odd word that simply will not stick.
When you’re not studying your flashcards you need to immerse yourself in the language. Listen to music you enjoy, try to watch shows that interest you and parrot everything you hear. In the beginning, the point of this exercise isn’t to understand anything but rather to recognize it. Eventually you’ll start to pick out words you’ve learned and infer the meaning of others based on context and the language starts to snowball in your head.
If learning a new language is not fun you’re doing it wrong. If learning a new language is difficult, you’re probably using Rosetta Stone. ;)