← All Talks
Discussion / Panel Community

How to have more non-english speaking users

Victoria Machado de Oliveira · @vicwalker.dev.br
Sunday, March 29, 2026
10:30 AM – 11:00 AM PT
Room 2301
Available in-person & via livestream — Stream 3 (Room 2301)

This panel will reveal some common mistakes that make it harder for your app to be used by non-English speakers around the world. Following a few tips and guidelines can help new apps avoid falling into the same problems. Expect to see some real examples from across the Atmosphere. English speakers are welcome to bring any questions, and non-English speakers are welcome to join the discussion and bring additional points of view.

Good morning everyone. Good morning. Well, let's start at this.

Speakers users in general, not only for Bluesky and stuff. I will explain a bit how this is going to work. I have a little bit of a presentation where I will introduce you to the topic, talk a bit about stuff, and by the end I will have uh uh some a few minutes so we can uh discuss things including people uh watching from home uh on stream place. I'm sh I I will read the the screen chats if you have uh any contributions, especially non-speakers participants will be very welcome to join the discussion at the end.

Okay. Oh no. I don't know. Help me.

Okay, okay. I I figure it. Okay, let me let me present uh introduce myself a little bit. Oh sorry, I forgot mic, it's here. Uh I will introduce myself a little bit. I am Victoria. Uh I'm from Brazil. I uh my pronouns are Deishi in English. Um my handle is Vicwalker.dev.br uh on Bluesky. Um I am and my occupation my real occupation is I'm a QA architect uh and I also uh for eight eight years already and I also do community moderation uh job for Brazilian creators uh for more uh around 12 years already. Um also my my a little of my background uh my background too.

I am graduated as game developer and IT technician. And uh I also did be uh I do a little bit of uh help uh help translating some apps even before a uh the AT Protocol I helped some uh apps like Twitter. I don't know if anyone will know this old app for Twitter. It was really cool. Um uh I helped translate uh a bit for talkmicky, the Bluesky client uh from Japan uh to Portuguese. Um I also use it uh I used to be a streamer back in uh some uh more than ten years ago, but today I'm just stream uh as a hobby.

Um I also I also founded AT Brazil that you can find uh the by the handle atproto uh dot com.br and I'm based in Sao Paulo Brazil. Also you might see my uh might might find me using this icon uh uh a lot everywhere but this is then my from my a little friend of mine. So just to know. Okay, let's go to the main topics I will be talking about. So uh the uh there's three great uh big topics I want to uh uh talk of uh a bit of a problem uh a barrier to keep uh uh your users that's they they don't speak English as a first language.

So first of uh first off the onboarding. Uh I want to provoke a little a little bit of questions uh uh for you you all. Um the first expressions uh is always important. So if you uh you need to ask, you is your onboarding generic enough for people from multiple countries to understand the how to get our around your app or not. If you are not sure you can just uh uh ask some other uh uh uh search for some people that are open to give your feedback. It's always good. Also, communication. After they are using your app, you you can't just take that for granted.

Having a good and healthy communication with your user base is really good. And communities will always be very happy to be an acknowledge and be listening to. So please also be very careful because since people speak different languages and not me uh in not the English is not their first language. Words can be uh understand uh understood in different ways. So please be very mindful about uh your wording and stuff. It's it can be very impactful of your uh success uh of your app. You can uh scare away many users. Also translation. I won't be go uh too deep because right after me uh my little friend here will have uh a full talk about uh the the challenges of translating Bluesky to French and it's going to go very deeply in this topic, but I will give some uh a little bit of tips and uh resources to help with uh with that.

Like uh a little uh a little fact check, like less than 20% of the global population actually speaks English. So you uh you can you can't uh count with uh having English is is enough for your app. Uh also be very careful because machine translations uh uh can't uh doesn't solve everything. Even with uh the advanced uh AI models, you need to be very careful. I will enter into the stop now. Uh a little in uh in a few minutes in a few minutes. Okay, let's talk about the onboarding. Uh users are having a lot of problems to find other uh uh what matters to them.

