Sólo un idiota puede ser totalmente feliz.
Mario Vargas Llosa
Problemas con las comillas usando Python y simplejson
Mi pequeño proyecto en Django y Facebook necesitaba procesar una cadena de texto en JSON. El objetivo es permitir a los usuarios copiar y pegar varios parámetros de configuración como una sencilla operación y evitar completar múltiples campos en un formulario. Hora de solicitar la ayuda de simplejson.
Empezamos con una prueba en la consola de Python, o mejor aún, iPython. Primero importamos el módulo:
import simplejson
Y ahora a definir una variable para el texto en JSON y pasarla a simplejson:
band = "{'name': 'Mando Diao', 'genre': 'rock and roll', 'bid': 19383}"
json = simplejson.loads(band)
El resultado es una excepción ValueError. Intentaré cambiando el orden de las comillas, simples para encerrar todo el texto y dobles para las claves y valores de JSON:
band = '{"name": "Mando Diao", "genre": "rock and roll", "bid": 19383}'
json = simplejson.loads(band)
Y ahora funciona, no hay error:
print json
{u'genre': u'rock and roll', u'bid': 19383, u'name': u'Mando Diao'}
Me parece un poco extraño pues siempre he usado ambos tipos de comillas en mi código Python sin problemas. ¿Habías notado este detalle con simplejson? No pude encontrar ningún comentario al respecto en la documentación.
Un último dato, el nuevo Python 2.6 incluye un módulo json, parece ser una adaptación de simplejson. Excelente.
¿Porqué Javascript retorna cero para parseInt('08') y parseInt('09')?
Escribiendo una sencilla función Javascript para crear un objeto Date a partir de una cadena con formato 'yyyy-mm-dd' me encontré con una particularidad de la función parseInt, usada para transformar cadenas en enteros.
Tanto parseInt('08') como parseInt('09') retornan cero debido a que la función pretende determinar la base del sistema de numeración usado para la conversión y en Javascript los números que empiezan en cero se consideran de base octal. 08 y 09 no existen en el sistema octal y allí el problema.
Para resolverlo basta con usar el segundo parámetro de parseInt, que es justamente la base del sistema de numeración a usar. Las llamadas correctas serían entonces: parseInt('08', 10) y parseInt('09', 10).
Otro de esos detallitos, ¿no?
Cómo añadir una barra de navegación estilo Mac en Ubuntu
Hace algunos días visité una tienda que vende productos Apple en Lima (antes que pregunten: no, lamentablemente no es una verdadera Apple store). Me gustan los productos Apple, tengo un iPod classic, hace poco le compré un Nano rosado a Yesenia y estoy pensando en actualizar a un Touch pronto.
En la tienda mucha gente, ya saben, del tipo normal y no geek, observaba las MacBooks entre exclamaciones de asombro y miradas fascinadas. Me imagino que en gran parte debido a los simpáticos efectos visuales que ofrece Leopard y sospecho que la mayoría de estos curiosos que podrían ser clientes de Apple no estaban ni remotamente interesados en el procesador Core 2 Duo, la resolución de video o la carcasa de policarbonato (muy atractiva) que las MacBooks tienen.
Y bueno, si los usuarios piden efectos visuales ¿porqué no darles un poco en Ubuntu? Sin gastar más de mil verdes en una Mac o, lo que es peor, instalar Vista. Empezamos con lo que impresiona a la mayoría al toparse con una Mac: la barra de navegación, el famoso Dock.

Instalar Avant Window Navigator en Ubuntu
Avant Window Navigator es una barra de navegación estilo dock para Linux. Reemplaza a los típicos paneles, contiene enlaces para iniciar tus aplicaciones, muestra las ventanas en uso y ofrece una serie de simpáticos applets para que tu escritorio luzca mucho mejor, muy a lo Mac.

Probé en una portátil y una PC de escritorio, ambas con Ubuntu 8.04 (Hardy Heron) 64 bits, y no encontré versiones diferentes para 32 y 64 bits por lo que las instrucciones a continuación deberían funcionar en ambas arquitecturas.
La versión corta: Solo ejecuta
sudo apt-get install avant-window-navigator
El problema con este método es que Hardy aún no incluye el paquete awn-extras (los applets) y es allí donde se encuentra lo mejor de Avant Window Navigator.
Si esto es todo lo que necesitas entonces sigue con los toques finales, si no, sigue leyendo.
La versión larga: Los desarrolladores de AWN han creado un repositorio con todo lo que necesitas para obtener la experiencia completa del dock en Edgy, Feisty, Gutsy y Hardy.
- Empieza en el archivo de AWN, escoge tu versión de Ubuntu y copia las líneas correctas.
- Abre el archivo sources.list:
sudo vi /etc/apt/sources.list - Agrega las líneas correctas (yo estoy usando las que corresponden a Hardy), añade un comentario, graba y cierra:
# awn
deb http://ppa.launchpad.net/awn-testing/ubuntu hardy main
deb-src http://ppa.launchpad.net/awn-testing/ubuntu hardy main - Actualiza tu lista de paquetes:
sudo apt-get update - Instala los siguientes paquetes:
sudo apt-get install libawn0-trunk
sudo apt-get install libawn-dev-trunk
sudo apt-get install awn-manager-trunk
sudo apt-get install awn-extras-applets-trunk
sudo apt-get install avant-window-navigator-trunk
Los toques finales
Para activar tu nueva barra de navegación haz clic en Avant Window Navigator, dentro de Accesories en el menú principal de Ubuntu.

- Ahora haz clic derecho en algún espacio vacío de la barra (puede ser un poco incómodo al principio, intenta en los extremos) y escoge Preferences para cambiar la apariencia y activar algunos applets.
- Arrastra algunas aplicaciones del menú principal de Ubuntu a la nueva barra.
- Desactiva los paneles de Gnome, para esto, en Sessions > Current Session remueve gnome-panel de la lista de aplicaciones ejecutándose y haz clic en Apply.
- Para confirmar que todo funcione presiona Ctrl + Alt + Backspace e ingresa nuevamente.
Avant Window Navigator es una muy simpática aplicación, es fácil de instalar y le agrega un toque de estilo a la experiencia de usar Linux.
Ahora mi escritorio Linux luce mucho más limpio, disfruto viendo a mis contactos de Pidgin saltando en la barra y puedo obtener algunas miradas de asombro de los curiosos sin necesidad de gastar en una MacBook (aún cuando en algún momento compraré una solo por darme el gusto).

Te recomiendo visitar
- Maestros del Web
- Dupermag
- Nudonation
- Alojamiento web Servicios de alojamiento web y registro de dominios para pymes y particulares.


Comentarios recientes
20 semanas 1 día atrás
22 semanas 2 días atrás
22 semanas 3 días atrás
24 semanas 1 día atrás
30 semanas 5 días atrás
30 semanas 6 días atrás
31 semanas 4 horas atrás
31 semanas 9 horas atrás
31 semanas 1 día atrás
31 semanas 2 días atrás