Patch #44112
openImprove initials avatar to use the first two letters of the firstname for Korean locale
Description
Currently, the initials avatar extracts characters based on the `USER_FORMATS` configuration. However, there is a need to apply the initials avatar generation differently depending on the cultural context.
In Korea, a few surnames (like Kim, Lee, Park) are extremely common, making them less useful for distinguishing individuals. Instead, first names are much more diverse and are primarily used to identify
people in daily life. Furthermore, most Korean first names consist of two characters.
Therefore, for Korean users, displaying the "first two letters of the firstname" rather than "one letter of the surname + one letter of the firstname" makes it significantly easier to identify individuals visually.
This patch updates the `User#initials` method to use the first two characters of the firstname when the Redmine environment language is set to Korean (`ko`).
I would appreciate it if you could review and apply this patch.
Files
Updated by Marius BĂLTEANU about 21 hours ago
- Assignee set to Go MAEDA
Go MAEDA, can you review this change?
Updated by Go MAEDA about 19 hours ago
- Assignee deleted (
Go MAEDA)
This patch proposes using the first two characters of firstname as the initials avatar when I18n.locale is set to :ko (Korean). However, I think this approach may cause problems in international organizations because the displayed initials would depend on the language setting of the person viewing Redmine rather than on the user being displayed.
There are at least two issues with this approach.
First, the initials of non-Korean users may become less intuitive. For example, a user named "John Smith" would be displayed as "JO" in a Korean-language environment. I think the current "JS" is easier to recognize because it reflects both the first and last name. In addition, if initials are derived from the first two characters of the first name, both "John Smith" and "Joe Bloggs" would be displayed as "JO", reducing their usefulness for identification.
Second, the same user could be displayed with different initials depending on the viewer's language setting. For example, 김연아 (Kim Yeon-a; internationally known as Kim Yuna, a figure skater) would be displayed as "연아" (Yeon-a) in a Korean-language environment, while users with other language settings would see "김연" (Kim + Yeon), which is composed of the first character of the last name and the first character of the first name. It may be confusing if an initials avatar intended to help identify a user changes depending on who is viewing Redmine.
That said, I agree with Ilkwon Jung's observation that a small number of family names are shared by a large portion of the population in Korea. The same is true in countries such as China and Vietnam. In those cases, displaying the first two characters of the given name can often be much more effective for identifying people than the current approach of combining one character from the family name and one from the given name.
If there is a need to support displaying the first two characters of the given name, I think it would be better to provide this as a global configuration option rather than changing the behavior based on the current viewer's language setting. This would avoid one of the issues mentioned above: the same user being displayed with different initials depending on who is viewing Redmine.
For example, the following global options could be provided:
- Display the first character of the first name and the first character of the last name (current behavior)
- Display the first two characters of the first name
- Display the first two characters of the last name (which would likely be preferred by many Japanese users)