Codificación de caracteres para documentos web.
July 25, 2008 | In: articulo
Voy a hacer una pequeña introdución con una anecdota.
Suelo ír a una libreria a comprar libros; lo curioso de ésta librería es que en la puerta, con un rotulo en rojo, pone “libros en Español“.
Un día fui a comprar un libro, más que nada porque el autor estaba allí. Llego a la librería, entro y hablo con el autor del libro y me dice que el libro está escrito en Francés; porque el cree que ese idioma es mucho más romántico y va más acorde con los relatos que el narra en el libro.
Llego a casa; contento porque traigo el libro firmado y me ha salido bien de precio. Lo abro y cual es mi sorpresa; ¡el libro está escrito en Ingles! WTF?
Pues bien; ahora vamos a hacer una pequeña conversión de identidates; para poder extrapolar el caso a el tema de codificación de carácteres:
Librería = Servidor web(IIS, Apache, …)
Autor del libro = el programador; creador del documento web
El libro = documento web
yo, lector = navegador web(firefox, Internet Explorer)
Lo primero; yo(como el navegador web) me acuerdo de la madre que pario al de la librería, y al autor; porque me están timando. Pero bueno ya tengo el libro y tendré que leerlo, que para eso lo he comprado, pero antes tendré que saber como tengo que leer el libro.
Hay una diferencia entre yo y el navegador web; el navegador web sabe muchos idiomas, pero no sabe identificarlos; esto es que hay que decirle en que “idioma” tiene que leer el libro.
Así que el navegador tiene una regla(porque se lo marca los estándares) y es que va a hacer caso a la librería(servidor) y va a intentar leer mi libro en Español, por lo que comienza a balbucear tonterías sin sentido(esto es lo que pasa cuando vemos webs con simbolos raros, sin acentos, …)
Pero el “autor” (programador) sabe un truquito para que se salte a la librería y le haga caso a él, y le dice algo como:
“el cabecera de este documento pone que está en francés, así que léelo en francés”
Que más o menos fue lo que me dijo cuando compre el libro, así en voz muy bajita para que no me escuchase el dueño de la librería.
Pero claro; el navegador, con su inocencia que le caracteriza, le hace caso y comienza a leer el libro en francés, y la misma canción; a balbucear tonterías sin sentido.
Por lo que yo he identificado a los culpables para que estas cosas pasen;
- La maldita regla estándar que dice que la orden del servidor(librería) prevalece sobre la que pone el programador(el autor del libro)
- La ineptitud del programador(autor del libro) que no sabe ni en que codificación(idioma) a escrito su propio libro(documento web)
- Después de años de adelantos en la informática; aún hoy por hoy es casi imposible para los programas(navegador web) saber que codificación(lenguaje) tienen los documentos(libros). Se ha “avanzado” mucho con el boom de UTF8, pero aún eso no es suficiente, porque muchos programas no sabes que es ese Boom
Por lo que señores programadores; poneros de acuerdo con lo que dice el servidor y poner en el Doctype la verdadera codificación de carácteres y dejen de tocar las narices.
update: Recomiendo esta lectura:
ASCII, Unicode, UTF-8 y la Iñtërnâçiônàlizæçiøn – parte I
2 Responses to Codificación de caracteres para documentos web.
Luis Fernando Muñoz
August 14th, 2008 at 5:17 pm
He leído tu artículo y al que has hecho referencia y la verdad me han parecido una excelente ayuda, más aún cuando hoy en día existe una gran confusión con respecto a los sistemas de codificación….Felicitaciones por el blog, muy buen contenido
Rafa
August 27th, 2008 at 6:59 am
Me parece una cuestión básica e importantísima que yo mismo ya he sufrido en mi persona en varias ocasiones. Gran enlace.
Saludos