sábado, febrero 26, 2005

Fin de los exámenes

El lunes pasado terminé exámenes parciales. La siguiente temporada vendrá muy pronto, así que tengo que aprovechar al máximo este tiempo para adelantar muchas cosas que tengo pendientes.

MonoUML

Ya he comenzado a implementar las primeras partes de UMLCanvas# 2.0. He decidido comenzar por la parte de más bajo nivel. Aunque hasta ahora no he avanzado mucho, me parece que las cosas no van a ser tan complicadas debido a que muchos problemas ya han sido resueltos en la versión actual de UMLCanvas#, aunque en forma un poco desordenada. Estoy bastante optimista en cuanto a esta parte y creo que puede estar lista un poco antes de lo planeado.

El hecho de que UMLCanvas# tenga un diseño flexible que permita cambiar de API gráfica sin mayor traumatismo es más importante ahora que nunca. Según lo que he leído, GTK+ se pasa definitivamente a Cairo como librería gráfica. En este contexto quedarían 3 toolkits gráficas que podrían ser usadas por UMLCanvas#: GnomeCanvas, Cairo y GDI+ (la cual está basada en Cairo en su implementación en Unix). Por ahora se seguirá con GnomeCanvas, pero estoy casi seguro de que en un futuro vamos a tener que cambiar y debemos estar preparados para ello.

GLUC

En el GLUC seguimos con el proyecto antipiratería del cual ya había hablado antes. También estamos trabajando duro para el Festival Latinoamericano de Instalación de Software Libre que se realizará el 2 de Abril. Por mi parte, me ha tocado hacer un CD-ROM que contenga una colección de programas libres para Windows. Para no empezar todo desde cero, he decidido hacer un hack de TheOpenCD, el cual por cierto está muy llamativo. Básicamente me ha tocado traducir gran parte de TheOpenCD, cambiar las imágenes y modificar un par de pequeñeces.

== TheOpenCD hack 1 ==   == TheOpenCD hack 2 ==

Free Abuse.

En tiempos de exámenes y exceso de trabajo, nada mejor para quitar el estrés que un buen juego, y mejor aún, un juego libre. Por estos días instalé la versión libre del clásico Abuse. Abuse es un juego de acción futurista, con aliens, disparos y mucha emoción. Definitivamente entra a encabezar la lista de los mejores juegos libres.

El paquete de Ubuntu de Abuse no funcionó (esto ya se está volviendo costumbre, Ubuntu me tiene aburrido) así que me tocó hacer una mezcla entre el paquete y los binarios disponibles en la página de abuse.

== Abuse Screenshot 1 ==   == Abuse Screenshot 2 ==

Mono Bundle

Me ha gustado mucho el nuevo instalador genérico de Mono para Linux. Funciona en multiples distribuciones y es la forma más fácil de instalar y redistribuir Mono. Lástima que la versión 1.1.4 que era la que más me interesaba no funcionó en Ubuntu (y otra más con Ubuntu).

== Screenshot 1 Mono Bundle ==   == Screenshot 2 Mono Bundle ==   == Screenshot 3 Mono Bundle ==

jueves, febrero 10, 2005

Exámenes...

Debido a algunos problemas en la Universidad durante los últimos meses, las clases están más aceleradas que nunca. Esta semana comienzo exámenes parciales y eso me ha quitado bastante tiempo. No he podido avanzar mucho con los proyectos en los que estoy involucrado. Lo peor de todo es que parece que esta situación va a continuar por algunos meses. Creo al terminar este semestre, inmediatamente comenzará el otro, no voy a tener vacaciones. Sin embargo, espero poder sacar algo de tiempo para hacer lo que me gusta; va a ser poco, pero va a ser algo.

Grupo Mono.

El sábado pasado, como todo los sábados, tuvimos reunión del Grupo de Estudio en Mono del GLUC. En esta ocasión yo fuí el expositor, decidí continuar con el curso de Gtk# que había comenzado unos meses atrás. También aproveché para mostrarles el pequeño editor de C# de ejemplo hecho con GtkSourceView# hecho por Fabian Seoane, con unas modificaciones hechas por mi amigo Cristian Cepeda (también conocido como "pastuxso"). Insté a todos los miembros del grupo a que agregaran características al editor, como por ejemplo una opción de compilar, pero ninguno se atrevió a hacerlo. Imagino que la temporada de exámenes dejó sin tiempo a todo el mundo.

