Regalo de fin de año: Encuentro 0.9

Y digo que es un regalo para las fiestas porque esta versión trae algunas cosas interesantes.

Por un lado, ¡hay un nuevo backend! Cuando actualicen los contenidos van a ver que pueden descargar programas del Banco Audiovisual de Contenidos Universales Argentino (gracias Gonzalo!),

Por otro lado, rediseñamos la GUI en el último sprint. Ahora tenemos un sector a la derecha con la imagen del programa (gracias Diego!) y la descripción (más un botón de acción). Y también hay una cola de descargas, donde se muestra lo que se está descargando, lo que ya terminó (y cómo), y lo que está encolado para después.

Los programas terminados ahora se ponen de otro color, y son fáciles de filtrar porque hay un checkbox que hace que se muestren sólo esos.

También hay un mejor manejo de las cancelaciones, más logging, y otras pequeñas mejoras y correcciones.

Como siempre, las formas de instalarlo, toda la info, y etc, en la página del proyecto.

¡¡Feliz fin de año!!

Comentarios Imprimir

Cortando mal

Una de las cosas que repito mucho en mi charla de Entendiendo Unicode es que "siempre, siempre, siempre, hay que procesar los textos estando en Unicode, no en bytes, porque se pueden obtener resultados inesperados".

Acabo de encontrar un caso de estos. Lo interesante es que es un caso que no había visto nunca.

Estoy agregando a mi programa Encuentro un nuevo backend: BACUA. Bueno, ya casi está (gracias a la ayuda de Gonzalo Martinez), el tema es que había una página que tenía problemas de Unicode. Me puse a investigar, y resulta que el problema es que se estaba decodificando con el encoding incorrecto.

Se intentaba decodificar con UTF-8, pero como fallaba, se decodificaba con otra cosa, y algunas palabras quedaban mal.

Empecé a ver en detalle, y resulta que la página está toda bien codificada en UTF-8, excepto una parte. La linea "molesta" es esta:

<h5 class="sinopsis_cat">Los Ludomatic, banda de m\xc3\xbasica infantil exitosa en los a\xc3\xb1os 80, se re\xc3\xbane luego de veinte a\xc3\xb1os para ver que sus vidas no son como lo hab\xc3\xadan imaginado tiempo atr\xc3\xa1s. Toni, Becca, Marco, Lupe y Ren\xc3 ...</h5><br/>\r\n'

Como pueden ver, está toda casi bien, en utf8... por ejemplo, dice "Los Ludomatic, banda de música", y ahí vemos que la "ú" está bien codificada en utf8 como 0xC3 0xBA. El problema está al final, en el último nombre. Seguramente debía decir "Toni, Becca, Marco, Lupe y René", pero está cortado (con el agregado de los tres puntos, para indicar continuación).

Y está cortado mal.

Obviamente, si los que generaron la página hubiesen procesado el texto como Unicode, se hubiese cortado antes de la é o después de la é. Pero no, lo manejaron como bytes, donde la é codificada como utf8 es 0xC3 0xA9. Y por mala suerte el corte cayó en el medio de esos dos bytes. Y quedó el 0xC3 suelto, que no es utf8 válido.

Y bueno. Eso. Recuerden: Siempre hay que procesar los textos como Unicode.

Comentarios Imprimir

Extrapolando la realidad

Con el tiempo me fui dando cuenta que disfruto muchísimo las historias de ciencia ficción donde el autor agarra algo ya de por sí interesante de la realidad, lo extrapola para otro lado, y le agrega una historia copada alrededor.

Esto hace que si yo ya conocía las bases reales de la historia, disfrute mucho la extrapolación y las posibilidades que se desprenden. Y si no las conocía, tuve contacto con las mismas y es una excusa para aprender.

Por ejemplo, tomemos algo interesante de la realidad sobre lo cual estaba leyendo el otro día: un teorema de incompletitud de Kurt Gödel que básicamente dice que en cualquier teoría siempre hay enunciados que no se pueden probar como verdaderos o falsos a partir de los axiomas de la misma teoría. O sea, no se puede demostrar toda la teoría, completamente, desde adentro.

Una extrapolación de esto (totalmente fuera de lo que dijo Gödel, ya entrando en terrenos propios de la ciencia ficción) es que viviendo dentro de un Universo no se puede llegar a conocer toda la física que explique el funcionamiento de ese Universo. Por ejemplo, los fantasmas, el alma, o lo que pasa adentro de un agujero negro: existen y funcionan con reglas físicas del Universo, pero estas reglas no son deducibles/encontrables a menos que al Universo se lo estudie de afuera.

A eso le agregamos toda una historia, posiblemente que involucre comunicación entre científicos entre dos Universos distintos (mediante mediums o interlocutores paranormales!), lo escribimos bonito e interesante, y tenemos un libro.

Y la parte complicada es esta última.

Ideas de historias copadas tiene cualquiera. Armar un buen libro, interesante y lindo de leer, es otro tema.

Comentarios Imprimir

Charlas repetidas

Les comentaba en un post anterior que había vuelto a dar "Entendiendo Unicode" en las PyCones de Argentina y Venezuela. Charlando con alguien más de este tema, le decía que seguramente era la charla que más veces dí.

Bueno, no, este es el top 5 de todas las charlas que dí:

13  Introducción a Python
10  Entendiendo Unicode
 8  Python más rápido que C
 4  Python 3000
 3  Comunidad, anarquía y subversión

Se acumulan las repeticiones.

Y es algo natural, teniendo en cuenta que por año preparo casi siempre una charla nueva pero presento entre media docena y una docena de veces...

Comentarios Imprimir