WP Briefing: Episode 59: A Polyglot’s WordPress

Comments Off on WP Briefing: Episode 59: A Polyglot’s WordPress    July 3, 2023 13:00

Join WordPress Executive Director Josepha Haden Chomphosy in the 59th episode of the WordPress Briefing. Today she invites guest speaker Alex Kirk to discuss Polyglots’ work to continue to help bring translation to WordPress.

Have a question you’d like answered? You can submit them to wpbriefing@wordpress.org, either written or as a voice recording.


Host: Josepha Haden Chomphosy
Guests: Alex Kirk
Editor: Dustin Hartzler
Logo: Javier Arce
Production: Brett McSherry and Nicholas Garofalo
Song: Fearless First by Kevin MacLeod

Show Notes


( Intro music )

[Josepha Haden Chomphosy  00:00:10] 

Hello everyone, and welcome to the WordPress Briefing, the podcast where you can catch quick explanations of the ideas behind the WordPress open source project, some insight into the community that supports it, and get a small list of big things coming up in the next two weeks. I’m your host, Josepha Haden Chomphosy. Here we go.

( Intro music )

[Josepha Haden Chomphosy  00:00:39] 

I have with me Alex Kirk, who is a longtime WordPress contributor and who has been instrumental in recent innovations in the Polyglots’ work. Phase four of the Gutenberg project is native multilingual support, and so I see this work that is being done as instrumental, not only for our global community but in support of what’s to come in that specific roadmap.

[Josepha Haden Chomphosy  00:00:59] 

So without further ado, Alex Kirk, welcome to the WordPress Briefing.

[Alex Kirk  00:01:03]

Hello, how are you doing? 

[Josepha Haden Chomphosy  00:01:05]

I’m good. I’m good. Can you, let’s, because I bet that not a lot of people know who you are, can you first start by just telling me a bit about your work with WordPress, and then let us know what GlotPress is, for those of us who don’t know yet? 

[Alex Kirk  00:01:19]

All right. So, Automattic sponsors me to work in the WordPress project on the Meta team and on the Polyglots team. So I spent time on improving or helping improve the software that powers the translation on WordPress.org. But I also work on the meta team on things like Matrix and evaluating if it would be a good fit for WordPress to switch to Matrix for their chat system.

[Josepha Haden Chomphosy  00:01:46]

So a lot of really big projects that you work on, all of that kind of stuff that has no easy solutions anymore, is where you are right now. Huh?

[Alex Kirk  00:01:56]

Yeah, there’s no clear path, but it’s our mission to find it. So that’s part of what makes things interesting.

[Josepha Haden Chomphosy  00:02:05]

Cool. So for folks who don’t know too much about the Polyglots team or generally translating WordPress, the software, can you let us know a bit about what GlotPress is?

[Alex Kirk  00:02:16]

Right. So the translation system that powers WordPress.org is called GlotPress. It used to be a standalone software that was developed a couple of years ago, and it was transformed into a WordPress plugin at some point, and now powers the translation that happens on WordPress.org. So we translate WordPress core there from English to other languages, plugins, themes, block patterns, and it all happens through this software called GlotPress. There are a couple GlotPress installations around the world, but I think the WordPress.org one is one of the bigger ones.

[Josepha Haden Chomphosy  00:02:55]

Probably, WordPress.org is pretty, pretty massive. Also, I think it’s great that you said that GlotPress was created a couple of years ago, like that, that indicates to me that you’re working on a really different timescale than a lot of folks are in WordPress. 

[Josepha Haden Chomphosy  00:03:10]

So Alex, tell me a little bit about what it takes to ship translated WordPress software. So, I mean, for people who don’t need translated WordPress, like obviously we don’t have a good idea of what it takes to make sure that WordPress is available in so many languages. So what goes into the work of making sure that that happens?

[Alex Kirk  00:03:32]

