1. Forum
2. >
3. Topic: Duolingo
4. >
5. Suggestion for a new metric f…

# Suggestion for a new metric for measuring progress

Duolingo already has several tools for measuring our progression when we are learning a language :

• number of XP
• level (related to number of XP)
• skills (golden or not)
• fluency % for some languages

However, it lacks a single metric ranging from 0% when we start a completely new tree to 100% when we finish the tree and it is all golden.

Of course, a single ratio could make it :

• measure = [nbr of skills completed] / [total nbr of skills]

But since all skills do not contain the same number of lessons, this measure would be biased. So, let's change the measure :

• measure = [Nbr of lessons completed] / [total nbr of lessons in all skills]

But skills already accomplished fade with time and get a ponderation decreasing from 5/5 when freshly finished to 0/5 when forgotten. So, what I suggest as measure is :

• measure = { Sum ( [Nbr of lessons in skills completed] x [ponderation of the skill] ) + [Nbr lessons completed in uncompleted skills] } / [total nbr of lessons in all skills]

Let's give a little example for illustration purpose. Imagine a language with 5 skills, and the situation of the learner :

• skill 1 : 3 lessons, all finished, ponderation 5/5 => 3 * 5/5 = 3 pt
• skill 2 : 5 lessons, all finished, ponderation 3/5 => 5 * 3/5 = 3 pt
• skill 3 : 3 lessons, all finished, ponderation 4/5 => 3 * 4/5 = 2.4 pt
• skill 4 : 4 lessons, 1 finished, 3 to do => 1 pt
• skill 5 : 5 lessons, still to be done => 0 pt

Measure :

• Total accomplished : 9.4 pt
• Maximum : 20 pt
• Measure : 9.4 / 20 = 47%

This would indeed start at 0% when starting a completely new tree to 100% when the tree is finished and all golden.

It will also decay with time if the tree is abandonned and it will put the emphasis on keeping the skills with many lessons golden.

What do you think about it ?

I would gladly write a user script to compute it if I was able to write one... Unfortunately, I am not.

December 26, 2017

There is already a user script called "DuoLingo course progress" based on skills / lessons.

But it only works for the old Python web portal, so you need to use the `duo.old_web_url_whitelist=["^.+"];`workaround to get it working on the "Home" / tree page.

I ponder about my skills amd capabilities constantly. So does that mean I will get a lower score?

Well, the measure I suggest will be moving every day : up, if you work on the language : down, if you don't.

Let's assume there is a language with 10 skills, all of them having 5 lessons. Each skill is thus 5 points worth and the maximum amount of points of the language will be 50.

Now, let's suppose the learner has completed 8 skills, all golden (5/5). He scores then 40 points, and the measure is 40/50 = 80%.

Suppose again, that the learner doesn't work on the language for several days and, during that time, on the 8 completed skills

• 3 decay to 4/5 = 12 pts
• 1 decays to 3/5. = 3 pts
• 4 remain at 5/5 = 20 pts

He now scores 35 point and the measure is 35/50 = 70%

But as soon as he makes his completed skills golden again or learns new lessons, the measure will go up again.