Tinycon

Librería JS para añadir un contador dentro del favicon. Muy útil para llamar la atención a una pestaña cuando suceda algún evento.

http://tommoor.github.com/tinycon/

Ubuntu 11.04 ya está aquí!

Podeis descargarla desde la web oficial en http://www.ubuntu.com/.

El cambio más importante que nos trae es el cambio de GNOME por Unity, aunque opcionalmente podremos seguir con GNOME si acaso le tuvieramos especial aprecio.

Instalar PIL con soporte de JPEG

Típico error, instalar la librería Imaging de Python sin más, y encontrarte con que no puedes manejar JPEGs, y te aparecen errores del tipo: PIL IOError: decoder jpeg not available

En primer lugar, eliminamos todo resto de la libreria PIL instalada

Instalamos las dependencias


sudo aptitude install python-dev libjpeg62 libjpeg62-dev zlib1g-dev libfreetype6 libfreetype6-dev

Nos bajamos el paquete PIL

wget http://effbot.org/downloads/Imaging-1.1.7.tar.gz

Descomprimir, compilar e instalar


tar zxvf Imaging-1.1.7.tar.gz
cd Imaging-1.1.7
python setup.py install

Listo!

Instalar Firefox 4 en Ubuntu 10

Es muy MUY fácil.

1. Añadimos el repositorio oficial
sudo add-apt-repository ppa:mozillateam/firefox-stable

2. Actualizamos la lista de paquetes
sudo apt-get update

3. Si ya tenemos firefox, solo tenemos que actualizarlo:
sudo apt-get upgrade firefox
Y si no lo tenemos…
sudo apt-get install firefox

Templatetag para las últimas N entradas del twitter

Podeis encontrarlo en DjangoSnippets en http://djangosnippets.org/snippets/2334/

Se utiliza así de fácil:


{% get_twitter_messages user foo limit 5 as tweets %}
{% for tweet in tweets %}
{{ tweet.text }} {{ tweet.time }} {{ tweet.url }}
{% endfor %}

Este ejemplo recupera los últimos 5 mensajes del usuario foo y los añade al contexto de la plantilla en la variable tweets, que contendrá una lista con cada entrada, ofreciéndonos para cada una de ellas, el texto, la fecha/hora de inserción y la URL para acceder a ella.

Un par de jQuery Widgets

Selector de colores:
http://www.eyecon.ro/colorpicker/

Autocompletado por AJAX + Múltiples elementos al estilo de las etiquetas de Facebook.
http://loopj.com/2009/04/25/jquery-plugin-tokenizing-autocomplete-text-entry/

Ambos funcionan estupendamente y son tremendamente prácticos.

PROGRAMACIÓN WEB 2.0: DESARROLLO RÁPIDO DE APLICACIONES CON PYTHON Y DJANGO. (5ª EDICIÓN)

1.- Introducción.
2- Instalación de Python y Django.
3.- Python: Sintaxis y tipos de datos básicos.
4.- Python: Funciones y módulos.
5.- Python: Objetos y clases (POO). Introspección.
6.- Django: Modelo de desarrollo de aplicaciones.
7.- Django: Bases de datos y mapeador objeto/relacional.
8.- Django: Separación de código y presentación: vistas y plantillas.
9.- Django: Interfaz de administración.
10.- Django: Vistas genéricas y formularios.
11.- Django: Caché de contenidos, manejo de sesiones y autentificación.
12.- Javascript: JQuery.
13.- Javascript: Ajax y comunicaciones asíncronas.
14.- Javascript: Integración Django.
15.- Javascript: Aplicaciones de ejemplo.

Más info en http://oficinavirtual.ugr.es/apli/posgrado/detalle_cep.jsp?cod=10/CA/047

Hola mundo!

Pynso estrena su blog!

Siempre que el tiempo nos lo permita trataremos de contribuir a la comunidad con artículos de interés general.

¿Y que mejor para estrenar algo que comenzar con el hola mundo?

Recordemos ese magnífico lenguaje de programación llamado C, en el que para conseguir que se mostrara un mensaje por pantalla diciendo “Hola mundo” debiamos realizar lo siguiente:


#include
int main(void) {
printf("Hola mundo!");
return 0;
}

Por suerte para el mundo, con un lenguaje un pelín más moderno como Python, esto se simplifica a:


print "Hola mundo!"