All right, so typically the WordPress software and plugins and themes are primarily created in English. And for it to be available in other languages, it needs to be translated. And for that to be able to happen, the programmers need to make the software translatable. Basically, they’re providing each English string for the translation software to be available to be transformed, so to speak, into another language and to what it’s being transformed to. This is what the translators do. So they go into the GlotPress software and see the list of texts that need to be translated and translate it to their language that they speak. Typically there is a process around this.

[Alex Kirk  00:03:32]

So, we’ve got people who have lots of experience in translation. And specifically in translating WordPress or WordPress plugins. And they’re kind of the, the people who help ensure good quality of translation. So anybody who’s working the WordPress project, so basically who has a WordPress.org account, can come in and address the translation. And that translation enters the system, so to speak, in a waiting state. And then somebody who we promoted to be a Translation Editor will come along and take a look at your translation and will approve it or will give you suggestions how to do the translation in a better way, or come up with maybe even a better translation.

[Alex Kirk  00:05:03]

You know, when you have like a small thing that’s just not right, like a missing full stop or something like that. They might just add it for you. And well, as soon as the plugin or software is translated to a certain level of translations those translations will be shipped out to the WordPress installs.

[Alex Kirk  00:05:20]

So, for example, for a plugin, you would reach 90% of translated strings. Those translations will then be basically packed up into zip file, a language pack and delivered to each WordPress so that you can have the translations available there.

[Josepha Haden Chomphosy  00:05:35]

And is 90% the threshold for plugins only, or is that also the threshold for like themes and the CMS itself?

[Alex Kirk  00:05:34]

Well. We strive for 100%, I would say. 

[Josepha Haden Chomphosy  00:05:47]

Good. ( laughs )

[Alex Kirk  00:05:48]

And, 90% more of a motivational point. To be actually honest, I’m not sure if the threshold is 90% for every project or even if it’s actually 90%. It’s different between different GlotPress installations and it’s basically something that is made as a setting that can be changed. There’s, it’s an arbitrary number. Typically you’d actually want to make sure that the most important strings are translated first. So the ones like, if you look at the whole picture, software usually consists of many parts, many of whom are not encountered by people on a regular basis. For example, error messages that could be like obscure error messages, and you could argue that those might be not as important. Or even sometimes you could even say like, do they need to be translated? Because if you encounter an error message and you search the internet, wouldn’t you probably want everybody to search for the English one to find the solution? But that set-aside, it’s important to have like the headline of the plugin or like the most important strings translated, and typically translating those most important strings will take you to a pretty high percentage so that we can then say it’s good enough to be shipped.

[Josepha Haden Chomphosy  00:07:02]

Gotcha. I see, I see. Okay. Well, we talked a bit earlier about GlotPress’s timeline. It has been around for a bit, I know. But with that kind of in mind, have there been any notable changes to GlotPress recently? 

[Alex Kirk  00:07:19]

Yeah, so I think for GlotPress there’s been a bit of an up and down over time in terms of engagement and progress on the software. But in, in the recent year, I think we’ve added a couple of things that have been very helpful for translators. So one of them was adding the commenting functionality, so yeah.

[Josepha Haden Chomphosy  00:07:35]

Super helpful. Shocked it wasn’t there before. Sorry, translators. Sorry, all of our polyglots.

[Alex Kirk  00:07:40]

Well, it can be like there was when GlotPress was created there, there is like the, a big part of GlotPress are these states, like the waiting state when you enter translation, and then there’s approved state, which basically a translation we say it’s set to current, and there’s all sorts of process around it. So if the software is updated or translation might get fuzzy. But also like, if somebody submits a translation that doesn’t fully conform to what’s the translation editors, or like what the standards of the translation community have been set to, then you would have to need to reject it.

[Alex Kirk  00:08:16]

And that has been something that we felt wasn’t a very good and enticing way of telling people like, we appreciate your work. It wasn’t just quite right, but it’s more of a rejection. So this is how we came up with this like, let’s give people the option to say what was wrong and give them a chance to try again without making them feel rejected.

[Josepha Haden Chomphosy  00:08:38]

