Proposal for handling PTE requests

At WCEU, @petya, @nao, @casiepa, and @ocean90 have discussed the future of PTEProject Translation Editor A Project Translation Editor (often referred to as PTE) is a person, who has access to validate strings on a specific project (for example BuddyPress, WooCommerce or Twenty Fourteen) for one specific locale. A project translation editor can approve strings that are added by translation contributors. Per project translation, editors are appointed by a general translation editor after a request by the project author or by the contributors themselves. requests.
The goal is to move them in a separated place (but still on this p2p2 "p2" is the name of the theme that blogs at make.wordpress.org use (and o2 is the accompanying plugin). When asked to post something "on the p2" by a member of the Polyglots team, that usually means you're asked to post on the team blog https://make.wordpress.org/polyglots/. site) and have the data of each request in a more structured format available.

Here are the notes:

Form to collect the data

Instead of the free form textarea we ask for the data via a form:

  • Maybe: Ask if pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party/author or translators
  • Select plugin/theme slugs (autocomplete)
  • Select LocaleLocale Locale = language version, often a combination of a language code and a region code, for instance es_MX denotes Spanish as it’s used in Mexico. A list of all locales supported by WordPress in https://make.wordpress.org/polyglots/teams/(s)
  • List contributor(s) per locale
  • Form can be submitted by the theme/plugin author but also contributors
  • Request can include many projects/localesLocale Locale = language version, often a combination of a language code and a region code, for instance es_MX denotes Spanish as it’s used in Mexico. A list of all locales supported by WordPress in https://make.wordpress.org/polyglots/teams//contributors

Validate the data

  • Does the contributor exist? (error)
  • Are the locales correct? (error)
  • Are the plugins/themes available?
  • Pre-requirements
    • Does the contributor have submitted at least 5? translations for the requested projects in the locale? (warning)
    • Check number of requested locales, maybe CLPTECross-locale Project Translation Editor A Cross-Locale Project Translation Editor is an account owned by a plugin or theme author (or the authoring organization), which uses professional translators to localize their product. The cross-locale project translation editor can import/validate strings on a specific project for more than one locale. This role has the same capabilities as a Project Translation Editor over multiple locales instead of one. Cross-Locale Project Translation Editors need to meet a set of criteria before being appointed by General Translation Editors.? (warning)
  • Is the contributor already an approved PTE? => Make they automatically a PTE for the new project?

Store the data in a custom post typeCustom Post Type WordPress can hold and display many different types of content. A single item of such a content is generally called a post, although post is also a specific post type. Custom Post Types gives your site the ability to have templated posts, to simplify the concept.

  • Benefit: Removes the requests from the index page of the polyglots p2

Output of requests

  • Table to list all requests, similar to teams page
  • Split requests into locales
  • Filterable by locale, date, …
  • Notifications to all GTEs
  • Link to the project on translate.w.org with active user filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output.
  • Tell the GTEGeneral Translation Editor A General Translation Editor (often referred to as GTE) is a person, who has global access to validate strings on all projects for a specific locale. whether the user is already a PTE
  • Approve button for GTE without visiting the wp-admin for all GTEs
  • Show some stats about the user
  • Send reminder about requests that are two weeks old, automatically approve a week after the reminder?
  • Post request on the team p2 or just summary/activity log
  • Show comments from team p2 at the global requests (depends on previous point, discussions need to be in English)
  • Show the “Resources for translation contributors” in the request (automated comment, see French, …)
  • Reject with feedback only with predefined reasons (grammar, punctuations, typos, style guide)
  • (Nice to have) Activity log for each new PTE (user x by user y/automatically) on date)

Open TracTrac Trac is the place where contributors create issues for bugs or feature requests much like GitHub.https://core.trac.wordpress.org/. tickets

Next steps

Please let us know what you think about this proposal. Do you have any suggestions or can you provide some mockups for how a list of requests or a detail page of a request can look like? What would be a good minimum viable productMinimum Viable Product "A minimum viable product (MVP) is a product with just enough features to satisfy early customers, and to provide feedback for future product development." - WikiPedia (MVPMinimum Viable Product "A minimum viable product (MVP) is a product with just enough features to satisfy early customers, and to provide feedback for future product development." - WikiPedia), what are the must haves for a first version?
Are you a developer and can help us with the implementation?

