Archivos Mensuales: diciembre 2009

Eliminar logo de Nvidia al arranque

Cuando instalamos manualmente los controladores de Nvidia, al arrancar el sistema se nos muestra un logo a pantalla completa y luego continua la carga del escritorio. Si esta situación te molesta o sientes el arranque poco fluido, entonces puedes eliminar la propaganda extra de Nvidia. Para ello, como super-usuarios editamos el archivo de configuración X11 de la siguiente manera:

su
[Escribimos la contraseña]
gedit /etc/X11/xorg.conf

Y agregamos la linea remarcada (en esa sección – Device -), pués esta no existe.

Section “Device”

Identifier “Device0″

Driver “nvidia”

VendorName “NVIDIA Corporation”

Option “NoLogo” “on”

EndSection

Luego guardamos.

Python 2.7

Hace algún tiempo ya se liberó la versión alpha de Python 2.7. Actualmente es la rama 2.6 la que utilizamos por defecto en nuestro sistema Linux.

La idea es ir incorporando algunas características de la ya funcional pero poco adoptada rama 3.x. Finalmente todo debería converger en esta última versión. recodemos que la mayoría de las aplicaciones y módulos no son funcionales para la última versión de este lenguaje y por esta razón el cambio debe ser lento y bien medido.

Como siempre está disponible para todas las plataformas y la versión final será liberada en Junio del 2010.

En la página oficial pueden encontrar mas información.

Formato de fechas latino con Python

El formato por defecto con el que trabaja Python y la mayoría de las aplicaciones es del estilo “año-mes-dia”, pero para nosotros lo natural resulta ser “dia-mes-año”. La conversión a este último formato se realiza de la siguiente forma (despúes del salto):

Leer más »

Enviar archivo por formulario con Python

En esta oportunidad veremos como enviar un archivo o simplemente campos con string mediante un formulario web. Primero que nada debemos configurar nuestro servidor apache para que podamos escribir script Python (esto lo hice en un post anterior). Los campos se pueden almacenar en una base de datos, pero lo interesante aquí es guardar el archivo enviado en una carpeta del servidor (en mi caso los campos pasaron a formar parte de la ruta donde se guarda el archivo en el servidor).

El archivo tiene dos elementos: uno llamado “recibe-archivos.py” y “subir_archivo.html” este ultimo es el formulario y debemos guardarlo en la carpeta “html” o “public_html” de nuestro servidor apache. El archivo “recibe-archivos.py” lo debemos guardar en el directorio “CGI-BIN” del servidor apache.

Si se fijan también subí una hoja de estilo, la cual deben acomodar para que tenga un aspecto bien formado (el formulario).

Este método me sirvió en principio para que en algunos casos en donde la conexión via SAMBA era deficiente, me enviaran archivos desde otros computadores por red local. Actualmente lo utilizo con unos alumnos empleando mi computador como servidor.

Luego del salto esta el archivo comprimido

Leer más »

Trabajando con fechas en Python

Una de las cosas interesantes de Python (una de las tantas claro) es el fácil trabajo con las fechas.

Estube revisando mis programitas y encontré algo que le será util a mas de una persona. La extracción de números en una fecha (por ejemplo extraer el dia, mes o año y dejarla en una variable independiente) esto nos permite realizar algún tipo de calculo posterior, en mi caso lo usé para hacer una carta gantt con la diferencia de meses.

Entonces al programa le pasamos la fecha inicial y final, este nos retornará la diferencia de meses junto con el mes inicial. Fíjense que hay una condición que verifica el año.

Después del salto el código:

 Leer más »

Aplicaciones web con Django

Django es un framework sobre Python muy completo, para empezar trabaja con la arquitectura modelo-vista-controlador. Esto quiere decir que podemos construir la aplicación de manera independiente entre el código, la interfaz y el modelo.

En la universidad trabajamos con el framework Struts de Java, y objetivamente Django lo aprendi en un día…Struts no he terminado de comprenderlo.

El entorno de trabajo de Django incluye un servidor de prueba sobre el cual podemos ver como va quedando la aplicación antes de montar el servidor definitivo en el sistema. Lo que me pareció una ventaja comparativa sobre Struts es la sincronización con la base de datos. Podemos definir el modelo en un archivo Python (me refiero a un archivo .py) y luego Django extrae los datos y crea la base de datos (digamos que integra conectores). Además posee un sistema de administración que nos permite crear usuarios y poblar la base de datos al estilo web. Soporta gestores como Postgresql, Mysql, sqlite entre otros.

¿Donde alojar estos sitios?

Aparte de nuestro sistema Linux, podemos alojarlos en google egine, pués increiblemete python fué el primer lenguaje soportado por Google en este sistema. Mencionemos que google tiene su propio Framework ademas de Django y otros mas.

En conclusión Django posibilita la creación de sitios web realmente poderosos y haciendo abstracción del codigo a mas bajo nivel, dejando los principales esfuerzos en el modelado del problema.

Para instalarlo solo debemos escribir en el terminal (o instalarlo desde nuestro gestor de paquetes):

yum install django

El tutorial lo encuentran aqui.