Idées fausses des programmeurs sur les noms

Il y a deux semaines, une traduction de «Les idées fausses des programmeurs sur le temps", qui s'appuie dans sa structure et son style sur ce texte classique de Patrick Mackenzie, publié il y a deux ans. Étant donné que la note sur l'époque a été extrêmement favorablement accueillie par le public, il est évidemment logique de traduire l'article original sur les noms et prénoms.

John Graham-Cumming aujourd'hui plaint sur son blog que le système informatique avec lequel il travaillait n'acceptait pas son nom de famille en raison de caractères invalides. Bien sûr, il n’y a pas de caractères invalides, car toute manière dont une personne se représente est – par définition – un identifiant approprié. John a exprimé sa grande frustration face à la situation, et il en a parfaitement le droit, car le nom est l'essence de notre individualité, presque par définition.

J'ai vécu au Japon pendant plusieurs années, programmant professionnellement, et j'ai cassé de nombreux systèmes rien qu'en m'appelant. (La plupart des gens m'appellent Patrick McKenzie, mais j'accepte n'importe lequel des six noms « complets » comme étant correct, bien que de nombreux systèmes informatiques n'en acceptent aucun.) De même, j'ai travaillé pour de grandes entreprises qui font des affaires à l'échelle mondiale et, en théorie, j'ai conçu leurs systèmes pour tous les noms possibles. Donc, Je n'ai pas vu un seul système informatique qui gère correctement les noms, et je doute qu'un tel système existe même quelque part..

Donc, pour le bien de tous, j'ai compilé une liste d'hypothèses que votre système est susceptible de faire concernant les noms des personnes. Toutes ces hypothèses sont fausses. Essayez au moins de réduire la liste la prochaine fois que vous concevrez un système.

1. Chaque personne a un nom complet canonique.
2. Chaque personne utilise un nom complet.
3. À un moment donné, chaque personne porte un nom complet canonique.
4. A un instant donné, chaque personne possède un nom complet qu'elle utilise.
5. Chaque personne a exactement N noms, quelle que soit la valeur de N.
6. Les noms tiennent dans un certain nombre de caractères.
7. Les noms ne changent pas.
8. Les noms changent, mais seulement dans certains cas limités.
9. Les noms sont écrits en ASCII.
10. Les noms sont écrits dans un seul encodage.
11. Tous les noms correspondent à des caractères Unicode.
12. Les noms sont sensibles à la casse.
13. Les noms ne sont pas sensibles à la casse.
14. Parfois, les noms contiennent des préfixes ou des suffixes, mais vous pouvez les ignorer en toute sécurité.
15. Les noms ne contiennent pas de chiffres.
16. Les noms ne peuvent pas être écrits en majuscules entières.
17. Les noms ne peuvent pas être entièrement écrits en lettres minuscules.
18. Il y a de l'ordre dans les noms. La sélection de l'un des schémas de classement des enregistrements entraînera automatiquement un ordre cohérent entre tous les systèmes s'ils utilisent tous le même schéma de classement.
19. Les noms et prénoms sont nécessairement différents.
20. Les gens portent un nom de famille ou quelque chose de similaire qui est commun à leurs proches.
21. Le nom d'une personne est unique.
22. Nom de la personne presque unique.
23. D'accord, d'accord, mais les noms sont suffisamment rares pour qu'il n'y ait pas un million de personnes portant le même prénom et le même nom.
24. Mon système ne traitera jamais les noms en provenance de Chine.
25. Ou le Japon.
26. Ou la Corée.
27. Ou encore l'Irlande, la Grande-Bretagne, les États-Unis, l'Espagne, le Mexique, le Brésil, le Pérou, la Suède, le Botswana, l'Afrique du Sud, Trinidad, Haïti, la France et l'Empire Klingon - qui utilisent tous des schémas de dénomination « bizarres ».
28. L'Empire Klingon était une blague, n'est-ce pas ?
29. Maudit relativisme culturel ! Les hommes dans ma société, ont au moins la même idée d'une norme généralement acceptée pour les noms.
30. Il existe un algorithme qui convertit les noms dans un sens ou dans l’autre sans perte. (Oui, oui, vous pouvez le faire, si la sortie de l'algorithme est la même que l'entrée, prenez-vous une médaille).
31. Je peux supposer avec certitude que ce dictionnaire de mots obscènes ne contient pas de noms de famille.
32. Les gens reçoivent un nom à la naissance.
33. OK, peut-être pas à la naissance, mais peu de temps après.
34. D'accord, d'accord, d'ici environ un an.
35. Cinq ans ?
36. Vous plaisantez, n'est-ce pas ?
37. Deux systèmes différents qui répertorient le nom de la même personne utiliseront le même nom pour cette personne.
38. Si deux opérateurs de saisie de données différents reçoivent le nom d'une personne, ils saisiront certainement le même jeu de caractères si le système est bien conçu.
39. Les personnes dont les noms brisent mon système sont d'étranges étrangers. Ils devraient avoir des noms normaux et acceptables, comme 田中太郎.
40. Les gens ont des noms.

La liste n'est nullement exhaustive. Si vous voulez des exemples de vrais noms qui réfutent l’un de ces points, je serai heureux de vous les fournir. N'hésitez pas à ajouter d'autres puces pour cette liste d'idées fausses dans les commentaires et à envoyer aux gens un lien vers cette liste la prochaine fois qu'ils auront une brillante idée de créer une base de données avec des colonnes prénom et nom.

Source: habr.com

Ajouter un commentaire