MonoUML.

En el poco tiempo que he podido dedicarle a MonoUML, he estado pensando en la forma de hacer que UMLCanvas# 2.0 pueda utilizar diferentes librerías gráficas. Lo único que se me ha ocurrido es aplicar el patrón Fabrica Abstracta. Esto obviamente inspirado por el típico ejemplo de La Banda de lo Cuatro donde se usa el mismo patrón para usar múltiples librerías de widget.

Quedaría algo como esto:

== Diagrama UML de la fábrica abstracta ==

viernes, febrero 04, 2005

Software Libre, Software Legal

GLUC

En el GLUC nos ha ido bastante bien por estos días, la Vicerectoría de Bienestar y Cultura de la Universidad del Cauca nos aprobó un proyecto bastante interesante, se trata de una Campaña antipiratería y pro-software libre llamada "Software Libre, Software Legal". La ídea del proyecto es dar una serie de charlas que concientisen sobre por qué no se debe usar software pirata y por qué es mejor usar software libre en su lugar. Con la aprobación del proyecto, el grupo recibirá una cantidad de dinero con la cual se piensa hacer afiches de publicidad, regalar distribuciones de Linux, y programas libres para Windows entre otras cosas. Uno de los puntos claves del proyecto es la participación en la Ciudad de el Primer Festival Latinoamericano de Instalación de Software Libre - FLISOL, del cual ya había hablado previamente. Esperamos que con el dinero que nos de la universidad podamos realizar un gran evento aquí en Popayán.

Grupo Mono.

El sábado pasado regresamos a las actividades en el Grupo de Estudio en Mono del GLUC. Ese día sólo nos dedicamos a organizar lo que se hará en el grupo durante el resto del semestre. Se decidió continuar en base a la lista ToDo que quedó despues del curso de C#. La idea es que cada uno de los miembros del grupo se apropie de una parte del curso.

Algo bastante interesante es que he hablado con varios amigos que viven fuera de Popayán, y hay muchos que están interesados en el Grupo de Estudio, entonces han entrado a formar parte de este como integrante virtuales. Los integrantes virtuales darán charlas por IRC y estarán pendientes de lo que se haga en en grupo leyendo el material del FTP.

Con todo esto, nuevamente surge la idea de crear una comunidad de Mono en Colombia. Incluso ya tenemos un proyecto en el-directorio.org

Tutorial de GTK#

Con el tutorial de GTK# estoy un poco atrasado, aun no termino el capítulo 8. Sin embargo, en general el proyecto de creación del tutorial ha avanzado bastante. Mahomedalid Pacheco se une al equipo y ya ha enviado los capítulos 20 y 21. Últimamente hemos tenido bastantes charlas en el equipo, discutiendo temas como el estilo de codificación, los screenshots etc. Parece que todo va muy bien por este lado.

MonoUML

En lo que respecta a MonoUML, en estos días me estoy dedicando completamente al nuevo diseño de UMLCanvas#. He subido lo que tengo de los diagramas al CVS para que sea más fácil la participación de todos. Una de las características que más me gusta del nuevo diseñó es la utilización de una serie de interfaces IHandler para manejar los eventos y el comportamiento de los elementos del canvas. El hecho de desacoplar el manejo de enventos de los propios objetos es algo brinda bastante flexibilidad al diseño. También he comenzado a estudiar un poco las librerías GDI, ya que me gustaría que UMLCanvas# pudiera usarlas además de GnomeCanvas; esto previendo un futuro port para Windows.

Me bajé Poseidon for UML Community Versión. En realidad nunca antes lo había probado, no se porque siempre pensé que era muy parecido a ArgoUML, el cual no me gusta mucho que digamos. La verdad es que Poseidon es bastante diferente a ArgoUML; me ha gustado mucho, incluso lo prefiero a otros como Rational Rose. El único problema que le veo es que es tremendamente pesado, en mi máquina ha llegado a consumir casi 500 MB de memoria. El canvas es especialemente lento, no se si es que no está funcionando la aceleración por hardware o qué, sin embargo, este es bastante agradable de usar. Espero que el canvas de MonoUML llegue a ser tan cómodo de usar como el de Poseidon, incluso creo que lo podría superar.