Concepcions errònies dels programadors sobre els noms

Fa dues setmanes, una traducció de “Concepcions errònies dels programadors sobre el temps", que es basa en estructura i estil en aquest text clàssic de Patrick Mackenzie, publicat fa dos anys. Atès que la nota sobre l'època va ser rebuda molt favorablement per l'audiència, òbviament té sentit traduir l'article original sobre noms i cognoms.

John Graham-Cumming avui es va queixar al seu bloc que el sistema informàtic amb el qual treballava no acceptava el seu cognom a causa de caràcters no vàlids. Per descomptat, no hi ha caràcters no vàlids, perquè qualsevol manera en què una persona es representi és, per definició, un identificador adequat. John va expressar una gran frustració per la situació, i té tot el dret, perquè el nom és l'essència de la nostra individualitat, gairebé per definició.

Vaig viure al Japó durant diversos anys, programant professionalment i vaig trencar molts sistemes només amb el fet de dir-me. (La majoria de la gent em diu Patrick McKenzie, però accepto qualsevol dels sis noms "complets" com a correctes, tot i que molts sistemes informàtics no accepten cap d'ells). Així mateix, he treballat per a Grans Corporacions que fan negoci a escala global i, en teoria, han dissenyat els seus sistemes per a tots els noms possibles. Tan, No he vist cap sistema informàtic que gestioni els noms correctament, i dubto que aquest sistema existeixi enlloc..

Per tant, pel bé de tots, he compilat una llista de suposicions que probablement farà el vostre sistema sobre els noms de les persones. Totes aquestes suposicions són errònies. Intenteu reduir almenys la llista la propera vegada que dissenyeu un sistema.

1. Cada persona té un nom complet canònic.
2. Cada persona té un nom complet que fa servir.
3. En un moment determinat, cada persona té un nom complet canònic.
4. En un moment donat, cada persona té un nom complet que fa servir.
5. Cada persona té exactament N noms, independentment del valor de N.
6. Els noms encaixen en un nombre determinat de caràcters.
7. Els noms no canvien.
8. Els noms canvien, però només en alguns casos limitats.
9. Els noms s'escriuen en ASCII.
10. Els noms s'escriuen en una codificació.
11. Tots els noms corresponen a caràcters Unicode.
12. Els noms distingeixen entre majúscules i minúscules.
13. Els noms no distingeixen entre majúscules i minúscules.
14. De vegades hi ha prefixos o sufixos en els noms, però pots ignorar-los amb seguretat.
15. Els noms no contenen números.
16. Els noms no es poden escriure en majúscules TOTES.
17. Els noms no es poden escriure completament en minúscules.
18. Hi ha ordre en els noms. La selecció d'un dels esquemes d'ordenació de registres donarà lloc automàticament a un ordre coherent entre tots els sistemes si tots utilitzen el mateix esquema d'ordenació.
19. Els noms i cognoms són necessàriament diferents.
20. Les persones tenen un cognom o quelcom semblant que és comú als familiars.
21. El nom d'una persona és únic.
22. Nom de la persona gairebé únic.
23. D'acord, d'acord, però els noms són prou rars perquè no hi hagi un milió de persones amb el mateix nom i cognom.
24. El meu sistema mai tractarà amb noms de la Xina.
25. O Japó.
26. O Corea.
27. O Irlanda, Gran Bretanya, EUA, Espanya, Mèxic, Brasil, Perú, Suècia, Botswana, Sud-àfrica, Trinitat, Haití, França, l'Imperi Klingon, tots els quals utilitzen esquemes de noms "estranys".
28. L'Imperi Klingon era una broma, oi?
29. Maleït relativisme cultural! Homes dins la meva societat, almenys tenen la mateixa idea d'un estàndard generalment acceptat per als noms.
30. Hi ha un algorisme que converteix els noms d'una manera o d'una altra sense perdre'ls. (Sí, sí, podeu fer això, si la sortida de l'algoritme és la mateixa que l'entrada, feu-vos una medalla).
31. Puc suposar amb seguretat que aquest diccionari de paraules obscenes no conté cognoms.
32. Les persones reben noms en néixer.
33. D'acord, potser no en néixer, però poc després.
34. D'acord, d'acord, d'aquí a un any més o menys.
35. Cinc anys?
36. Estàs fent broma, oi?
37. Dos sistemes diferents que enumeren el nom d'una mateixa persona utilitzaran el mateix nom per a aquesta persona.
38. Dos operadors d'entrada de dades diferents, si se'ls dóna el nom d'una persona, segurament introduiran el mateix conjunt de caràcters si el sistema està ben dissenyat.
39. Les persones els noms de les quals trenquen el meu sistema són estranys desconeguts. Haurien de tenir noms normals i acceptables, com ara 田中太郎.
40. Les persones tenen noms.

La llista no és en absolut exhaustiva. Si voleu exemples de noms reals que refuten algun d'aquests punts, estaré encantat de proporcionar-los. No dubteu a afegir més punts per a aquesta llista d'idees errònies als comentaris i enviar a la gent un enllaç a aquesta llista la propera vegada que tinguin una idea genial per fer una base de dades amb columnes first_name i last_name.

Font: www.habr.com

Afegeix comentari