Co-writing the i18n Guidelines for p5.js Friendly Errors (Part I)

alm chung
5 min readNov 24, 2021
Examples of different translations by writers and machine translation tools are shown above. For the FES welcome message, six different translations were generated, and a discussion on what is ‘friendly’ in the context of Korean culture ensued.

In literature, as Eco put, “translation is always a shift, not between two languages but between two cultures.” What about the internalization of software?

As a part of Google Season of Docs, I am co-developing the internationalization (i18n) guidelines for error messages. The guidelines are for the p5.js library from Processing Foundation and its future contributors. Although we call this document “guidelines” for convenience, it is rather a collection of essays that discuss issues arising from the internationalization process from the perspective of the destination culture (as opposed to the source culture where technology disperse out).

The co-writing project has grown out of the co-translation of the p5.js friendly error messages, collaborating with artists in Korea. I thank my co-writers 전유진(Youjin Jeon) and 염인화(Inhwa Yeom), as well as our editor 이지현(Jihyun Lee) for their time and valuable conversations.

Rationale

For an open-source project aspiring to reach international learners, it makes sense to try to reach people who are unable to navigate the English-dominant open-source platforms. For non-English speaking communities, choosing the instruction language for technology can decide the community’s competitive edge in the global market, which conflicts with a critical issue of technocultural sovereignty. On top of that, selecting a language for technology can further create additional barriers and divisions within the community.

Through this co-writing project, I wanted to hear from a non-English speaking community (in this case, artists based in Seoul). We had fruitful conversations on the internationalization of the FES and related technocultural issues during the process, which I want to share with the p5js community.

Goals

  1. To generate the first version of the p5.js FES translation in Korean.
  2. To develop the first version of internationalization and writing guidelines for friendly errors.
  3. To collect feedback on the p5.js FES (and its documentation) from Korean communities.
  4. To archive current issues on technology and language in Korean communities.
  5. To set a precedent on translating the p5js FES collaborating with a local community.

Participants

Co-writers

Editor

  • 이지현 (Jihyun Lee): Korean publishing editor based in South Korea
  • (Looking for an English editor!)

Process

This section lists the entire process of <i18n and Writing Guidelines for Friendly Errors>. We are currently working on Step 3 (Nov 21, 2021). We expect to finish writing the guidelines around the end of 2021 and conduct interviews in early 2022.

  1. Translate FES
    — The participants independently translated FES messages (~40 messages / 70 lines) from English to Korean.
    — The organizer gathered machine translations (Google Translate, Naver Papago) of FES messages.
  2. Edit the translated text
    — 2-A. The organizer selected five messages from the gathered translated text.
    — 2-B. The participants edited/commented on the selected translated messages from step 2-A.
  3. Generate translation guidelines (we are here)
    — The participants will collectively write the internationalization and writing guidelines for FES based on the activity from step 2-B.
  4. Conduct 1:1 Interviews on internationalization
    — The organizer will interview each participant to share their experience as a tech mediator, centering on language-technology relations and translation. The interviews will be archived as a part of the project. (3 interviews including the Korean editor interview)
    — The organizer will interview past and current p5js translation and internationalization contributors.
  5. Publish FES Korean translation on the p5.js repo
  6. Publish i18n and Writing Guidelines for Friendly Errors on the p5.js repo

Preliminary Results

After assembling the team, Inhwa and Alm translated the existing English error messages of FES. In addition to our drafts, we added machine translations from popular translation tools used in Korea: Google Translate and Naver Papago for reference. In total, we collected four different translations of the FES error messages in Korean.

Youjin joined Inhwa and Alm to generate comments on the five selected translated messages in the next phase. We anonymized who translated the messages in this phase. Youjin additionally produced their own translated messages as an editing exercise.

Examples of different translations translated by participants and translation tools.
In this set, the writers had a conversation about how to translate the term “parameter” and were torn between two methods, phonetic translation (파라미터) and Japan-originated loan translation (매개변수媒介變數).

In addition, we took a look at an array of existing UX guidelines for writing error messages and responded to these. This asynchronous crit session created a good starting ground for follow-up conversations on technocultural issues on technical translation. Co-writers had a 40–50 minute conversation transcribed for the next phase of the project.

We collected all notes and scripts generated from the last phase to identify 5–6 core issue topics for creating the internationalization and writing guideline. Writers each identified core issue topics and ranked their preference on writing the issue. We assigned two topics to each writer. Below is the list of these topics:

  • How to create a voice for FES?
    — Who is our audience? How should we think of skill and ability if we design for accessibility?
    — What is ‘friendly’ for Korean people? Scale and scope of friendliness within the context of Korean culture
    — How to create a conversational agent persona based on the community Code of Conduct? (FES as a member of the p5.js community)
  • What are the challenges for translating from English to Korean?
    — Challenges of translating domain-specific, technical terms
    — Resources for Korean translation (writing effectively and clearly in Korean)
  • Who/what are we connecting through translation?
    — Machine translation for technical translation and other platforms for translation

Coming Up Next

Currently, we are looking for an English editor for Part II, and we would like to hear from anyone who may be interested in editing (and contributing your own) English text.

We will share the resulting final document and interviews in Part II of the write-up. Stay tuned!

(This project was possible through support from Processing Foundation and Google Season of Docs.)

--

--

alm chung
alm chung

No responses yet