Novedades: actualmente estoy impulsando el proyecto Argentina en Python, desde aquí (ver mapa)

Programando con Kate

Nota

Este post no es el original, sino una migración de Wordpress a Nikola. Si no se visualiza correctamente, podés ir al original (en Wordpress) haciendo click aquí

Hace bastante que estoy buscando un editor de texto en el cuál me sienta cómodo para programar. Probé varios, Vim, Scribes, Eclipse, etc... Ninguno terminó de satisfacerme, ni siquiera el Kate en su momento.

Pero después de un tiempo encontré varias cosas interesantes en este editor que algunas ya las había visto en Scribes y me gustaban. Por ejemplo abrír un paréntesis y que automáticamente te escriba el que cierra; cuando pasás por encima de un paréntesis te indica con color dónde este cierra, lo mismo pasa con las llaves (muy útil para programar en Scheme :) ). También el identado automático cuando presionás ENTER luego de una línea que finaliza con ":" (dos punto) en python por ejemplo.

Muchas veces me pasa que borro una función (o parte de esta) definida en una clase y me queda el código con una identación incorrecta, para lo que tengo que volver toda esa parte 4 espacios hacia atrás o hacia delante. Para solucionar esta tediosa tarea con el Kate se puede seleccionar todo el texto al cuál queramos modificar la identación y presionamos TAB para agregar 4 espacios o SHIFT+TAB para quitar 4 espacios. Esto siempre me resultó muy útil.

También nos permite crear y administrar "Herramientas externas" (esta opción se encuentra en Preferencias -> Configurar Kate -> Herramientas externas") que yo utilicé para ejecutar la órden python y pasarle el archivo actual de trabajo, así tenemos un acceso rápido a nuestro programa. Ésta es la órden que actualmente tengo:

cd "%directory" && python "./%filename"

Lo dicho anteriormente unido con que este editor al ser de KDE permite la configuración de accesos rápidos por el teclado, como casi todos los programas de KDE. Lo que yo utilicé para configurar la órden de la herramienta externa creada anteriormente asignándole la tecla F2. Para esto hay que ir a Preferencias -> Configurar accesos rápidos. Así entonces al presionar dicha tecla me ejecuta el archivo que actualmente tengo en la vista del Kate.

Este editor tiene muchas otras cosas interesantes también. Si necesitamos editar dos archivos al mismo tiempo, o dos partes del mismo archivo, podemos partir la vista del editor en dos o más partes con la opción Ventana -> Dividir vertical/horizontalmente. Posee en la parte izquierda un "Navegador del sistema de archivos" y "Documentos", en el cual se muestran los archivos de nuestro disco y los que tenemos abiertos, respectivamente.

Un aspecto muy importante que me estaba olvidando, en la parte inferior de la pantalla tiene varias solapas, "Encontrar en archivos", "Terminal", "Salida del make",y se pueden tener más, dependiendo de los plugins instalados. La primera nos permite buscar un patrón en los arhivos con la extensión que indiquemos dentro de un directorio. Se pueden utilizar expresiones regulares. Esto es útil cuando queremos saber dónde definimos una función por ejemplo, o buscar una variable para cambiarle el nombre en todos los arhivos, etc. La segunda (Terminal), es una terminal común y corriente que yo la utilizo mucho para tener un intérprete python en esta. Se puede minimizar y restaurar; ésta guarda todo lo que hallamos hecho en el intérprete hasta ese momento. Interesante.

Posee una cantidad importante de reglas de resaltado por lo que lo uso para programar en cualquier lenguaje y éste respeta distíntas reglas entre estos.

Existen diversos plugins para este editor, instalando el paquete kate-pluginsen Kubuntu tenemos unos cuantos, de los cuales lo que más uso son: "Extensión del navegador Python de Kate" que sirve para ver a la izquierda las funciones, clases, métodos y atibutos de éstas y localizarlos rápidamente. El otro que más utilizo es "Herramientas HTML de Kate" el cuál nos facilita la inserción de etiquetas HTML presionando CTRL+ENTER y escribiendo el nombre de la etiqueta. Éste inserta la etiqueta abierta y cerrada poniendo el cursor en medio de éstas.

Dejo algunos screenshot de éste para que se vea lo práctico y cómodo que es programar con este editor. Son imágenes de cuando estaba haciendo el juego para PyWeek: Twisted Zombie.

image0 image1 image2


Twisted Zombie

Nota

Este post no es el original, sino una migración de Wordpress a Nikola. Si no se visualiza correctamente, podés ir al original (en Wordpress) haciendo click aquí

Zombie Nation!Bueno, se terminó todo. Hace algunas horas Juanjo subió al sitio de PyWeek el juego que hicimos en esta semana. Estoy muyconforme con lo que logramos hacer, no nos tenían fé!

En el juego controlás un Zombie que tiene que ir retorciéndoce (este era el tema oficial del juego: Twisted) para encajar en los hechizos que vuelan de unos magos que están peleando y tomando posiones que te ayudan a convertirte en humano y otras te hacen realmente mal.

En mi opinión y comparando con los otros que se pueden ver en la página de pyweek está muy bueno y bastante logrado. No tengo nada para decir en cuanto a mis compañeros de equipo, todos le pusieron muchas ganas para poder llegar a hacer esto.

Estoy agotado, cansado, feliz, contento, etc... Cansado y agotado porque anoche nos quedamos hasta las 7am con los chicos trabajando en el juego, corrigiendo errores, probando la dificultad, y demás. Algunos nos dejaron en el camino y se plancharon en la cama, no voy a dar nombres :) . Otros siguieron trabajando hasta no sé que hora (los felicito!).