Whatever you have, please let us know in the comments. Thank you!

#announcement, #wceu

Contributor Day WCEU 2016 

The WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. Europe was a blast. After two days with great talks, chats and a remarkable party called WCEUball we attended to the Contributor DayContributor Day Contributor Days are standalone days, frequently held before or after WordCamps but they can also happen at any time. They are events where people get together to work on various areas of https://make.wordpress.org/ There are many teams that people can participate in, each with a different focus. https://2017.us.wordcamp.org/contributor-day/ https://make.wordpress.org/support/handbook/getting-started/getting-started-at-a-contributor-day/. on Sunday. We’d love to share our achievements with you and for the records.

In the Polyglots meetings of May 11th and May 18th, 2016 the preparations for the WCEU contributor day were on the table. We agreed that we’d identify a couple of goals for the Polyglots teamPolyglots Team Polyglots Team is a group of multilingual translators who work on translating plugins, themes, documentation, and front-facing marketing copy. https://make.wordpress.org/polyglots/teams/. at WordCamp Europe.

So far, 20% of the attendees have “signed up” to help the Polyglots team at WordCamp Europe 2016.
The contributor day organization confirmed these team leads for the Polyglots team:

Additionally, Bego (@pixolin), Francesca (@francina), Raffaella (@zetaraffix), Sergey (@sergey), Luis (@luisrull), Peter (@savione) were there to answer questions and helping to onboard on translations.

Preparation of our goals

To be able to prepare for the contributor day well, we’ll define a couple of goals for the day. They’ll be listed here and explained below.

  • Onboard new translators
  • Translate
  • Find (new) Translation EditorsTranslation Editor Translation editors can approve translations for projects. The GTE (General Translation Editor) and LM (Locale Manager) roles can add new users with the "Project Translation Editor" role that can approve translations for specific projects. There are two different Translation Editor roles: General Translation Editor and Project Translation Editor for localesLocale Locale = language version, often a combination of a language code and a region code, for instance es_MX denotes Spanish as it’s used in Mexico. A list of all locales supported by WordPress in https://make.wordpress.org/polyglots/teams/ that need them
  • FAQ page in the Polyglots handbook
  • Global translation day videos in the Polyglots handbook

Onboard new translators

Lead: Naoko Takano
Assistants: Bego Mario Garde, Denise VanDeCruze

Given the size of the WordCamp Europe 2016 contributor day, it’s highly likely that we’ll have new translators in our team. Our goal is to show them the basics, get them started as a translator, and make sure they leave the day proud of their achievements.

Conditionally the great venue for the Contributor day we had two rooms for the Polyglots team provided.
In one room we could onboard new translators with the help of live presentation via beamer. Bego did a great job and used our prepared slides from the Global WordPress Translation Day to demonstrate how translations and related tasks like approval process, Glossary, and Translation Style Guide are defined and where to find. Nao held a workshop after lunch and talked about translation tips and how to get involved.

While new polyglots got onboarded, the more experienced contributors worked on the translations in their own localeLocale Locale = language version, often a combination of a language code and a region code, for instance es_MX denotes Spanish as it’s used in Mexico. A list of all locales supported by WordPress in https://make.wordpress.org/polyglots/teams/.

Translations in numbers

Over 6495 stringsString A string is a translatable part of the software. A translation consists of a multitude of localized strings. in total were translated, 4587 of those got approved, 1720 had the status “waiting”. Only 17 Strings were rejected which is tremendous in terms of the quality.

We had 71 signups for the translations team on the Contributor Day and the counts above got done by 142 users in total because of many remote working polyglots during the day.

(Thanks for the stats, @ocean90 !)

It’s absolutely awesome! Thank you all very much for that! You rock the game!

Find (new) Translation Editors for locales that need them

We tried to get some more numbers. Following numbers about participants broken down by locale are doubtless incomplete, but they show what we achieved.