Yeah. Sort of a “No, but…” as opposed to a, just refusal to receive it.

[Alex Kirk  00:08:45]

And other things that we’ve worked on is, like, with the recent search of AI, like getting help from AI on translation and also on reviews. So, there’s some interesting things that you can do with AI in that regard; that one important aspect of translations, it’s also that we’ve got glossaries for each language where people, basically the translation community, identifies certain words they want to translate them the same way every time. And with the AI, you can basically add to the prompt, like, please translate those words to those translations when you give me a translation for that. And as it can change over time, you can always adapt this to the prompt, and that has been proven quite helpful.

[Josepha Haden Chomphosy  00:09:25]

That is great. That’s one of those things I know that AI has been like a really popular thing to talk about. And AI, specifically for translations, I think has caused some concern that maybe we’ll just like translate it all and hope that computers get it right when we know pretty certainly that computers don’t always get the translations right. But that’s not what you’re talking about, right? What you’re suggesting is that AI would suggest what could be translated and what it could be translated to, and then human beings have to confirm that that’s correct, right?

[Alex Kirk  00:09:59]

That’s exactly it. So basically, we give suggestions to the translators, and then they can modify a translation before they press save. It’s more of a, like supporting them in getting the translations, like looking up words more quickly and all of that.

[Josepha Haden Chomphosy  00:10:16]

That’s wonderful. So is that the major sort of next step that is coming for GlotPress, or are there other things that we should keep an eye out for in that software?

[Alex Kirk  00:10:27]

So one direction that we’ve been taking GlotPress is basically making use of the fact that GlotPress is WordPress plugin now. And you know, typically, you would just use a GlotPress install. So on WordPress.Org, there’s like GlotPress installed, there’s translation projects created, something that we call “translation sets”. So for languages, you want to translate it to, it’s all pre-configured, and if you would install GlotPress to plugin on your own WordPress, it would be empty and not very useful. So what we’ve added is a way for you to basically be able to translate the plugins and themes that you’ve got installed in your WordPress into the language that you’re interested in.

[Alex Kirk  00:11:07]

So you might have a non-English website that you want to use certain plugins with, and they might not be fully translated at this point, so obviously, you could go to WordPress.org and help translate them, and that’s the way to, that’s preferred. But you could also now go install GlotPress on your own website and translate there. And then you have the translations there right when you enter them. And you can then contribute those translations back to WordPress.org.

[Josepha Haden Chomphosy  00:11:35]

So that’s with local GlotPress?

[Alex Kirk  00:11:37]

That’s something that we call local GlotPress. And you know, since we then have all these translations in the local database, it means we can do even more with those translations. So typically, language packs would be delivered to WordPress, but with local GlotPress, you’ve got like all the GlotPress software there.

[Alex Kirk  00:11:56]

So we can do things like inline translation. So, on your own WordPress and wp-admin, for example, we can highlight all the strings that can be translated, and those strings just have to right-click them and enter your translation, and that way, you can basically go about and translate the whole ui, seeing your progress, as you’re making, basically turning the screen from red to green.

[Josepha Haden Chomphosy  00:12:20]

Yeah. Yeah. So that’s something now that you can do in your local WordPress installation. 

[Alex Kirk  00:12:26]

Basically, it’s completely independent of WordPress.org. We would ask you to contribute the translations back when you have them, but being independent also allows you to translate like premium plugins, which could not be hosted on WordPress.org or doing something like that we call like hyper-local translation. So, for example, I speak Austrian German natively, but even inside Austria, we’ve got different dialects or like special words that we use. And if I wanted to create a website that’s targeted at the Viennese market, for example, I might want to use those specific terms. And this is something I would have to argue for those translations to be accepted on WordPress.org because it’s a, it’s like a very targeted market. But if I have a local GlotPress, I can do those translations there.

[Josepha Haden Chomphosy  00:13:11]

