Video summary
The speaker presents a critical analysis of the current state of language localization within the open-source ecosystem, specifically focusing on the Fedora Linux distribution. Using data derived from millions of files processed over nearly two decades, the presentation reveals that while approximately 80% of translatable content is covered for French, this figure is misleading because it only accounts for software that already has a translation started. When adjusted to include all available software, the reality shifts dramatically: only about two-thirds of the total work required for full localization has been completed, leaving a significant gap. The speaker argues that relying on such incomplete metrics creates a false sense of progress and highlights a systemic issue where the vast majority of the world's languages are severely underrepresented in operating systems, despite the existence of thousands of spoken languages globally.
The core argument centers on the slow pace of localization growth compared to the urgent need for inclusivity. Although the number of translated words is increasing over time, the trend is so gradual that reaching 100% translation coverage for all supported languages could take centuries under current trajectories. The speaker illustrates this pessimistic outlook by comparing the timeline to climate change projections, suggesting that without a fundamental shift in how communities approach translation, many languages will never achieve full support within a human lifetime. This slow progress is attributed not just to a lack of translators, but to structural inefficiencies and friction within the community workflow that prevent new contributors from easily adding their translations and making them available to end-users.
To address these challenges, the speaker proposes a vision for a more flexible and user-centric localization model. The goal is to empower users to choose how their systems are presented, allowing for multiple translation variants to coexist if there is sufficient community interest in each. For instance, a system could support both traditional translations and newer, perhaps less formal ones, or even allow users to opt out of certain translations entirely if they prefer the original English interface for technical reasons. The speaker envisions a future where five motivated individuals working together can sustain a specific language variant, ensuring that diverse linguistic communities are not forced into a single, potentially inadequate translation standard. Ultimately, the presentation concludes with a call to action for the open-source community to improve its tools and processes, moving beyond mere statistics to genuinely empower humans by providing software in their own languages rather than prioritizing machine efficiency or profit.
Read the full video transcript
Okay, so I will start a little bit
early. This will be no issue for people
joining because the introduction is
not mandatory to understand.
>> [clears throat]
>> Can you hear me well?
Yes, good. So, this is a tree of
privileges.
Um
the aim of that kind of tool is to ask
yourself question about what's your
position in this society.
So, it's useful as a personal point of
view, but it's also useful as a
community. What can our community that
has a lot of power of action, like
creating software, can do for all the
communities in the world that are using
our software?
This work is the continuation of a blog
that is languages in flaws. There are a
lot of numbers that are available
already published. Uh it requires
a lot of design and work to make it very
nice, but in the future this will
improve and provide much much more data.
Um
this work is a collaboration. We are
three people who created the slides, and
it's uh the result of many many many
help from many
communities, including uh the federal
community and the Strasbourg community
hackstub.
So, here you have my children, number
one and number two.
Number two is on the shoulder of number
one.
Those two very nice humans that consume
quite a lot of energy
are playing video games because
they need to learn to use a computer.
So, video games are good for that, isn't
it?
But unfortunately, in video games there
are some strings in English, and I don't
understand about it
because they speak French, they speak
Romanian, they speak German, but they
don't speak English. So, this is
irrational content.
And
content that understand is everywhere.
If they want to install one extension of
LliureX which is a very good platform,
very very very efficient,
they cannot understand the description
of the of the extensions. They don't
know if this is a skin, new sounds, or a
video game on itself. So, they can do
like monkeys
pushing the buttons and see if it does
something and guess if it is something,
but it's quite a legitimate limited way
to use computers. I usually we are not
doing
computers for monkeys, but for humans.
And in free software, there is the
liberty zero.
And
you are supposed to be able to have the
freedom to use the software the way you
want. But, if you don't understand it,
can you really have this freedom?
Does that really exist? Sorry, I I was a
little bit lazy. This is French, but I
hope that you know the four
key freedom of of free software.
Okay, children is one thing, but adults
have the same issues. When you go into
in in in LliureX software, many software
are not translated.
And if you go in the new software of
the updates that that comes into in
LliureX software, it's not translated
either. And when it's translated, if you
speak French,
Sun Like is a great tool, but the
description here
only valid French words, but the
sentence is not correct. There's
something that is reversed. It's
incorrect.
So,
I wanted to help, and for me it was
difficult.
It was not a small experience,
and I wanted to know, is it me ranting
all the time, or is it difficult for
everyone?
And
I want facts. I don't want to go and
discuss with people about personal
belief. We don't care about it. This is
empathy. Empathy is good, but it's
another subject. If you want to solve an
issue, you need to be able to discuss on
the facts.
So, these are my hypotheses. There's not
enough translation in open source
ecosystem.
Contributing Contributing translation is
too expensive.
Translation quality varies a lot, and
there are a lot of inconsistent
translations.
So, what we will do today is we will
focus on the two first items.
Because I'm French speaker,
I will focus on French, but we have the
metrics for all the languages that are
available in Fedora.
So, what do we measure? A very small
subset of
uh the the open source ecosystem.
Gettext packages.
Gettext using No, packages using Gettext
in Fedora. So, it is a small subset, but
it's a small subset that is available
since Fedora 7. It means more than 19
years ago.
It means millions of files that were
processed, billions of translations.
Huge.
This gives you gives us an insight over
time, and this is what's interesting.
So, there's a lot of package in in
Fedora. It's an And a subset of the
existing package that we that we use.
There's
some very advanced mathematics, which is
basically sums.
And those sums allow to do that kind of
of thing. I'm jumping a little bit the
slides. It will be published.
Um but I want to focus on the key
messages, and not on all the mechanics
that that was that were used.
So,
if you take millions of files, you
process it, you sum it, you get a
number, and the number is quite good. It
says 80% of the things to translate,
whatever it is a sentence or or a word,
is translated into French. So, situation
for French language is good enough.
Okay, when I play video games with my
children, I agree, it's globally good
enough. We are happy about that.
And you got them right, you can see
does How does it work? Like this? Yeah.
Um, [snorts]
you can see that 80% of translation is
remaining stable over time. It means the
French the French translator can keep up
with the work over time. The community
of translation in French language is
stable or healthy. It's good.
But, this is
a fake number. This is wrong.
This is incorrect. You are saying
something that is wrong. So, don't
remember it.
Sums
are to be used compared to everything
that is to be translated.
In Fedora, there are some software that
don't have French translation, so they
are not counted, but you can translate
it. So, you need to make sure to include
that in the total. Otherwise, when you
say French is 80%
it's 80% of what was started as a
translation. You want to know
what's the progress over everything that
is available in Fedora, and it's much
more. So, here you have very nice
additions, categories, and it tells you
that
at the end,
in Fedora 44, there is 20 million words.
Okay, this is a statistic. What does it
mean for humans? Because it's a lot. Of
course, it's a lot. This is a operating
system. There is dozens of software,
some that are very well known, some that
are very far away in the plumbing
plumbing of of the system.
So, if we ask one single human to spend
some time to translate it, it's maybe
between 30 to 60 years of work.
Of course, it's a lot and there is no
one who will do that alone, hopefully,
because poor poor person,
it's it will be way too much.
But,
if it is a community of person, like 10
person working together, you reduce the
work. And also, there are some
translation memories, so you can reuse
what you you did. Hopefully, it goes
faster than that.
So,
20 million words, it's a lot. 30 years
of work, it's a lot also.
But,
now that we have those numbers,
what's the real progress for French
language?
Is it 30%? Is it 50%? Is it still 80%?
And the answer is 64.
So, you have no more numbers because
this is a presentation of a lot of
numbers.
On the top is the reality or
an attempt
to reflect the reality of localization
in Fedora.
This attempt, because all of this is
wrong, if you go into details, most
likely there are some bugs and wrong
assumptions,
it it gives still a global understanding
about where we are now.
Where we are now is
there is 2/3 of the
the work that is translated and 1/3 that
is not.
And this is not good. Not because I am
French and
and my language is not enough available
in in in in in system, it's because
French community is one of the biggest
community in number of contributors.
So, what does it mean for every other
community in the world?
It cannot be good.
So,
one tiny little thing that is very
important to see here.
Okay, so it gets growing in number of
words, that's good.
This number, okay.
This is
this progress
over time.
So, I don't know how easy it is to read,
but
this is growing.
So, it's now growing increasing over
time.
Slowly, but increasing.
This language community is healthy
because it is increasing over time.
There is not a lot of languages with
with growing progress over time. So,
each little point is one Fedora release.
So,
there is 38 releases taken into account.
So, normally here you already have a
little bit too much numbers, but I'm
sorry, I'm not done yet.
This is recorded. The slides will be
available.
You There is bugs, but you will have
time to review it.
So,
progress.
You see the the globe the overall
progress of French translation
is growing over time.
But, if you have
38 points
over 20 years of data,
normally we can
you have a trend and see when do we
reach 100%? So, this is not growing very
very very
uh
fast. I don't know the English word. So,
if you're on a bike, it's good, but if
you want to have 100% of translation,
it's not that good. Maybe it will be in
many years.
And indeed, this is um
not good. So,
to show how pessimistic we are of about
the situation, we we took the climate
change way of representing stuff.
>> [snorts]
>> And
this
there are three lines. When do you reach
100%? 100% we should reach it. This is
the
the black line in the middle. It says
you
um, in about 125 years.
But this is a trend. Trend can be
optimistic or pessimistic. If you are
optimistic, it may be in 80 years.
If we are pessimistic, uh, it may be in
700 years.
So, I don't know what you're going to do
in that lifespan. Likely you will be
dead. Me also. We don't know about the
human species on Earth. It's unlikely to
resist, but this is not the subject of
the talk.
This is not good. We are not good. And
we are not good because we don't have
enough good people working.
We are not good because there is
something wrong in the way we are
handling translations in our ecosystem.
And this is the problem to be solved.
Okay.
I am French.
You know that. I said it 10 times.
But
there are other languages in the world.
Quite a lot of other languages.
Um, I will jump a little bit.
Let's go to the map of the world. So,
the world looks like this.
If you don't know, it's just because you
are used to wrong maps all the time.
Um, we are somewhere on the bottom
right. So,
there is a lot of things that exist in
the world we don't see.
And um, going to jump that.
In Fedora, there are a lot of language.
Of course, it's an operating system.
There are software coming from
everywhere. There are 357
languages
including locales. I will say what it is
next slide. So, it's a lot, but we don't
care because it's just a number. We need
something to compare it.
Okay, those
this very nice and easy to read graphics
is a distribution that tell us where is
each language.
And
I have seen this graph for weeks now,
months.
And
this tells you that situation is not
good because there are two languages
that are that have good number of
packages that are
have a started translation good number
of
translated strings, but
most
of the locales, the languages
are very far on the left on on this
graph. It means most of the languages
have very few packages that are that's
that are translating in their
language.
And this is not a good situation. So,
okay, we have three 357,
but we don't care. What we want is a
number of of language with a good amount
of translation.
So, do we have enough translation? No,
we don't have.
And when we compare to to the statistics
about number of languages in the world,
we are very very far from the reality of
the world.
The world is 7,000 languages.
Maybe between 1,000 to 3,000 that that
have a written the ability to to be
written on a computer.
And we have 350
57. I just see there's a number issue
here. There's a bug.
Um, which also include locale. A locale
is a specific way of speaking one
language in one territory. I will
simplify it like this.
It's a little bit more complex. So,
whatever we have a lot of languages in
Fedora, it's not good enough because
compared to the reality of the world,
it's it's very small.
So,
it's not good. Do we have enough
translation? No, we don't have.
I tried to do a representation
continent by continent.
It's obvious we there are so many
missing languages in in Fedora, but this
is just a result of the the other sides.
This very also nice and easy to read
graphic
is an attempt to represent the amount of
translation. This is
horizontal data.
This is the translation progress. So,
this is 1%. This is Your software
is not
This is 10%.
That's it depends which software. Maybe
some software translated, but most are
not.
This is 100%. This is the goal, the holy
grail that nobody will reach in in its
living. We will be dead before reaching
that.
And then, in vertical, we have the
amount of speakers.
So, we will always find people willing
to invest some time for community of
1,000 speakers.
And this is
a debate we should never have.
And we don't even need to have it
because
languages with millions of speakers
isn't that included in Fedora. So,
before arguing about should we enable
that locale for this small community, we
already have so many big community that
we do not cover.
And the statistics all the statistics we
have here
are coming from the open source
ecosystem. It's not only federal
creation or software created inside
Fedora. It's everything. In that, you
have Gnome.
So,
it's not normal to have so few
translations.
Then,
we have the community health.
During the talk,
I told you a little bit about the
trends. Is the trends positive,
negative, flat?
And
the learning is that there are
four languages
that will reach one 100% of translation
in the next century.
And this is the optimist trend.
So,
this is something that I would like to
strengthen in our community
to have
metrics to understand community health
as a global operating
system level.
And to find the ways
all together
to improve that so that we have 1,000 of
languages that will reach 100% of
translation in the century.
Even if I will be dead,
at least more people will have a system
that enables them to to do whatever they
want with it.
So,
um
There's another bug in the slide, but
it's fine.
Um
I said 350
languages in Fedora,
including
only 222 that
have a positive growth of number of
words over time,
including only 120 that have more than
3,000 new words
per year.
3,000 new words is like a few days of
work. Maybe 1 day, maybe 2 days, 3 days.
It's It's very limited amount of uh of
growth.
Long uh languages with a positive trend
compared to everything that
has to be translated in Fedora is only
36.
So,
those metrics are not showing that there
is not enough translators.
They're are showing that there is an
issue in the way we do
work as a community to add translation
and make it available to the end users.
And this is the issue I would like to
work with the communities
uh to to to improve.
I had four hypotheses.
The two first hypotheses are on the
amount of available translation.
And we have numbers to prove it. Numbers
are If you go in the details, you will
see bugs, but still the overall the
overall
uh idea gives you about the situation is
still valuable.
We have to also go deep into the
hypotheses about
translation quality, translation
consistency, because for sure there are
some errors. We don't have the tooling
yet, but we will have it and we will we
we will make sure to share it to to to
the world.
So,
if you are pessimistic, you have lost
all hope because
our community have done uh free software
for more than 40 years now, and if there
are only four languages that that will
have good localization support in the
next century, it means there is an issue
that is huge. But,
as we have facts,
we have something to discuss and to
improve that situation and change the
way we do translation, change the way we
deliver translation to end user, and
improve our way of working. And this is
what gives me uh motivation to to to
move forward.
So,
I still have 5 minutes, so I'm good.
Perfect world for me
is
five people that have motivation
to translate in their long
language.
Whatever if this language is an invented
language like Esperanto, Klingon,
or the language from a local community,
or a variant from an existing language.
I want French, but I want the computer
not to assume that I am a guy.
I don't care.
Five person in the world should be able
to work together.
How do we make that happen?
I will be giving um lightning talk at
2:00 p.m.
I encourage you to put a bar. Please, do
it.
>> [laughter]
>> And
I would like our community to our
community our open-source community to
improve that
because for sure we do software for
humans,
to empower humans,
and we just we don't do software only
for machines to produce more domination,
more money.
We want humans to also be able to have
software in their language.
That's all for me.
Thanks a lot for surviving all these
numbers. I hope it makes sense for you.
>> [laughter]
[applause]
>> Questions?
>> So, we have a question on Matrix. Justin
Wheeler would like to ask uh
um what is something that would help
localization team to reduce friction for
both newcomer translators and long-time
Fedora community translators.
Both groups seem to have different needs
and requirements.
>> That's a very good question. Does
someone have an answer to that very
interesting question from Justin?
Because I'm not the only one with
answers.
>> [laughter]
>> No answers. That's a good question. It's
um
You want to answer or you want to ask a
new question?
>> Um I am afraid I don't have the answer.
But
as a member of the federal localization
community
uh I don't really understand the
question of Justin
because I don't think there is a real
fraction between
long time
translate
translator
>> Do what?
>> and to to new coming translator but
>> Really? Do you want to speak about
Buddhist?
>> But
>> So in check community there's a a story
that is a little bit funny.
Is in the old time like old time like
old time like the Bible. Um okay.
The fact of to accept something is
translated Buddhist
which is closer to so be it.
And
old time
translators in the Gnome community chose
to use Buddhist instead of okay. And
people that are
using computers are saying this is a
weird way to say so be it instead of
okay. And
they they are sometimes some traction
some friction between old time
contributors and users.
So typical use case in here we should
find a way to find consensus in the way
we do translations.
And
that's the first one who survived the
process to find the repository,
open the pull request, get your stuff
merged to be the one deciding for
everyone else. We need to find a way
that
the users can say, "Okay, I want my
system to have this word translated.
Okay, and not Buddhist or Buddhist and
not okay." And if there is a schism,
right? I'm using Christian wording
because
um
then maybe there will be two
translations available for Czech. For
one for people who like Buddhist, the
Buddhist style translation of Czech, and
the okay translation of Czech. And if
there are five people maintaining the
Buddhist style translation, it should be
able to exist in our world. And if there
are at least five person willing to have
an okay translation for Czech,
it should exist also. So, this is
something that we should should allow.
And in addition to that,
there are some people who like to use
software in English
for absolutely valid reason, like I do
software engineering. I interact all the
time with people in English. My software
engineering tool, I want them to speak
English because this is my language, my
work language. But I want to have parts
of my system
to speak French because this is my life
language, and I want to be able to make
that choice in my computer. And this is
something that we should allow.
And if some people want to translate
pull requests in French,
they should be able to do it. But I
should be as a user able to say,
"Not for me, thank you. I would like to
have the English keywords." Or I want to
have the whole system translated in not
translated or I mean in English because
this is what I want.
We only have 30 years of work to make
that happen.
But hopefully in 6 months we have a
proof of concept.
>> I don't know if do you have any kind of
overall
graphics for the all line? I mean like a
combined
>> Yeah, but it's it's ugly and I am a
little bit shy to show ugly numbers.
So, you want something with all the
language. It's it's going to be ugly.
You you
you will see.
So, this is a demo. Normally it should
not work.
But wait.
You cannot Maybe you cannot see it but
this is loading. So, let's see if
Postgres can can answer that query.
Yeah, wonderful.
Is it what you are looking for? Does it
Does it answer your need?
So,
I am a dreamer. I I build a world I
and stuff for humans. This is not for
humans but it's doable.
>> [laughter]
>> I don't show it because it's
Anyone who can tell you something
interesting about that is someone that
have a lot of ability to speak but
it's will not be anything relevant
compared to the graphic. It's
We can do it but it means nothing.
And all of this will be available
someday.
Right now it's in the basement of my our
friend.
So, it's not publicly available.
Basement computer science.
>> So, we are out of time. Thank you very
much.
>> So we are out of time. Thank you very
much.
>> Thank you very much.
>> [applause]