Counted participants via announcement on SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. to @CoachBirgit:

  • Finnish (fi): 5
  • Turkish (tr_TR): 1
  • German (de_DE): 7 (+ 4 new translators and 1 PTEProject Translation Editor A Project Translation Editor (often referred to as PTE) is a person, who has access to validate strings on a specific project (for example BuddyPress, WooCommerce or Twenty Fourteen) for one specific locale. A project translation editor can approve strings that are added by translation contributors. Per project translation, editors are appointed by a general translation editor after a request by the project author or by the contributors themselves. gained)
  • Japanese (ja): 1 (+ 2 new translators)
  • Italian (it_IT):5
  • Spanish (es-ES): 3
  • Hungarian (hu_HU): 1
  • Romanian (ro_RO): 1
  • Polish (pl_PL): 1
  • Malayalam (ml_IN): 1
  • Dutch (nl_NL): 2 (+1 new translator)
  • Danish (da_DK): 1
  • Russian (ru_RU): 1
  • Basque (eu): 1
  • Montenegrin (me_ME): 1
  • Dutch (Belgium) (nl_BE): 1
  • French (fr_FR): 1 new translator

We would like to complete this list. Please share your personal achievement at Contributor Day in the comment of this post. And one more request to the existing GTEs – please share your counts, how many new TE or PTE your locale gained on the Contributor day.

FAQ page in the Polyglots handbook

By virtue of the great preparatory work from @casiepa the FAQ draft is now as page transferred to the Polyglots handbooks. So there was no pressure to do this on the contributor day.

Global translation day videos in the Polyglots handbook

During the Global Translation Day, we recorded a fair number (24) videos about helping the polyglots. The more general videos can be included in the handbook, the specific ones on the rosettaRosetta The code name of the theme for the local WordPress sites (eg. bg.wordpress.org is a “Rosetta” site). All locale specific WordPress sites are referred to as “Rosetta sites.” The name was inspired from the ancient Rosetta Stone, which contained more or less the same text in three different languages. sites. We’ll need some people to coordinate and do this. Unfortunately the task leader @francina couldn’t work on this on the Contributor Day. So she created a task list to add the recorded material to the related handbook pages.

Open discussion / round table

The Polyglots mentor team had some topics on the list to discuss.

  1. The Persian situation
  2. Cross PTE trial

Results of this discussion

  1. The requests from Farhad Sakhaei to become one of the GTEGeneral Translation Editor A General Translation Editor (often referred to as GTE) is a person, who has global access to validate strings on all projects for a specific locale. for fa_IR are on the review list from Samuel Sidler. He will mediate between the counterparties. We would appreciate if every discussion on Slack about this topic now stops until the situation is not cleared via escalation process.
  2. We will do a trial for the Cross PTE request. Details will follow in a separate post in the near future when the benchmark data is figured out.

UXUX UX is an acronym for User Experience - the way the user uses the UI. Think ‘what they are doing’ and less about how they do it. Design for GlotPressGlotPress GlotPress is the translation management software that powers Translate.WordPress.org. More information is available at glotpress.org.

Some polyglots participated in the discussions for the UX Design for our beloved (sometimes annoying) translation platform and WordPress pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party GlotPress, which was lead by @akirk and @isaackeyet. The GlotPress team did a lot of brainstorming. The results will be posted as soon as possible on blog.glotpress.org.

Words of gratitude

Dear friends, you all did a great job. Please stay tuned with your contributions. An open sourceOpen Source Open Source denotes software for which the original source code is made freely available and may be redistributed and modified. Open Source **must be** delivered via a licensing model, see GPL. project like WordPress needs a lot of love from passionate people like you are.

I thank you so much, I can´t find the right words how impressed I am about our beloved community especially the polyglots!

And I want to thank every single organizer and volunteer that made WCEU an unforgettable event, so THANK YOU!

See you soon – at latest on WordCamp Europe 2017 in Paris!

#wceu, #wordcamp, #wordcamp-europe

Notes from the Polyglots meeting at WordCamp Europe

Hey everyone,

Here are my (slightly) structured notes from the Polyglots and GlotPressGlotPress GlotPress is the translation management software that powers Translate.WordPress.org. More information is available at glotpress.org. meeting at WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. Europe Contributor dayContributor Day Contributor Days are standalone days, frequently held before or after WordCamps but they can also happen at any time. They are events where people get together to work on various areas of https://make.wordpress.org/ There are many teams that people can participate in, each with a different focus. https://2017.us.wordcamp.org/contributor-day/ https://make.wordpress.org/support/handbook/getting-started/getting-started-at-a-contributor-day/. on September 29th.

