Language filter or automated translations

I am not a coder and don’t know how to accomplish such a thing. But if you can somehow add an attribute that distinguishes the language, it could be a start for auto translation?
Personally I understand and speak 4 different languages, but there are so many other languages I absolutely don’t understand. Like Arab, Russian, Chinese, Japanese. Even Spanish and Italian I only pick up a few words because of they are somewhat related to French.
As I said before, it is important that you can express yourself in a native language so your message is distorted as little as possible. If you must manually translate every post, it does become too much of a hassle…

I agree, and the declaration needs to be multiple. However, I’m not worried about translate, I’d just like to choose which languages I see in the stream.

That’s an option but also a big trade off. You will out on possibly a LOT of interesting discussions. Even if someone is native English speaker, there are a lot of languages used on diaspora*. Especially German and Spanish are used a lot.

I strongly agree! This Filtering idea is great! As you say, it “… would increase the user experience tremendously.”

I’m not sure what y’all are asking for. There are some 6500 recognized languages but possibly more importantly, some 70 locales (the list you’re presented when you install a new OS). Any system would have to at a minimum support those 70, which include three Nowrwegian varants, two Maori, two Portugese (Portugal and Brazil), two Chinese (traditional and simplified, doesn’t include Mandarin), Gaelic, Catalan, Galician Spanish, “international Spanish” which somehow includes Spain and most of Central and South America…

I follow a lot of random people from all over where English is not their primary language. I don’t follow a lot of people that mostly post non-English memes without something I can translate. It works remarkably well.

I’m just interested in a filter for now. Translation would be a separate issue all together.

It could work like this:
Tags on Posts
Each user sets, within their settings, what their primary language is. Then each of their posts is “tagged” (not referring to hashtags here) as that language by default. If, for a particular post, the user wanted to change that tag to another language, they should be given the option.
Language Filtering
Then, each user, within their settings, would select the languages that they would like to see within their streams.

I’ve merged the two active content-language-related discussions, as they are basically the same. Unfortunately, Discourse decided it does no longer care about date-based sorting and appended the second thread to the end, how marvelous.

In any case, this comment in this thread is relevant: Language filter or automated translations

Thank you for your reply Dennis. What about no detection and no translation, just languages selected in settings:

I believe the “Tags on Posts” would address your first two bullets:

If the primary language default setting was required to be set, then that would address your 3rd bullet:

And, I agree, avoid detection altogether. That would address your 4th bullet:

So, imagine I’d set my primary language to English in my profile settings - which is true, since I post most of my posts in English - and I’m too lazy to tag things (you really can’t expect users to do that reliably), and we have no automated detection, then what would happen with my German posts? They’d still be shown to people only talking English.

From the previous thread, with apologies,

Not talking about translation either. This is just not possible without integrating someone else’s code for $$$ and I doubt many podmins (myself included) would be willing to pony up that kind of money.

And I’ll for the moment set aside that that thread started out talking about removing language barriers, and settled into enforcing them.

To reiterate for the merge, we’re talking about at a minimum 70 locales that would have to be dealt with if we’re going to go UTF-8. And then every user would have to positively affirm each language that they wanted to see.

I propose a simpler solution - if there’s a user that mostly posts in languages that you can’t/don’t want to translate, don’t follow them. What ends up in hashtag follows is generally relevant despite the language, and/or easily scrolled past. We even already have the ability to hide posts/

There would be some of that, but eventually people who post in multiple languages would realize or remember when writing a post, to click the language button (which would be showing their default language) below the “Start a conversation…” field. They would change the language for that particular post. The next post they create would be back to their default language.
In my opinion as a new user, and as someone who is getting non-techie friends to sign up, the huge improvement in user experience would greatly outweigh the minor undesirable consequences (occasionally some posts in other languages slipping through and the slight inconvenience to multi-language posters, having to select a language for their non-default language posts).

That’s a very bold assumption that I absolutely don’t agree with. Just like a significant portion of people don’t even select the right aspects, and pretty much nobody fills out the image description on hotlinking images, I have no confidence that people would reliably mark their post with the correct language. This entire idea falls apart if even a small portion of posts are tagged incorrectly.

Posting on diaspora is already complicated enough, I see no reason to make it even more complicated.

1 Like

