IronPython, una implementación de Python para Mono/.NET

Debido a que utilizo SharpDevelop, software libre para desarrollo .NET en plataformas Windows, en el trabajo hace tiempo ya descubrí que existía la posibilidad de hacer desarrollos para el intérprete de .NET/Mono en lenguaje Python. Posteriormente, hace no mucho viendo un vídeo de Miguel de Icaza, comprobé que el padre de Gnome también hablaba de esta misma posibilidad.

Pasado el tiempo y como veo que es un tema que puede interesar a muchos os presento a IronPython.

¿Qué es IronPython? read more

Leer más » 4 Comentarios

Meld, comparador de ficheros para Gnome

Probablemente en más de una ocasión habréis necesitado comparar dos ficheros de texto para encontrar, por ejemplo, pequeñas diferencias entre dos códigos en el que uno funciona y otro no. Como los IDE cada día están más extendidos y cada vez traen más funcionalidades, los programas que se dedican sólo a comparar dos ficheros son cada vez más bien partes o complementos de entornos o editores.

Sin embargo, sigue existiendo software específico de calidad como Meld. Meld es un comparador de ficheros para Gnome, implementado en Python, que nos permite compara de manera muy intuitiva gracias a la sintaxis coloreada, el resaltado de las diferencias o la posibilidad de comparar no dos, sino tres ficheros o incluso directorios completos (comparando pares de ficheros). read more

Leer más » 7 Comentarios

Instalar y configurar Django manualmente desde el repositorio

Aunque en la entrada de la presentación de Django se habla de la instalación del framework, a través de dos métodos: script install.py e instalación de paquete desde el repositorio; vamos a explicar otro método más, algo más largo pero a la vez más compatible. Nos quita la limitación del paquete de que la versión no sea la más reciente (limitación que no tiene el método de instalación con install.py).

Doy por supuesto que tenéis instalado Python en vuestro equipo.

  1. Nos dirigimos a nuestro directorio $HOME
  2. Descargamos la última revisión del proyecto: svn co http://code.djangoproject.com/svn/django/trunk/ djtrunk
  3. Averiguamos cuál es el directorio en el que Python guarda los paquetes:  python -c “from distutils.sysconfig import get_python_lib; print get_python_lib()”
  4. Nos dirigimos al directorio que nos indique y creamos un fichero de nombre django.pth (el fichero podéis crearlo con nano mismo nano django.pth).
  5. En dicho fichero indicamos sólo una línea con el directorio en el que hemos descargado el código de Django (en nuestro caso será /home/miusuario/djtrunk).
  6. Añadimos a la variable PATH la ruta de los binarios de Django:
    1. Editamos el fichero con las variables de entorno /etc/environment
    2. Añadimos a la variable PATH la ruta: PATH=”lo_que_haya_antes: $HOME/djtrunk/djtrunk/django/bin”

    Ya podemos probar la instalación de Django. Podéis probar a importar el módulo Django desde Python o podéis probar a crear un sitio y lanzar el servidor de prueba: read more

Leer más » 2 Comentarios

Conocer Django: presentación, introducción y ejemplo de desarrollo

A lo largo de la presentación que adjuntamos en este enlace y con motivo del trabajo voluntario planteado en las prácticas de Programación Avanzada, José Antonio Sánchez Pallero y yo, hemos tratado de transmitir una idea general acerca de Django, el framework libre basado en Python orientado a la creación rápida de aplicaciones web. Al final del mismo y para completar la explicación, presentamos un pequeño ejemplo de desarrollo haciendo uso de esta herramienta.

Toda persona que haya tenido contacto con el desarrollo web, sabrá de los inconvenientes que crean temas como: el control de las entradas del usuario, la interacción con la base de datos, la creación de direcciones amigables para los buscadores (tan necesario para el SEO), la modificación de las estructuras de datos una vez creadas o la definición de distintos roles de permisos para los usuarios del sistema. read more

Leer más » 15 Comentarios

Empezar a programar en Pygame

A través de esta entrada vamos a introducirnos en el mundo del desarrollo de aplicaciones gráficas usando una librería llamada pygame que nos proporciona las herramientas necesarias para crear de forma relativamente sencilla nuestros juegos en el lenguaje de programación Python.

¿Qué es Pygame?

Pygame es un conjunto de módulos que nos ayudan a crear videojuegos o aplicaciones gráficas (no necesariamente videojuegos) en dos dimensiones. Pygame incluye gráficos y bibliotecas de sonido diseñados para ser utilizados directamente bajo Python. Está construido bajo Simple DirectMedia Layer (SDL), que a su vez son un conjunto de bibliotecas desarrolladas en lenguaje C, proporcionando las funciones básicas para realizar operaciones de dibujado 2D, gestión de efectos de sonido y música, y carga y gestión de imágenes. De esta manera, a través de Pygame podemos abstraernos de la lógica del juego (o aplicación) en si mismo, haciendo posible el uso de un lenguaje de alto nivel como Python para estructurar el juego. read more

Leer más » 7 Comentarios

Métodos estáticos en Python

Ayer por la tarde me surgió una duda sobre Python. Como en cualquier lenguaje orientado a objetos y para realizar una llamada a un método de una clase que no hemos instanciado, esta deberá de ser estática. ¿Realmente se puede hacer esto en Python? No directamente. Me puse a buscar sobre el tema y a través de ActiveState descubro como resolver esto, no se trata de un problema del lenguaje si no de poder compatibilizar algo que sí podemos hacer en otros lenguajes como Java, C++ o .NET.

Vamos a verlo sobre un ejemplo, os lo iré comentando entre línas. read more

Leer más » 3 Comentarios