That seems awfully beneficial, especially as dialects. I’ve been having these conversations. I have, in my extended family, many children, and they are all learning languages and one of them has been having kind of thoughts about, like, dialects and how dialects are almost another language. And if so, like how do you know what everybody’s saying when you’re speaking all the same thing, but it’s kind of a little bit it sounds a little bit different.

[Josepha Haden Chomphosy  00:13:37]

That’s certainly a thing in the US, the distinct dialects across our country. And so I imagine that that’s gonna be a really beneficial sort of implementation for countries that have a lot of different regional variations and certainly smaller countries that have technically the same language as somebody else, but a lot of regional differences, regional specific things.

[Josepha Haden Chomphosy  00:14:01]

Is that the same or different as the live translations, Translate Live, that we talked about at the WordCamp Europe a couple weeks back?

[Alex Kirk  00:14:12]

Right. So, Translate Live is kind of the next step after local GlotPress. It’s like this happy marriage between the WordPress Playground and local GlotPress. So the WordPress Playground is also something that has come up a lot. It’s basically a way for you to run WordPress inside a browser window, so in JavaScript. And at first, it seems like mildly interesting, I would say. But when you combine it with other things like local GlotPress, it can lead to really interesting opportunities. So with inline translation, for example, on WordPress.org, you would typically find for every plugin, the UI would look the same. You would have a table of strings, and all that makes you realize you’re translating this certain plugin is that in the header of the page, it says this name of the plugin, but other than that, it can look really all the same. 

[Alex Kirk  00:15:07]

And now, with WordPress Playground, you can put up a WordPress and run this plugin inside that Playground. And now, if you add local GlotPress to the picture, you can also do the inline translation of that plugin inside the WordPress Playground. So you’ve got inline translation. We add the glossary so they do make sure that you translate things the same way that they’re expected, and you don’t have to install the plugin.

[Alex Kirk  00:15:33]

And still, you can see what the translations will look like. You can see the strings next to each other, and what I think is most important, you will start with the strings that you see first, which are the most important ones. When you’re in the table view, those strings might be somewhere buried in the middle, and yeah, it’s really hard to see progress if you start with kind of obscure error messages, for example, versus just starting with the things that you see first.

[Josepha Haden Chomphosy  00:16:02]

Yeah. So, moving translations away from table-based translations where you kind of have to know what you’re looking for. So the Translate Live, along with local GlotPress, along with WP Playground, is going to make it so that it’s easier to see visually what needs to be translated, where, what’s most valuable to translate for your mid users and your end users, basically.


[Alex Kirk  00:16:30]

That, and also like for plug-in authors, it can be really good to see, you know, you can switch the languages in the Playground to another language, and you can quickly see like what’s the state of the translation in this language or in that language. And even things like, you know, Arabic as an RTL language rights to left language. The sidebar will change to the right, and you can also just switch language and see like, what’s my plugin like in this environment. I mean, this is not technically something that’s related to local GlotPress, but in this translation live ui, it’s very easy to change languages and see your plugin in another language.

[Josepha Haden Chomphosy  00:17:06]

I mean, it’s not specifically related to, to Translations Live, but also, I think that if we’re saying that WordPress not necessarily is going to lead the way with translations and native multilingual support in our CMS because, of course, it’s still a little bit far out on our roadmap. We certainly have an opportunity to have the best implementation of that.

[Josepha Haden Chomphosy  00:17:27]

And even if like that specific use case that you’re talking about isn’t related directly to what it is that you are working on for Polyglots and inside GlotPress and all of that, I do see that having more streamlined, more easy to see and access opportunities to like test the way that our software looks across varying environments, especially those that change it substantially from what we typically work in day-to-day for any individual developer or any individual WordPress site implementer.

[Josepha Haden Chomphosy  00:18:00]

Like, I think that that is a big step forward for all of us and certainly for anyone who is having to use WordPress as not a native English speaker. And so you say it’s not related, but it still is a big, a big benefit for WordPress overall, I think, to have this kind of work happening so that we can have those benefits to the folks who are using our software. 

