There seem to be multiple ways to learn a language, but when it comes down to it, the best approach is to be in an immersion environment, where just about everything you use is in the new language.
On the other hand, if you're teaching yourself a new language, and you can't exactly fly off to Shanghai or live at the local Casa de Burritos, immersion isn't practical.
One way for the bravest of the brave to learn a new language would be to use Google's open translation tools to translate everything you read on the internet to the new language. Unfortunately, this isn't practical either unless you know enough of the language to work out the context and/or enough time to translate everything back word-by-word.
So here's my brainstorm - what about a browser plug in that translates words into the new language in small increments?
Part of the beauty of this is that words that are the most useful to learn are typically the most common, and they're also easiest to pick up in the context of the rest of the conversation.
For example, you might read a paragraph like this one, posted by a friend of mine as a facebook status:
Just saw Avatar, and was pleased by it's celebration
of strong Republican values. Family, lifelong monogamous
relationships, community and reference for God. How could
atheistic illegal immigrants hope to prevail? >=)"
As a student of a new language, you may know a few words like "and" and "was" from the paragraph above, but how often will you encounter "illegal" in an introductory language course?
This tool would offer a compromise through a sliding setting between 1-100, designating roughly the percentage of the new language you're ready for. It would also have its own database of sorts behind it to know which words in the language are the most common. Also, you could set it to replace or go side-by-side with the translation. Assuming slider at 5ish and "replace" on, translating to Spanish, it becomes:
Acabo de ver "Avatar", y se pleased por que es celebration
de strong republican values. La familia, lifelong monogamous
relationships, community y reference a Dios. ¿Cómo could
atheistic illegal immigrants hope to prevail?
.... which is spanglish, I suppose, but even a not so well-versed Spanish student could understand the intent from the context, and be learning by partial immersion in the process.
A side-by-side version might look like this:
Acabo de ver (Just saw) Avatar, y se (and was) pleased
por que es (by it's) celebration de (of) strong republican
values. La familia (Family), lifelong monogamous
relationships, community y (and) reference for God.
¿Cómo (How) could atheistic illegal immigrants hope
to prevail? >=)"
At 5%, I'm figuring it would replace just about every conjunction, preposition, and pronoun. It would be on a curved scale, so a 1% improvement from 0-1 % may only replace the most common 20 words, but 10-11% may replace a hundred, and going from 90-91 may replace several thousand of the least commonly used words. The idea would be for the user to always adjust the slider to the point where he can still read through the context and be learning until he can deal with the completely translated page.
Naturally, any errors in the original or from Google's mistranslation would be unavoidable, and you can only hope that Google's translation tool would improve over time and make the results better.
Of course, there's also the "Como mucho" problem. It relates to how translation isn't always a word-for-word endeavor. My Spanish teacher in high school told me the story about a guy who went to a spanish-speaking country armed with only a English-to-Spanish dictionary. In the marketplace, he wanted to ask "How much?", so he found "how" (Como) and "much" (mucho). He went to shopkeeper after shopkeeper asking "Como Mucho?", only to receive nods and confused looks in response. This is because the Spanish meaning of "como mucho" is "I eat a lot", thanks to the verb "Comer" conjugating into "como". In cases like this, some mechanism would have to be built in to grab phrases where it's appropriate for the language and ignore the word-by-word translation.
As I was writing this post, I played with the Google translate extension for Chrome. With it, you can translate a page, then mouseover questionable text to see the original in English. This isn't all that useful for paragraphs, because it can be tough to know which words mean what. Still, it makes things such as the "comentario" and "gustar" buttons pretty obvious ("Comment" and "like"), and short sentences look instructive.
Unfortunately, I doubt that I can take the time to immerse myself in the programming languages of plugins to make this happen. Does anyone else wanna give it a shot and let me help?