Feliz y contento porque logramos hacer el juego, que era uno de los objetivos principales. Osea, ni siquiera pedíamos que esté bueno, sino simplemente tener algo para entregar, y a decir verdad le he estado jugando bastante al juego, ya sea para probar algunas cosas o por diversión. No es para nada aburrido, por lo menos para mí.

Se puede descargar la última versión del juego por svn:

``svn checkout http://twistedmold.googlecode.com/svn/trunk/ twistedmold``

o la versión 1.0 en un arhivo comprimido .zip *aquí*. Las dependencias que tiene el juego son `PyGame <http://pygame.org/news.html>`__ y `Python <http://python.org/>`__.

Actualización 11/09/07:se puede ver un video del juego en YouTube o GoogleVideo. La página oficial del juego es esta.

Actualización 17/09/07: Juanjo subió una versión del juego para Windows la cuál no requiere tener Python ni PyGame instalado. Se puede descargar desde aquí.


Entrevista Labsis

Nota

Este post no es el original, sino una migración de Wordpress a Nikola. Si no se visualiza correctamente, podés ir al original (en Wordpress) haciendo click aquí

image0

El viernes pasado tuve mi primer entrevista para empezar a trabajar en el Labsis (Laboratorio de Sistemas) de mi facultad. Éramos tres los chicos que asistimos a la reunión y David que nos había citado para explicarnos en qué consistía el trabajo. Él nos habló de reglas de convivencias básicas, pero que no mucho respetan, sobre qué trabajos había que hacer en el laboratorio, cómo iban a ser nuestros horarios, etc. La reunión duró algo así de una hora y después me volví a mi casa.

Por todo lo que se habló, me pareció que el trabajo va a ser entretenido y voy a aprender un montón. Le comenté a David que me gustaría estar en la parte de las compus que tienen Linux para administrar estos sistemas y demás cosas que sean necesarias.

También hay grupos de investigación de temas específicos que proponen los administradores del laboratorio, cada uno tiene que integrar uno de estos grupos e investigar sobre este tema en sus tiempos libres en el laboratorio (cuando no hay nada que hacer). Todavía no sé bien los temas en los que están investigando los chicos, asique tampoco sé en cuál me voy a meter. Una vez que se terminó de investigar un tema se prepara un apunte y se da una charla para la gente del laboratorio.

Hoy a las 16hs es el primer día que tengo que ir. Todavía no sé con quién me voy a econtrar ni tampoco lo que tengo que hacer ;) . Espero que esté bueno.


PyWeek 5

Nota

Este post no es el original, sino una migración de Wordpress a Nikola. Si no se visualiza correctamente, podés ir al original (en Wordpress) haciendo click aquí

image0

Me anoté en PyWeek 5 bajo el nombre de 'humitos' para participar con un equipo de Santa Fé. Es la primera vez que participa un equipo de esta ciudad y también la primera que participo yo. Nuesto equipo se llama Pythoners en Santa Fé. El concurso consiste en hacer "Un juego en Python en 7 días"; para esto se proponen 5 temas y se abre una votación al público. El que más puntajes obtiene es sobre el tema que hay que desarrollar el juego. Esta vez los temas fueron:

  1. Twinkle: titilar...
  2. Turmoil: tumulto, protesta violenta...
  3. Ticking: goteando, ruidito que hacen los relojes, o las bombas...
  4. Twisted: retorcido, mezclado...
  5. Tyger, Tyger: tigre...

Por ahora el equipo al cual pertenezco está formado por `Juanjo Conti <http://www.juanjoconti.com.ar/>`__, `César Portela <http://www.ceportela.com.ar/>`__, Mariano Galan y yo.Juanjo dijo que ya tiene una idea para el tema Twinkle. Mañana cierra la votación y el Sábado ya sabremos cuál es el tema al que todos los equipos deben responder con sus juegos.

Espero que sea divertido y aprenda mucho de mis amigos, está bueno trabajar en equipo. Y... ¡Ojalá que ganemos! :P