Duolingo is useless on its own, especially for harder language pairs. The only reason it's popular is because of the gamification, I find that apps like Memrise or LingQ are massively more useful to actually improve your language skills. Those apps focus on specific skills (vocabulary learning through spaced repetition for Memrise, learning comprehension for LingQ) which means that you have to use other methods to work on other aspects like grammar and conversational skills but at least they attempt to do one thing and they do it
mostly well.
The only added value I have from using Duolingo is getting some amount of practice actually constructing my target language but even then it's hugely limited because:
- You never have any context which makes the experience always completely artificial and makes it harder to get a feel or the language. IMO Duolingo would be 10x better if lessons followed (even very loosely) an internal story instead of just having random, often contrived sentences one after the other. Something as simple as recurring characters, simple common situations etc... It would make it a lot easier to have a mental model of the world you're talking about and it doesn't seem like it would complicate things heavily.
- The bulk of the practice involves translation exercises which is limiting and can even be counterproductive. A very important step towards fluency in any language is to stop translating and start constructing the language directly. I'm not a native English speaker but as I write these words I'm not translating a French internal monologue, I know what I want to say and I say it in English directly. It's faster and more natural that way.
- The killing blow is that those translation exercises are corrected by, as far as I can tell, some sort of complicated regexp engine. It's very common for a correct-but-unexpected solution to be rejected and when it gets reported it can lingers for years without being fixed. As such you start not to trust the correction given when you don't understand precisely why your sentence was wrong.
That last point is really frustrating. I'm a native French speaker and I tried finishing the "French for English speakers" tree using shortcuts to get an idea of the quality and I simply can't reliably unlock the checkpoints on my first try because some of my perfectly fine and idiomatic French sentences end up not fitting the regexp and be marked wrong.