If you were there, please feel free to add to the notes if you feel I missed something important.

Roadmap for GlotPress

  • GlotPress is not even at 1.0 – Doesn’t have caching, doesn’t have translation memory. Who’s gonna work on it?
  • Scaling
  • Data Schema, different one – Nacin and Nikolay are going to work on that
  • Next step: Include Themes and Plugins in GlotPress
  • Be prepared for hundreds of new validators
  • Find a way to fight spam and security issues

Promised: Marko will ship profiles for GlotPress before WCSF

Scaling the community

A lot of languages don’t have an active validatorValidator See translation editor. – we need to change that

Average number of stringsString A string is a translatable part of the software. A translation consists of a multitude of localized strings.:

  • Themes – 200-300 strings
  • Plugins – 150-200 strings
  • CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. – 4000 strings
  • BuddyPress – 1400 strings

Next step for Polyglots and i18nInternationalization Internationalization (sometimes shortened to I18N , meaning “I - eighteen letters -N”) is the process of planning and implementing products and services so that they can easily be adapted to specific local languages and cultures, a process called localization. This is the process of making software translatable. Information about Internationalization for developers can be found in the Developer’s handbooks.: Plugins & Themes

There needs to be a way for readmes to be translated.

There’s a lot of potential to get WordPress to 90 different languages.

We need to find developers to help with translations who are not heavily involved with core.

How do we put all the plugins on GlotPress (translate.wordpress.orgtranslate.wordpress.org The platform for contributing to the translation of WordPress core, themes and plugins.)?

30 000 plugins that need to be translated

RosettaRosetta The code name of the theme for the local WordPress sites (eg. bg.wordpress.org is a “Rosetta” site). All locale specific WordPress sites are referred to as “Rosetta sites.” The name was inspired from the ancient Rosetta Stone, which contained more or less the same text in three different languages. sites will have their own theme and pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party directories with all translated plugins and themes

need a search that will work across languages. Search for plugins and themes should target both the translated language and English.

We start with 25 plugins

We need a mechanism to blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. spammers better. For forums, for local sites.

Global Communities

  • agreed that each global communit should have their own P2p2 "p2" is the name of the theme that blogs at make.wordpress.org use (and o2 is the accompanying plugin). When asked to post something "on the p2" by a member of the Polyglots team, that usually means you're asked to post on the team blog https://make.wordpress.org/polyglots/.
  • there will be functionality to approve comments as approve/delete/move to forum
  • @siobhan to get in touch with Jetpack ppl about subscribing to tag
  • global.wordpress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/
  • should have lists of validators. Lists of validators should also be on local sites.

Promised: Remkus is doing the forum theme for BB Press for the local sites/forums 🙂

We need to make it easier for validators to work

Redesigning GlotPress, improving the tools

Security concerns with strings

Possible decision: Two tears of validators. Trusted validators for the core project and some of the other main projects.

Other validators for all of the plugins etc.

Polyglots teamPolyglots Team Polyglots Team is a group of multilingual translators who work on translating plugins, themes, documentation, and front-facing marketing copy. https://make.wordpress.org/polyglots/teams/. leads

The current goal is to split the role of Polyglots lead in two:

Technical role/team
Community role/team – pushing validators, pushing people, finding validators, pinging validators, giving validator rights, helping validators and translators get started. The goal is to have a team of community ppl from at least three different parts of the world.
Sam will document the specific tasks of the role of Community Lead for Polyglots and also the technical lead

Selection process

  • Select people from the existing validators and community
  • Select people who we know are responsible and will get the job done
  • Give them a long term role and back them up with others

#glotpress, #polyglots, #polyglots-meeting, #wceu

Heya Will there be a recap posted of…

Heya, Will there be a recap posted of the Polyglot meeting (i.e., plans, things to come, timeline) during Contributor DayContributor Day Contributor Days are standalone days, frequently held before or after WordCamps but they can also happen at any time. They are events where people get together to work on various areas of https://make.wordpress.org/ There are many teams that people can participate in, each with a different focus. https://2017.us.wordcamp.org/contributor-day/ https://make.wordpress.org/support/handbook/getting-started/getting-started-at-a-contributor-day/. at WCEU? thnx!

#wceu