[Josepha Haden Chomphosy  00:18:22]

So there were a couple of different things that you mentioned over the course of our conversation. We’re gonna put some links to the show notes for all of those. But one thing that you mentioned that just kind of went by, and we never really had an opportunity to talk about it. You talked about the, I think it was GTEs, Global Translation Editors, the folks that are like approved as final approvers of translations. If there is someone who’s listening to this podcast who wants to become a GTE someday, where would they go to do that?

[Alex Kirk  00:18:54]

So the path to GTE is a PTE. ( laughs )

[Alex Kirk  00:18:59]

So, we’ve got different levels of translation editors. Basically, you start, you could say you start off as a translator, and this is how you can kind of show that you can do good translations or that you’re very firm in your language. And this might make you be noticed in the community.

[Alex Kirk  00:19:16]

So we’re always looking for people who like to help with translations. And you might be then promoted to be a Project Translation Editor. Basically, it means that for a single language in a project, you’ll be able to approve translations. So, you’ll be the one who says, like, this translation is a good one and this conforms to the to the rules that we have stated as a translation community.

[Alex Kirk  00:19:42]

And further down the path then is the GTE, where you basically are allowed to approve translations across any project on translate.WordPress.org in your language. And that’s, usually you’ll be in, in that position with other GTEs.

[Alex Kirk  00:20:04]

So there is, like, in each community, there is like, we’re people based. We talk about what might be a good translation. We talk to each other, try to find rules that maybe prevent common mistranslations, or set the standards for how we want the software to be translated. And this is something where you get a voice as a translator, but as a GTE, you get into a position where you can actually make the changes or find consensus on how the software should be translated in your language.

[Josepha Haden Chomphosy  00:20:35]

And if folks are not familiar where the Polyglots team works and meets, where would they find you all?

[Alex Kirk  00:20:41]

At make.WordPress.org/polyglots.

[Josepha Haden Chomphosy  00:20:45]

Perfect. Alex, this has been such a fascinating conversation. Thank you so much for joining me today.

[Alex Kirk  00:20:50]

Thank you very much. 

( Intermission music )

[Josepha Haden Chomphosy  00:20:59]

So that brings us now to our small list of big things. First, WP Campus 2023 is taking place July 12th through the 14th. That’s a nonprofit three-day conference with topics that focus on the growth of higher education, accessibility, WordPress, and anyone who works in higher education.

[Josepha Haden Chomphosy  00:21:17]

It’s a hybrid event. There is an in-person component on the beautiful campus of Tulane University in New Orleans, Louisiana. I’ll add information about that in our show notes for anyone who would like to join in person or online. 

[Josepha Haden Chomphosy  00:21:32]

The second thing is that the mentorship program pilot that I have been talking about a little bit over the last few months has been formally launched.

[Josepha Haden Chomphosy  00:21:39]

If you are interested in contributing more to the project but not sure where to begin, take a look at this comprehensive onboarding experience. It’s cohort-based. It has some personalized one-to-one mentorship. There are guided courses, live workshops, all of that. So read more about it in our show notes and sign up for one-on-one team mentorship.

[Josepha Haden Chomphosy  00:21:59]

And then, finally, Matt mentioned at WordCamp Europe an idea that he had been thinking of for some time a Make team dashboard that would sort of help define team metrics and help identify for individual contributors what should indicate team health and where they can find the most impactful projects to work on.

[Josepha Haden Chomphosy  00:22:20]

A post has since been published on make.WordPress.org/meta calling for additional feedback on that idea, so that we have an understanding of what this could be, how the dashboard can kind of come to be. And so stop by and add your thoughts there in the comments. 

[Josepha Haden Chomphosy  00:22:38]

And that, my friends, is your small list of big things.

[Josepha Haden Chomphosy  00:22:42]

Thanks for tuning in today for the WordPress Briefing. I’m your host, Josepha Haden Chomphosy, and I’ll see you again in a couple of weeks.

( Outro music )

  No Comments   Comment