How it works
Duolingo is a website designed to make language learning into a game. It has 40 languages available if you're learning from English, but you can also learn languages from other languages. (If you only know Spanish, for example, but you want to learn English, that is an option.) They also have a smartphone app for iOS and Android.
The premise of Duolingo is that there are "lessons" for you to complete; in the beginning, you will be introduced to basic words such as "apple", "man", etcetera. You will read sentences in your target language and then have to translate them to your language, and vice-versa. You will hear the words spoken and have to write what you hear. There are a bunch of different exercises following this premise. When you complete a lesson four or five times, you're able to move on to the next lesson, where new words will be introduced.
What Duolingo lacks, though, are textual explanations of the grammer and syntax. You "learn by doing" -- when you translate a sentence incorrectly, it shows you the correct answer. With enough drilling, you'll be able to figure out how to use the grammar properly. I find that I dislike this lack of functionality; in my opinion, having a page that explains the syntax and conjugations and whatnot would be of undeniable benefit. This is why I don't use Duolingo alone; I don't use it "in a vacuum". I don't really think it's meant to be used that way, either.
I find Duolingo to be hugely helpful for two things: vocabulary and pronunciaton. Whenever new words are gradually introduced, I write them down on flashcards and drill flashcards after my Duolingo lesson. Most importantly, though, I can hear the language being pronounced correctly, and I can mimic the pronunciation. Duolingo is a very useful tool paired with a few PDF documents and flashcards.
XP and leaderboards
Whenever you complete a lesson, you get "XP" points. These XP points are saved to your profile. Additionally, there is a weekly leaderboard. When you complete your first lesson of the week, you're placed in a leaderboard with 30 people. Every XP point you earn in the given week will change your position on the leaderboard: the person with the most XP is 1st, second-most XP is 2nd, and so forth. Each leaderboard has a rank, or a "league". Your first week, you start in the Bronze league. If you're in the top few people, you advance to the Silver league at the end of the week. If you're in the top few of the Silver league, you advance to the Gold league -- however, if you're in the bottom seven, you go down a league.
This competitive feature is hugely motivational for me. Each time you finish in the top 3 of your leaderboard, it increments a number on your user profile that shows how many top 3 finishes you've had.
There are thirteen leagues. They go as follows:
Bronze -- top 20 advance
Silver -- top 15 advance
Gold -- top 10 advance
Sapphire -- top 7 advance
Ruby -- top 7 advance
Emerald -- top 7 advance
Amethyst -- top 7 advance
Pearl -- top 7 advance
Obsidian -- top 5 advance
Diamond -- highest league, but the top 10 get placed in a tournament.
I made it to the Obsidian league once, but I'm currently in the Emerald league. I want to make it to the Diamond league and get #1 in the Diamond league, because if you finish #1 in the Diamond league you get a badge on your profile that's there forever and ever.
Additionally, there are "XP boosts" that you earn every so often through playing, and "special challenges". XP boosts are self-explanatory -- they boost (double) the amount of XP you earn for a period of time, usually 15 or 30 minutes. Special challenges are extra hard lessons that provide more XP than usual. Some challenges are "lightning rounds" in which you have to complete the entire lesson in less than 1 minute and 45 seconds. Other challenges provide extra hard translation options (as opposed to easy-to-translate). I have found that if I equip an XP boost and then grind as many special challenges as I can, my XP shoots wayyyyyyyy up (the average lesson provides 10 base XP. The special challenges usually provide 40. Doubled, that's 80. That's the equivalent of 8 normal lessons, all at once.) This is how I've gotten four top 3 finishes
Quests, currency, and streaks
Every day you do a lesson in a row will increment a number, called a "streak". You only have to complete one lesson, and it can be a lesson you're already completed. The streak is a little number on your profile. It's just a small ego thing, there's no other benefit to it other than to show that you have a big number of consecutive days.
In the mobile app version of Duolingo, there are challenges called "quests". There are daily quests and weekly quests. Each "quest" will award a "chest" once the quest is complete. Usually the quests are for earning a certain amount of experience points, or getting a number of lessons with over 90% accuracy, such and so. If you complete these lessons, you either get "gems" (currency) or an XP boost.
Gems can be spent on "streak freezes". A streak freeze basically protects your streak, so that if you miss a day it doesn't make your streak go away. They cost a lot of gems, but this feature is total bullshit in my opinion and kind of ruins the whole point of a streak, so I don't ever purchase them from the shop.
In the browser version, the currency is called "lingots" and it's way less inflated. It kind of bugs me that there's two currencies and it doesn't transfer currency over from the browser to the phone and vice-versa, but that's a nitpick because ultimately all the progress you make in the language course does transfer over.
There are also weekly quests, monthly quests, and "friend quests" which basically give you and a friend a quest to compete with each other to see who completes it first.
Duolingo is completely free to use and you can easily complete a course without spending a dime, but there are a number of features that can only be unlocked with a premium subscription.
When you do a lesson, there are three "hit points" or hearts in the upper-right of the screen. Every time you make a mistake, it shows you the answer and decrements this number. When you hit zero HP, you lose and have to start the lesson over. If you have Super Duolingo, you get unlimited HP -- no having to restart lessons. It's a convenience thing.
Additionally, there are no ads with Super Duolingo.
Another feature is a mistakes-practice lesson, in which you will have a custom lesson consisting of just mistakes you've made in the past. It will help you reinforce words and concepts you're not as solid on.
Super Duolingo costs $7/mo for one person, or $10/mo for a 6 person family plan. It would be very much more economical to find five friends to split a family plan with. I asked all my friends and relatives though, and none of them wanted to go in on it with me. Which is honestly unfortunate, because having the ability to compete with friends I personally know would be hugely motivating.
Like many video games, Duolingo has "achievements", which as little badges that show up on your profile once you accomplish certain things. There are "achievement levels", which are incrementations of the same achievement (for example, level x is 7 day streak, level x+1 is a 14 day streak, etc.). The achievement I salivate over is the one for finishing #1 in the Diamond league. There are also achievements for getting 100% in a number of courses, getting high amounts of XP, and learning a high number of words in a specific language.
What makes Duolingo so cool to me specifically is that it offers three conlangs alongside a bunch of natural languages. A "conlang" is a constructed language -- meaning that it has unique syntax and is an actual "language", but it was designed by a linguist and not naturally occuring. The three offered by Duolingo are Klingon, Esperanto, and High Valyrian. I am a HUGE Star Trek nerd, so Klingon is an absolute must for me -- but wej tlhIngan Hol vIjatlh :(
I am also trying to learn Esperanto, but my motive is different than that of Klingon -- Esperanto is spoken by a couple thousand people as a first language, and millions of people as a second language, even though it's a conlang. It has such a neat history. My motive, though, is to learn a second language before I take on Spanish, because it is said that a third language is much easier to learn than a second language. Esperanto is said to be one of the easiest languages in the world to learn, so I'm trying to work on Esperanto and master it before I learn Spanish, so that Spanish will be easier. I asked a few polyglots if I can learn Esperanto AND Klingon side by side. They said "yes because they're so different, but if you want to make progress faster only work on one at a time". Little do they know, I'm dedicating all my free time to this.