Sectors and industries: one- or two-word labels instead of the full classification names #1248

Open
opened 2026-11-13 10:36:49 +00:00 by tiagoagueda · 0 comments
Owner

What happens

Sector and industry labels are shown as the classification writes them. The NACE section for information technology reads "Telecommunication, computer programming, consulting, computing infrastructure and other information service activities", and many divisions are nearly as long ("Computer programming, consultancy and related activities"). In a table cell, a badge, a filter or a phone-width card, one label takes the space of a sentence and the interface is bloated by it. The labels are correct; the problem is that the full name is the only one there is.

Related: #1203 already asks for short labels, but for the 22 sections only, inside the 0.7.0 redesign, and without a rule for how short. This issue sets the rule, covers the industries (divisions) too, and is meant for 0.6.0; #1203 can then be closed as covered or kept for the redesigned badges only.

Wanted

  • A short label for every section (22) and every division (87), written for people: one word where there is one, at the very most two. For the section above: Information, or IT and telecoms at the longest, never the full name. Examples to settle in review: Manufacturing, Construction, Retail, Transport, Finance, Health, Education, Energy, Agriculture, Hospitality, Public sector, Arts.
  • Every place that shows a sector or an industry shows the short label: Companies list and cards, the company page, the filters, badges, the board and documents' placeholders. The full name stays available as the tooltip and the accessible description, and is shown in full on the Edit page where the person picks it, so the classification is never hidden.
  • A person's own industries (their own words, the seed is never a closed list) are shown as typed; only the seeded NACE names have short forms. A seeded name the person has renamed keeps their name.
  • Search and the filters match the short label, the full name and the person's own words, so typing "software" or "programming" finds the same companies.

Decisions to take in the issue

  1. Where the short labels live. The full names are Eurostat reference data, in 24 languages, not gettext (data/nace-2.1.json, jobs/industries.py). The short labels are Postulo's own wording, so they are gettext strings (109 of them) and go through Weblate, in every selected language, with the release gate as for any string; where a language has none, the English short label stands, never a machine guess. The alternative, a second block in the data file, would make Postulo author a classification in languages nobody here reviews.
  2. Length rule. A tested limit (for example at most two words and 20 characters in English; checked in the other languages by the display test, not by the translator's judgement) so a label cannot creep back to a phrase.
  3. Ambiguity. Two divisions may get the same short word ("Services"); the list must still tell them apart, so a clash falls back to the two-word form, and a test fails on a duplicate inside one section.

Tests

Every section and division has a label inside the length rule; no two inside one list are equal; the list, card and filter show the short label with the full name in the tooltip and aria-description; search finds a company by either; a person's custom industry is unchanged; 320 px shows no wrapped badge for the longest short label in German, Finnish and Greek.

Strings go through Weblate only.

## What happens Sector and industry labels are shown as the classification writes them. The NACE section for information technology reads **"Telecommunication, computer programming, consulting, computing infrastructure and other information service activities"**, and many divisions are nearly as long ("Computer programming, consultancy and related activities"). In a table cell, a badge, a filter or a phone-width card, one label takes the space of a sentence and the interface is bloated by it. The labels are correct; the problem is that the full name is the only one there is. Related: #1203 already asks for short labels, but for the 22 sections only, inside the 0.7.0 redesign, and without a rule for how short. This issue sets the rule, covers the industries (divisions) too, and is meant for 0.6.0; #1203 can then be closed as covered or kept for the redesigned badges only. ## Wanted - A **short label for every section (22) and every division (87)**, written for people: **one word where there is one, at the very most two**. For the section above: *Information*, or *IT and telecoms* at the longest, never the full name. Examples to settle in review: Manufacturing, Construction, Retail, Transport, Finance, Health, Education, Energy, Agriculture, Hospitality, Public sector, Arts. - **Every place that shows a sector or an industry shows the short label**: Companies list and cards, the company page, the filters, badges, the board and documents' placeholders. The full name stays available as the tooltip and the accessible description, and is shown in full on the Edit page where the person picks it, so the classification is never hidden. - **A person's own industries** (their own words, the seed is never a closed list) are shown as typed; only the seeded NACE names have short forms. A seeded name the person has renamed keeps their name. - **Search and the filters** match the short label, the full name and the person's own words, so typing "software" or "programming" finds the same companies. ## Decisions to take in the issue 1. **Where the short labels live.** The full names are Eurostat reference data, in 24 languages, not gettext (`data/nace-2.1.json`, `jobs/industries.py`). The short labels are Postulo's own wording, so they are gettext strings (109 of them) and go through Weblate, in every selected language, with the release gate as for any string; where a language has none, the English short label stands, never a machine guess. The alternative, a second block in the data file, would make Postulo author a classification in languages nobody here reviews. 2. **Length rule.** A tested limit (for example at most two words and 20 characters in English; checked in the other languages by the display test, not by the translator's judgement) so a label cannot creep back to a phrase. 3. **Ambiguity.** Two divisions may get the same short word ("Services"); the list must still tell them apart, so a clash falls back to the two-word form, and a test fails on a duplicate inside one section. ## Tests Every section and division has a label inside the length rule; no two inside one list are equal; the list, card and filter show the short label with the full name in the tooltip and `aria-description`; search finds a company by either; a person's custom industry is unchanged; 320 px shows no wrapped badge for the longest short label in German, Finnish and Greek. Strings go through Weblate only.
tiagoagueda added this to the 0.6.0 milestone 2026-11-13 10:36:49 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Postulo/postulo#1248
No description provided.