People from uh that uh speak their same language, there's uh are talking about the same topics, they they did uh it's relevant uh it's meaningful in their region and uh so you uh I know it's not easy to solve this problem to have a good algorithm, but uh you uh you can also have though uh uh we have a big community of developers here and builders and stuff. You can always uh try to solve this problem together. Also uh the creators also need uh to understand uh if uh if it's worth to use your app most uh uh a lot I'm speaking of like content creators uh in this uh in this uh topic like uh there's a lot of creators that are uh spreading their presence in multiple platforms and it it takes effort to do this.

So if you they don't see uh uh that this effort paying off they might not uh try to keep uh their presence in your app about the onboarding and stuff uh there's a lot of questions how to do the best UX to that in many languages and uh or how to explain the protocol to uh to users that can they don't need multiple accounts if they don't want to to use multiple apps. There's a always uh there's all open questions that we don't have the solid answer yet, but this group of research will be uh doing the uh taking uh this researches, so I I recommend you scan this QR code and uh keep them in your uh notes.

Ah also I forgot to to warn you that I'm going to show a lot of QR codes. So be ready to to to take the pictures or scan this stuff. I will wait a little bit. Ready? You can always also ask me for the links and the presentation after on Bluesky. I can share those two. So also this is uh this wasn't planet in originally because I when I was here in the science day for the conference, I saw this in very interesting interest uh presentation about uh they styled migration to Bluesky for a scientific uh community.

Uh and they have a really insightful research uh in data. So uh uh if you miss it that it's okay, the AD proto science will uh post the recording later and so save the uh follow 80 proto science to just check this data because it's not uh the exactly the topic I'm talking about, but the this data is kind of related and useful. Okay, let's go to communication now. Uh if you really need uh wanting to uh attract a certain uh audience, you need to communicate with them, otherwise they they they uh they might not know about your app in that the in that your app can be uh useful to them.

Uh they really appreciate the effort to be included in being in listen to. Uh you can start doing simple uh steps like announcing in your new features, your features in different languages. Simple text can be handled by auto uh machine translation translators, but I I I I I I still be careful about uh translate out translating uh more complex text. I will have a little good uh example. Leaflet did a really uh really cool job uh in the beginning. They post like uh they ask for feedback and requests for different groups like artists, scientists, fandom people.

And even though they did it uh in English, they uh they manage to push new features, very cool features uh that everyone is benefiting. I can see some uh non-English speakers using Leaflet and enjoying the those features. So there's you can do this this kind of thing too. This QR code will take you to this list of posts if you want. Also, let's talk about AT Brazil that with the work I'm doing, I'm doing like uh the AT Brazil. I'm trying to bridge this also this uh this gap in communication. I try to uh translate in simple ways in quick ways the biggest updates are uh around the Atmosphere, the Bluesky stuff, uh things I I see Brazilians being confused about.

I try to explain in uh a simple way to everyone to get and also to provide the technical uh Brazilian developers the resources to dig deeper in the in information that not uh not always is getting out of the English bubble inside Bluesky and stuff. Um that's uh uh I think that more people can do and will be very helpful to spread the word. A little of reality check. Um that QR code in the top right is uh uh graphic to the most used language in Bluesky by day, by week, month, and years. You can check out and I will just highlight some examples of the most uh of the most uh used languages uh Japanese, uh Portuguese Portuguese and Spanish.