So we’re both on the same page (which I think we are). I’m not suggesting any automated detection, just options in Settings.

I understand what you are saying with your simpler solution. However, there are so many posts (users) in my streams that are in languages I’m not fluent in, maybe half of them. Actually, a quick scroll through the “Public activity” stream proved that a large majority of the posts in that stream are in languages that I don’t understand. So, it’s a much, much bigger problem than “…if there’s a user …” I’m not following them. They’re posting with hashtags I follow. The “Public activity” stream and the “#Followed tags” streams do not provide a very enjoyable user experience for me. my friends, and I imagine for most users that are not fluent in the languages that are popularly used in posts on diaspora*.

I have no doubt that they’re relevant, but the post is lost on me. Having to scroll past or hide so many posts is not a very enjoyable user experience.

I don’t see my proposal as enforcing language barriers. When first implementing this proposal, in each user’s Settings, the “Default language for my posts” option would be set to “No language selected.” Clicking on this would then provide them the option of selecting a language, or they could leave it set as “No language selected.” Also, when first implementing this proposal, in each user’s Settings, the “Preferred languages for streams” option would be set to “All languages.”
This way, current users that don’t want to see a change could leave these options in Settings set to “No language selected” and “All languages.” Then diaspora* would perform in the exact same way for them. And, users like me, who would prefer to only see posts in languages they are fluent in could go into Settings and change those options.
Again, I would see this as such a huge improvement, a game changer for diaspora*!

I’m providing the perspective of users (let’s refer to them as Category A Users) who aren’t fluent in the language used in a large percentage (for me it is half, or more) of the posts that show up in the “Public activity” stream and the “#Followed tags” streams. This perspective is vastly different than users (let’s say Category B Users) who are fluent in the languages that show up in the majority of the posts in these streams. To Category B Users, language filtering may appear to be not that big of an issue or inconvenience. However, to Category A Users, the lack of, let’s call it Optional Language Filtering has a large negative impact on their user experience.
I certainly don’t know the ratio of Category A Users to Category B Users, or the total numbers of each user. But, I imagine that the number, or percentage, of Category A Users is not insignificant. And, as diaspora* continues to grow and spread to other countries around the globe, I would imagine that the number of Category A Users will continue to grow.

Okay, but, as I proposed in my recent reply to Olav, the setting would already to set to “No language selected” or, better yet, phrase it as “No language specified”. So, without doing anything, users’ posts would already be set as “No language specified” or, if they chose to change the language tag to their posts, it would be set to a language.

For Category A Users, it would be a set it and forget it type of thing. It would not be a choice that needs to be made for each post. Make the choice once and you are done and all of your posts will be tagged properly.
For Category B Users that will be posting frequently in more that one language, they can leave that setting as “No language specified” if they’d like. Then, they too don’t have to make a choice each time they create a post, if they don’t want to.
Category B Users, under the setting “Preferred languages for my streams”, could choose the “All languages” or the “Language not specified” option along with the selected languages they want to check off.

I don’t see it that way. From my perspective, it’s almost as if, with the current status quo (no Optional Language Filtering), a large percentage (again, for me it is half or more) of posts are posts I’d prefer to filter out. Implementing this optional language filtering, if some of the posts are tagged incorrectly, then it becomes a small percentage of posts are posts I’d prefer to filter out. That’s a vast improvement to the way it works now. Even given that some posts would be tagged incorrectly, it would be a huge improvement to the user experience for people like me, Category A Users.

For any users that want diaspora* to continue to operate the way it does now, they would not have to change any Settings. When implemented, the Settings and the options set by default would be:
Language tag for my posts: No language specified
Preferred languages for streams: All languages

This Optional Language Filtering is not a perfect system, but it doesn’t have to be. It’s an improvement though, a big one.

I’ll try it one more time, because you seem really reluctant to acknowledge the reality: In your model, it’s not like “a small percentage of posts would not be tagged, or tagged incorrectly”, it would be “a small percentage of posts would be tagged at all”. The vast majority of posts would have absolutely no language tags whatsoever, and then your whole filter idea does absolutely nothing good. In fact, it makes things even worse by raising expectations that filters could magically work, and by adding more clutter to the UI.

