Suggestion: correct translations in meaning (but not in literality) should not cost a heart (but wouldn't count to finish the lesson either).
It happened many times already to me, and I see in the questions' comment boxes that it is an issue to other as well: we often try an approximate entry to a translation and Duolingo is stingy about literality. Ok, the point is to ingrain grammar rules. But then, later, it happens that we try a more literal translation and Duolingo corrects us to a looser one, more adapted to the language we are translating.
I'm sure this inconsistency was already (and possibly still is) a letdown to many here, and that can be very disheartening when (as it sometimes happens to me) we must restart a lesson in the very last questions.
So, in these cases, how about Duolingo come out with a note (similar to those that warns us against typos) saying something like "your translation is correct considering the meaning, but it ignores the grammar point or the precise use of vocabulary here". Or yet something like "your translation can be considered correct but there is or there are answers more widely used for this or these cases, as follows etc".
When such event happened, we might not lose a heart, but it wouldn't count as the 1/20th needed to finish the lesson as well, and the next question would follow normally till the end of the lesson.
I don't know if someone has already proposed something similar (much likely did), but in the fast search I did, I couldn't find it. If I'm popping up a repeated demand, I'm sorry!
Your suggestion looks reasonable but is difficult to implement because a program can't "sense" if your translation is close to right or not.
Duolingo does not mean to force us to use literal translations at all. It's simple: if your answer is in the database, it is accepted, if not, you lose a heart. Pure logic suggests that the translations that are most likely to be in the database are the most obvious ones, at least those that seem the most obvious to the developers. That is why you are more likely to succeed if you use a more literal translation.
The only thing we the learners can do is to report all our translations that we believe to be valid. The more we do so, the more flexible and lenient Duolingo becomes. It won't return our lost hearts but at least it will make the learning process more pleasant to those who come afterwards.
The easiest way is through "Report mistake → My answer should be accepted". I have got perhaps hundreds of replies that my suggested translations were accepted.
"Support" should also work, although it may be a little longer as the support requests are not sent directly to language experts.
Yeah, I suggested so because every now and then I see comments explaining something like "your translation is not grammaticaly wrong/you meant that right but...", and then one says that some specificity is missing, and that is the point of the lesson etc.
But olimo's right in the end anyways. I'll just keep pestering developers and peers here with reports and questions, haha. Thanks!
Yes, but we still lose that heart. Maybe at least if we report "mistake - my answer should be accepted" could give us our heart back (only allowed once per session). It is disheartening (!) to lose a 3rd heart on one of these.
Or... These could become 2nd chance questions. Maybe don't lose a heart on the first miss.
Easy to determine which ones to make 2nd chance questions: Count the number of comments/complaints it gets.