Like uh in Japan, there's the uh I found that around 28% of the population speaks uh English. In Brazil it's just five percent of people that is comfortable speaking English. And Mexico around 30 uh 13% and in Spain 22%. So you can see the percentage is not that high in even though you might you might might think about it was higher. So I need you need to tell think about it. Okay, translations. I recognize it's not a simple task to have good translations. Machine translations are uh can't be up to date with uh new uh popular ways to in terms across the internet it and the language is moving really fast uh around the internet and so the translation won't uh always keep up with that I will give some uh a little example in the next slide uh be cautious of relying on AI because you don't know uh there's uh if that model is well trained in that language you want you want the there there's multiple uh models that have different training and it can uh you you can maybe uh have more problems relying on that than not uh localizing your app will make a huge difference not just translating I will uh give a little bit of examples but my little again the next talk will go even deeper about this uh like my little example is from Twitter in port in Brazil in in Brazil tweet became tweet that right that like that and the users became known as tweeteros like this kind of thing uh a mash a machine translator won't get in for a long time they might not new uh know now because Twitter is uh is around for a couple of years now but for new apps it you won't you won't know by by relying in machine translations.

A little tips uh that I see a lot of people struggling in around the Atmospheres time zones please avoid using uh regional uh names for time zones US central doesn't mean anything in Brazil please a good way to to be safe is using UTC UTCs the universal time for a reason UTC is more easy to be understood around the globe so it I I I I give you the this tip it's easier because if you also want to list uh big cities you will will need a really really huge list to maintain and you might not be familiar with cities from different countries you are not uh you never heard about so I I think you the good old UTC is the safe bet to to go for uh for that now let's talk about uh tools to help you translate because I know not not everyone has uh a lot of money and uh multiple uh people inside their teams uh to help so you can have use some tools to have the community to help you translate this one uh npm uh x is using is called lunaria you can see in this uh in this screenshot you uh you can see the translation from portuguese there's eight nine of strings translated so it there there's need some uh some updates and the it it lists how much uh uh what the the you need to translate unfortunately it's a little bit technical you need to know how uh the people translating need to know how to uh commit and push uh code and find those strings you know it's not that simple to to use that think the there's the this tool think that is used by talkmiki it's a little bit uh easier to use you can use this this interface to s uh to see uh the trans uh different strings from different languages to translate uh but you it it it require requires uh connection with GitHub so uh having a GitHub account it's not something that non-devs are very familiar with.

But uh when you have the GitHub account you can do everything through this interface. But that is that is a point to to note that might be a problem to gather help from non-technical people. And that is crowding that's Bluesky, Bluesky is uh using. It's really less technical. You uh you don't need to uh to touch code at all, you just see the text and translate in uh in the app it they have even mobile mobile app. So it's really really easy to use. Uh but also uh they are they have some requirements uh to use this.

So check if your project can use this first. Okay. Now it's time for the discussion. Uh I will check the live the live chat the the screenshot. Um I please I ask for uh no English speakers to bring your point of view if you are comfortable about some of the topics I said. Uh and English speakers, you are uh well uh welcome to bring questions in listen and listen. So that's uh we have about uh eight minutes to do this. Let me see the the chat the anyone there is a microphone? Thank you. Yes, so if people can raise hands, I'll bring the mic so the people on the live stream can hear us.

Yeah. Thank you. So when localizing an app user interface, um is it enough to just translate the words or are there certain different like paradigms of of control and layout um that you need to be thinking about based on different expectations from different communities? Yes, I I can uh give you some examples that will be uh uh uh more in-depth with my uh the next talk too uh with real examples from French, but I will give some examples in Portuguese too. Um translating from English pro to Portuguese as an example, there's a big difference like uh Portuguese, French, Spanish, uh Italian, it's all uh very gendered language.

So uh you like imagine if you are translating uh a word in your interface like followers. You it's a uh a small word, but in different languages it can be really big and if you want to accommodate different genders, you might need uh a bigger space for that. So that's uh a really good uh problem uh uh really a real problem to to accommodate this in your interface. How you uh adapt your inter user interface to bigger uh translations, uh words, how do you sh uh make these words short or not? How do you accommodate the needs?

Yeah, thanks Victoria for that. I will add to that uh because um beside French because I will talk about French for 30 minutes and including about gender language and you are not ready for that. Um but um also for other languages I'm not that familiar about that, but please keep in mind that there is right to left languages and this is a big thing about layout and stuff. So but one of the main things that I will also say but you don't have to do it perfectly at first. Yeah, you just have to care. If you care, it's cool.