Our general user base right now (and I’m talking about everyone, not the people who’re technically versed) do not use aspects because it’s “too cumbersome”, they don’t use things like inline images correctly because it’s “too much work”, and they don’t even use the post preview. Asking people to tag their profiles with languages and tagging every post they submit with the correct language and expecting that the majority of posts is going to be tagged correctly is naive. It’s just not going to happen. So your suggestion creates a lot of effort in actually implementing a thing, it creates a lot of overhead because it means we have to store and federate even more information for every single post, it adds more clutter to the UI and makes the whole idea even less attractive to people who don’t want to spend days of studying how the interface works, and the expected returns of implementing this are miniscule.

No matter how often you keep repeating the same points over and over again, it does not change the fact that our users aren’t even using the things they have right now correctly, and are already overwhelmed by everything. Just adding more things to the pile is not helping, and this is not the project where we just add things because it suits the tech-pros without considering the non-technical userbase. There are other projects for that.

1 Like

I imagine same thing would happen which happens right now when someone posts NSFW content without tagging. Their friends complain and then either this person learns how to use the tag or gets ignored :slight_smile: It works.

I wouldn’t compare this to filling image description, posting inline images or using aspects extensively. I am sure that you, being who you are, also understand the difference. Using NSFW tag directly affects other users, if you don’t use it when appropriate you are an ass to them. Since social networking is about, well, networking with other people, users generally care about playing nice.

On the other hand filling image descriptions has little practical value for the absolute majority of users. No one ever sees it, no one wants it. Sure sometimes one stumbles upon a downed pod so images are missing and sometimes image description would help - but again usually not. E.g. if I posted my cute dog and the photo doesn’t load, it will make little difference to see nothing or “This is my dog”. Same for aspects - users say aspects are cumbersome because they are. I am a technical person and I have problem using aspects - not because I don’t understand how they work, they are just annoying to use. Again the feature in its current shape provides not enough motivation to use it.

As for “majority of the posts won’t get tagged” - this really depends on the implementation. As I described above, language tagging could be mandatory. You create your account, you select used languages and the default one (#lang-en, #lang-de or #lang-all) applies automatically. And yes, it should be changeable easily - unlike some other things. If aspects were less cumbersome, they would be used more too.

Also if implemented right it will be pretty much transparent to users. If people don’t have this problem they just leave language settings on default. If they start seeing too much foreign language, they go and exclude it once. If their friend keeps posting in German they poke him and kindly ask to push one more button when they do that - after all it is in their interest to increase exposure. No days of learning needed.

I am not sure how much overhead 1-2 extra tags will put on large databases but since users are encouraged to extensively tag their posts anyway… :slight_smile:

I do get your point about development efforts required and of course users can’t tell developers what to do and what their priorities should be. But the demand is there.

1 Like

I know this is an old topic but maybe a button on top of posts to translate into the local language if necessary that a user can click? I can see it being complicated especially when it is necessary to use 3rd party services to translate and there not being something that could be used locally by diaspora.

After 7 years of talks and no code (obviously), I just made a working proof of concept to translate posts.

First of all: I stopped finding the perfect solution that pleasures everyone.
My question was: “What would I like?”

By looking at other platforms, I was inspired to just have a ‘translation’ button on a post that translates to the target language.
The target language is just the language the user set inside its profile setting.
The source language - well, don’t care, just show the translation button.

Thats it.
In my pod Deepl is used. a payed service which handles these languages: English, German, French, Spanish, Portuguese, Dutch, Italian, Polish, Russian, Japanese and Chinese. Everything can be translated to every other language.
(there is even a gem for it)
After a translation was made. it is stored non-persistently inside a cache. Then the original language is known and could be used to wisely show the ‘translation’-button or not.

A podmin has to decide if he/sh will pay the price. See prices here: https://www.deepl.com/pro?cta=menu-plans

Did I say that all (most) formatting will be preserved?
Original:

Translated in-situ:

I would like to know if this is a useable beginning?
Did it work with strange formatting? Is the quality of the translation useful?
Any serious legal problems?
What thinks the community?

A working proof of concept is here: https://societas.online

Read my previous post here - and everybody is invited to look if this is something the diaspora community requested. Or at least: if it is close to a solution?

From a user point of view, this is a very nice solution. Once again, my only worry here is about privacy leak. Maybe the easiest way to avoid this at the moment would be to only offer that “Translation” button on public posts?