Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Translation of Content (and the Infra migration) and Nodejs.dev #5001

Closed
ovflowd opened this issue Jan 8, 2023 · 27 comments
Closed

Translation of Content (and the Infra migration) and Nodejs.dev #5001

ovflowd opened this issue Jan 8, 2023 · 27 comments
Labels
i18n Issues/PRs related to the Website Internationalisation

Comments

@ovflowd
Copy link
Member

ovflowd commented Jan 8, 2023

As we're going towards the path of over the time switch the layout and content from nodejs/nodejs.dev (Node.js Website Redesign) over here, I find myself questioning, what about existing pages on the nodejs/nodejs.dev and that also exist here. For example, the get-involved, about, and other pages.

Obviously, we have more existing translations here, but after doing some inspection, many of the translations need to be updated or doing funky things inside. (For example, the PT-BR translations have both English and Portuguese versions inside the Markdown files, but the English ones are commented).

Would this be an opportunity to "reset" the translations? Start over? Or should we keep the existing pages from nodejs.org instead of replacing conflicts with the ones from nodejs.dev? (Further explaining, if a page exists on both repositories, we choose to use the one from nodejs.org, and all remaining pages that do not exist on nodejs.org will be copied from nodejs.dev, such as the learn pages).

There are a few paths here:

  1. For all pages on nodejs/nodejs.org and nodejs/nodejs.dev we choose the ones from nodejs.dev, effectively resetting the translations.
    1. Route 1: And all remaining content stays translated as it is.
    2. Route 2: Or, all the remaining translated content already gets their translations removed, so we start over from translations.
  2. For all pages on nodejs/nodejs.org and nodejs/nodejs.dev we choose the ones from nodejs.org, only adding to nodejs/nodejs.org the content that only exists on nodejs.dev but not on nodejs.org.
    1. Route 1: And we keep the translations as they are
    2. Route 2: Or we nuke the remaining translated content and start the translations from scratch.
  3. Either Option 1 or Option 2 with the difference that instead of nuking translated content, we manually investigate all outdated translations or with funky content within their Markdowns (Either manually via GitHub's UI or maybe if Crowdin supports a diff tool, via Crowdin).

Regardless of the options, translations should be done via Crowdin, as it has an idiomatic IDE (online) for translations and a better translation review system that could prevent such funky divergences from happening.

Off-topic question: I also wonder if Crowdin supports versioning, meaning if a source translation file gets updated, it automatically requests the other translations to be updated/re-reviewed.

--

cc @Trott @nodejs/website @nodejs/i18n @nodejs/nodejs-dev

@ovflowd ovflowd added the i18n Issues/PRs related to the Website Internationalisation label Jan 8, 2023
@AugustinMauroy
Copy link
Contributor

For me it is necessary to take all the content of nodejs.dev and put it on nodejs.org without looking at what has been done on nodejs.org in the past. But take the translation already done on nodejs.dev (fr, ja , he ...). I know it's barbaric and sad.

But it is necessary. Because it allows you to start again on a good basis.
Another point is that the file structure will change. This allows to have the same contents (in different languages) in the same directory. This allows to maintain the contents more easily. It avoids having files that are out of date.

I can understand that my point of view is difficult to hear because it is radical. I understand that we are against this point I myself have worked on the translation of nodejs.org in French.
But we have to move forward so the deletion of this amount of files is necessary in my opinion.

@ovflowd ovflowd pinned this issue Jan 9, 2023
@ovflowd ovflowd changed the title Translation of Content and Nodejs.dev Translation of Content (and the Infra migration) and Nodejs.dev Jan 9, 2023
@Trott
Copy link
Member

Trott commented Jan 18, 2023

I'm in favor of whatever is easiest/quickest to do right now in terms of getting the merge/migration/whatever of nodejs.dev and nodejs.org completed unless doing so makes it harder to do translations in the future. Basically, whatever is the least work for @ovflowd and anyone that might have to do work on the Build WG side.

@joesepi
Copy link
Member

joesepi commented Jan 19, 2023

Thanks to all working through these thorny issues.

I have some questions:

  • @AugustinMauroy mentions "the file structure will change". I am under the impression that the goal is to not break any old links. Is the file structure changing? Does that mean links will break?
  • In terms of the translations, do we know about how many pages we are talking about? That would be helpful in determining the path forward.

I think something of a reset isn't a terrible option. Sometimes you have to break all the eggs to make an omelette? If there is an announcement on the change over, we could use it as an opportunity to reinvigorate translation efforts.

@ovflowd
Copy link
Member Author

ovflowd commented Jan 19, 2023

@AugustinMauroy mentions "the file structure will change". I am under the impression that the goal is to not break any old links. Is the file structure changing? Does that mean links will break?

All links will work as the same. The source file structure changed, basically instead of all pages residing within /locale/ they will inside /pages/, but no worries, all links should be respected and be the same (I'm being extremely careful with that)

In terms of the translations, do we know about how many pages we are talking about? That would be helpful in determining the path forward.

How many pages are currently translated?

If there is an announcement on the change over, we could use it as an opportunity to reinvigorate translation efforts.

Agreed :) and now I want an omelette haha

@AugustinMauroy
Copy link
Contributor

How many pages are currently translated?

you can have a % with crowdin

@nschonni
Copy link
Member

How many pages are currently translated?

you can have a % with crowdin

Crowdin isn't used for the current website translation efforts, so any percentage from their dashboard is likely incorrect. EX: it could say 0%, but the bulk of the content was translated through PRs, but not marked as translated on their system

@ovflowd
Copy link
Member Author

ovflowd commented Jan 19, 2023

@nschonni the % should reflect on what files are mapped inside the %two letter code% folders and maybe with the revision of translation? But I'm not sure.

@nschonni
Copy link
Member

Yeah, I haven't looked at it in awhile, but looking now, it seems like the accepted vs translated are 2 separate numbers now
image

@ovflowd
Copy link
Member Author

ovflowd commented Jan 19, 2023

Yeah, I haven't looked at it in awhile, but looking now, it seems like the accepted vs translated are 2 separate numbers now

Hmmm, interesting. Also to mention, on the current initial infra PR, I'm deleting all untranslated files residing inside the translated folders, because... Well, what's the point? More stuff to build.

@nschonni
Copy link
Member

nschonni commented Jan 19, 2023

That's probably OK for your dev cycles, but those files were approved/edited by the language groups through direct PRs to the repo, and likely shouldn't be thrown away.
I think the current folder approach here and also shown in nodejs/nodejs.dev#3150 is better than the suffix approach

@ovflowd
Copy link
Member Author

ovflowd commented Jan 19, 2023

That's probably OK for your dev cycles, but those files were approved/edited by the language groups through direct PRs to the repo, and likely shouldn't be thrown away.

As I mentioned, the files I deleted are the same as the English ones (untranslated). There's no point of having untranslated files inside translated directories 🤔

I think the current folder approach here and also shown in nodejs/nodejs.dev#3150 is better than the suffix approach

We're making the suffix approach right now because the initial PR/migration will be full SCG and we want to reduce the amount of file structure changes.

In the future, all these files are actually going to be thrown away (if we decide to use the files on nodejs.dev) which is what we're deciding in this issue.

@nschonni
Copy link
Member

Ah, if you're just wiping out the English files copies, that's great! There was an issue around cleaning those up awhile ago, but I don't think it got finish.
FYI, I think they originally got imported/created by Crowdin when we first set it up 😆 , so something to watch out for

@ovflowd
Copy link
Member Author

ovflowd commented Jan 19, 2023

Oh I see, that's enlightening!

@nschonni
Copy link
Member

I think #3056 was that initial push after the setup

@SEWeiTung
Copy link
Contributor

Would this be an opportunity to "reset" the translations? Start over? Or should we keep the existing pages from nodejs.org instead of replacing conflicts with the ones from nodejs.dev? (Further explaining, if a page exists on both repositories, we choose to use the one from nodejs.org, and all remaining pages that do not exist on nodejs.org will be copied from nodejs.dev, such as the learn pages).

Just depends.

For translation files, there're much more on node.org instead of node.dev in many languages, and I'm not very sure about the differences between the "node.dev" and "node.org".

IMO:maybe we can:

  1. "node.org" is mainly focusing on introductions of node itself, with non-technical or lower-tech articles (maybe including certifications/governance/general (junior guides of node)....ect.
  2. "node.dev" is deeply (purely) on development skills of node, so maybe knowledge articles of node can be removed from "node.org" to "node.dev" keeping the same translations (until now "knowledge" isn't shown in "node.org"), and what's more, for API research, maybe we can offer a direct link to direct to "node.dev"(because later we need new translations for APIs in "node.dev").

All in all:

a. Try best to keep and file the files to "node.org" or "node.dev" properly. Maybe this is a quick way to go with instead of totally resetting translations.

b. Remove all the untranslated files under each other language folder, add some new files where they didn't exist before in both sites.

@ovflowd
Copy link
Member Author

ovflowd commented Feb 13, 2023

For translation files, there're much more on node.org instead of node.dev in many languages, and I'm not very sure about the differences between the "node.dev" and "node.org".

Many of the translations on nodejs.org are outdated, and some of the Markdown files even have obsolete content and mutated structure... Also most of the translations one translated the basics, which is fine, but just wanted to make it clear so we don't have the wrong impression that the translated versions have the full website translated.

IMO:maybe we can:

No, no, no. Let's please not fragment the websites. You completely missed the point here. Nodejs.dev is not a different website, it has the same core-content of Nodejs.org. Nodejs.dev was supposed to be a redesign and re-evaluation of the content to be offered on nodejs.org. (Aka the "Website Redesign" initiative).

a. Try best to keep and file the files to "node.org" or "node.dev" properly. Maybe this is a quick way to go with instead of totally resetting translations.

No, we don't have the capacity to maintain two different websites with different purposes.

b. Remove all the untranslated files under each other language folder, add some new files where they didn't exist before in both sites.

This is already done on #4991

"node.dev" is deeply (purely) on development skills of node, so maybe knowledge articles of node can be removed from "node.org" to "node.dev" keeping the same translations (until now "knowledge" isn't shown in "node.org"), and what's more, for API research, maybe we can offer a direct link to direct to "node.dev"(because later we need new translations for APIs in "node.dev").

I'm not sure where this idea is coming from, but we also don't have the capacity on curating Node.js learning content, there's already a lot out there. Let's not over-reach 😅

@ovflowd
Copy link
Member Author

ovflowd commented Feb 13, 2023

Sorry, @MaledongGit but I disagree with all of your points. They are nice, but are way too naive for the reality we face right now, and I honestly believe we should laser-focus on the content we display. Instead of hosting a plethora of content, let's focus on keeping the core content updated, meaningful, and useful for the user.

@SEWeiTung
Copy link
Contributor

SEWeiTung commented Feb 14, 2023

@ovflowd:Sorry, It seems according to your suggestions, "node.dev" will take place of "node.org"?

@tniessen
Copy link
Member

Given that some of the arguments for SSR in nodejs/admin#766 are based on the internationalization of the API docs, are there plans to actually translate their contents (which change very frequently)? Otherwise, it seems that the explosion in the number of documents boils down to not internationalizing the actual contents, but merely some common phrases and the surrounding navigation.

@nschonni
Copy link
Member

@tniessen the API docs have been translated to a certain degree for some time over in https://github.com/nodejs/i18n, but never shipped as part of the website

@AugustinMauroy
Copy link
Contributor

@tniessen @nschonni
Hey 👋
For your information a discussion on next-10 is open about the translation of the docs. HERE
In the content migration we will not translate the docs (unless I missed something).

@ovflowd
Copy link
Member Author

ovflowd commented Feb 14, 2023

@ovflowd:Sorry, It seems according to your suggestions, "node.dev" will take place of "node.org"?

For many years, the idea has been to redesign nodejs.org, and nodejs.dev was the playground/website redesign repository.

So yes, the ultimate goal is to have both the content, layout, and feature set from nodejs.dev on nodejs.org, but no, we're not migrating the entire codebase of the nodejs.dev repository to the nodejs.org one, as they're entirely different frameworks.

We choose to steadily update the nodejs.org repository with the layout and content of nodejs.dev. There are a few issues open both on nodejs.org and nodejs.dev repositories to keep track of this...

PPS: Yes, we'll reuse the styles, React Components, and much as possible from the nodejs.dev codebase. But many things will also be done from scratch, as Gatsby and Next.js are fundamentally different 🤔

@ovflowd
Copy link
Member Author

ovflowd commented Feb 14, 2023

Given that some of the arguments for SSR in nodejs/admin#766 are based on the internationalization of the API docs, are there plans to actually translate their contents (which change very frequently)? Otherwise, it seems that the explosion in the number of documents boils down to not internationalizing the actual contents, but merely some common phrases and the surrounding navigation.

The explosion doesn't boil down on the internationalization of the content of the page, as even if the content itself is not translated, for a full static generation for all available languages, a copy of the non-translated pages needs to be done on the "localized language", this is done currently here. Of course, the idea is that docs are able to be translated in the future, according to the Docs Metadata Proposal

@ovflowd
Copy link
Member Author

ovflowd commented Feb 14, 2023

@tniessen the API docs have been translated to a certain degree for some time over in nodejs/i18n, but never shipped as part of the website

As available on here but the reality is, basically no content was translated and it is kinda impossible to keep track of what was actually translated or not in a few of these directories (Each vX.XX is using a different folder structure which is kinda bad).

@ovflowd
Copy link
Member Author

ovflowd commented Feb 14, 2023

@tniessen @nschonni
Hey 👋
For your information a discussion on next-10 is open about the translation of the docs. nodejs/next-10#153
In the content migration we will not translate the docs (unless I missed something).

To fix the link that you're mentioning, the Next-10 initiative for Docs translation is part of this

(But yes, Augustin is right, translation of API docs is not part of the initial scope of the Website Migration, actually not part of the scope per se, but will be achieved through that Next-10 proposal)

@nodejs nodejs locked as resolved and limited conversation to collaborators Mar 15, 2023
@ovflowd
Copy link
Member Author

ovflowd commented Mar 15, 2023

Locking as pretty much the plan is defined.

@ovflowd ovflowd unpinned this issue Apr 9, 2023
@ovflowd
Copy link
Member Author

ovflowd commented Apr 9, 2023

Unpinning and closing this issue as the plan is solid and outlined/defined.

@ovflowd ovflowd closed this as completed Apr 9, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
i18n Issues/PRs related to the Website Internationalisation
Projects
None yet
Development

No branches or pull requests

8 participants
@joesepi @Trott @nschonni @tniessen @ovflowd @SEWeiTung @AugustinMauroy and others