Translators will come to you and ask for stuff and you will have to understand that their demands make sense. We don't come to you if we don't think that it is important for us. And um uh you just talked about um the strange the string length because the classical example is German. German love to agglomerate words into big words and you may not have that in mind when you are designing your beautiful markup. But of course you can't simply cut a word anywhere of what you can do, but you have to think about that. And if you don't, your buttons would will explode in a way in your UI.

So you may have to think about that, but don't freeze about that. Don't say, Oh, I won't do uh internationalization uh uh until I have you know uh X thousand um uh users. You can try simple things first, and I will actually tell you a very useful thing in sorry I'm teasing, but um about how you can uh organize your keys, for example. Oh, that's not hi, thanks for for sharing. Uh and I'm just here like to share more experience. Like I had a tiny library just to format numbers, like usually in English uh people use uh comos for thousands and uh period for decimos.

I'm Brazilian as well. In Brazil we do the opposite for whatever reason and said, Oh, that's simple. Uh and then I started a library to do that, and it became a massive rabbit hole because like the way people represent negative numbers, it changed. Uh people uh um group numbers by three, usually like in English in Brazil, but then I found other countries that group by two numbers, two digits, but so yes, it is massive. Like you cannot imagine how uh difficult it is only for numbers, and then you think about a whole Atmosphere, a whole community.

So yeah. Anyway, just adding to your question.

Oh hi, I'm from Japan and I resonate so much from the talk. Thank you so much. And uh my uh I have a question and I get to send an opinion, so I'll do that. Uh my question is so this is great. Uh we all here uh interested in internationalization. Uh where can we go offline uh you know after we go home. Is there a place ask these questions or who do we go to? Or should we make one and then uh uh let me say one more thing. So uh Japanese people are very excited about new you know tools and uh apps and love to see it in Japanese for sure.

So if you uh localize it or make it available for localization, they'll be happy to you know contribute in. Yeah. Okay, to organize the uh well, we we can always create uh some space to help organize stuff, people uh interested in that. You can figure out together where uh uh where you can do all stuff. We can start by uh organizing on Bluesky or what or what how to who is interested in help and uh who needs help and stuff, and then we can evolve. I don't know, like a roomie chat or something else. We can always uh figure out, or if you someone else has uh uh good solution to that.

It's it's we're gonna be very cool. Let me check uh now the the the screen uh the screen shad really quickly. Um yeah they are they were talking about like if a word is a metaphor for something technical, a little translation probably won't work well. That's a good point. Uh yeah, a lot of people are talking like caring is the the most important part. Oh there is Rumi who wants to help with organizing, but it's still very work in progress. Okay, okay. Um maybe just to add a little thing um about that. That's funny. Uh first of all, um about uh a space to to talk with each other.

Um I think that a roomy chat or something could be cool, but just so you know, we already have a Discord for uh the translators of the the Bluesky um open source uh project because we have some time to you know to co-ordinate or to ask Samuel for what what is this new feature that you are shipping. Um but also um about you know the numbers because you talked about numbers and dates. Just I just uh I I won't be able to talk about that in the talk, but please rely on the browser, Chrome, Firefox, Safari.

They all uh took a lot of time to do it correctly using what uh Unicode standard uh provide and it will really simply handle everything that you will uh throw at them. Uh those uh I would say weird but no no no offense intended those strange way of organizing numbers are actually very well um uh supported by um uh by uh the browser. It's the same for dates, you know, writing dates in the right format, ee not with month starting with the month, you know. Um and everything like that are actually uh supported by this browser.

Okay. I have just one last slide to thank you, obrigada everyone.

This card code will uh to take you to my blento with my information. I have uh a link to shadow uh uh meeting with uh online with me if you want. Uh I will be available after the conference uh for that. Or if you are in person you can scan my UN Me UME in person. But I also have a little Brazilian gift to give you to uh today. So that's it. Thank you. Obrigada